PUN Voice 데모

PUN Voice 데모는 플레이어들이 서로 대화할 수 있는 간단한 4인용 모바일 게임입니다. 이 게임은 매치메이킹 이외에 플레이할 수 있는 4개의 캐릭터와 3개의 카메라 뷰를 가지고 있습니다. 이 데모는 유니티 튜토리얼"Survival Shooter"를 기반으로 제작되었으며 Photon Voice 패키지에서 사용할 수 있습니다.

PUN Voice Demo Screenshot
PUN Voice 데모 실행화면

설정

PUN Voice 데모를 실행하기 위해서:

  1. 에셋 스토어에서 패키지를 다운로드합니다.
  2. 유니티에서 프로젝트를 오픈하고 DemoPunScene을 로드합니다.
  3. 유니티 Inspector 에서 PhotonServerSettings 을 오픈 (메뉴: "Window" -> "Photon Unity Networking" -> "Highlight Server Settings")합니다:
  4. 빌드하고 실행하여 즐겨보세요!

메인 화면으로

특징

이 섹션에서는 데모에서 사용되는 기능에 대해 설명합니다.

복수 캐릭터

친구들과 데모를 해보면 모든 플레이어가 자신만의 독특한 캐릭터를 갖게 되고 임의의 위치에서 스폰 된다는 것을 알게 될 것입니다. 이 기능은 CharacterInstantiation 클래스를 사용하여 처리됩니다. OnJoinedRoom 콜백에서는 액터 번호와 무작위 스폰 위치를 기반으로 한 프리팹을 선택합니다.

메인 화면으로

연결과 보정

PUN Voice Demo - Control Buttons
PUN Voice 데모 - 제어 버튼들

오른쪽 하단 모서리에서 보정 및 연결 버튼을 찾을 수 있습니다. 보정 버튼은 Voice 룸에 연결된 경우에만 작동하며 음량 수준을 조정하는 데 유용합니다. "보정"에 대해서 더 읽어보세요.

다른 두 버튼은 각각 PUN 또는 Photon Voice에 "연결"하거나 "연결 해제"합니다.

메인 화면으로

설정

UI에서 쉽게 접근할 수 있도록 설정하여 주십시오. Photon Voice 어플리케이션을 조정할 수 있는 바로 가기를 알려드리고 싶습니다.

메인 화면으로

게임내 설정

PUN Voice Demo In-Game Settings
PUN Voice 데모 게임내 설정

Photon Voice 어플리케이션의 가장 중요한 런타임 설정은 단일 ToggleGroup으로 그룹화되는 것입니다:

  • Transmit: 비활성화된 경우 음성 전송이 꺼집니다. 그렇지 않으면 소리가 로컬에서 녹음되어 전송됩니다.
  • Mute Speaker: 이 설정은 볼륨을 0으로 설정하여 스피커를 음소거합니다.
  • VoiceDetection: 이 설정은 음성 감지 기능을 사용하거나 사용하지 않도록 합니다.
  • DebugEcho: 이 설정은 단일 클라이언트를 사용하여 음성 어플리케이션을 테스트할 때 유용합니다. 켜져 있는 경우, 보낸 오디오 스트림이 서버에서 원래 보낸 사람에게 다시 전송됩니다. 디버그 목적용으로 만 사용되어야 합니다.

메인 화면으로

글로벌 설정

PUN Voice Demo Global Settings
PUN Voice 데모 글로벌 설정

  • AutoConnectAndJoin: PUN 클라이언트가 "PUN 룸"에 가입되면 Photon Voice 클라이언트를 "음성 룸"에 자동으로 가입시킵니다.
  • AutoLeaveAndDisconnect: PUN 클라이언트의 연결이 끊어지면 Photon Voice 클라이언트의 연결이 자동으로 끊어집니다.
  • DebugVoice: 디버그 모드를 토글 합니다. 디버그 텍스트는 다음을 포함하는 화면 왼쪽 상단 모서리에 나타납니다: PUN 및 Voice 어플리케이션 ClientState 와 마이크 장치 및 일부 음성 통계입니다. 켜져 있으면 모든 "말하는" 캐릭터 위에 음성 스피커가 지연되는 것도 표시됩니다.

메인 화면으로

음성 컴포넌트 강조 표시

두 가지 주요 보이스 컴포넌트가 어떻게 작동하는지 설명하기 위해 모든 플레이어 위에 표시되는 아이소메트릭 뷰를 사용했습니다. 이 보기는 "World Space" 모드에서 Unity의 새로운 UI 시스템을 기반으로 합니다. 두 개의 아이콘이 있습니다.

메인 화면으로

"Speaker" 아이콘

PUN Voice Demo - Highlighting Speaker
PUN Voice 데모 - 스피커 강조하기

이 아이콘의 목적은 플레이어의 음성이 재생되는 시점을 보여주는 것입니다. 이는 PhotonVoiceView 컴포넌트에 바인딩 됩니다. 이 코드에 따라 영상이 표시되거나 숨겨집니다.

speakerSprite.enabled = photonVoiceView.IsSpeaking;

또한, DebugVoice 글로벌 설정이 토글 될 때, 텍스트가 계속 업데이트되는 숫자를 포함하는 동일한 뷰에 나타나기 시작합니다. 스피커 컴포넌트의 지연을 알려야 합니다. 다음과 같이 활성화 또는 비활성화됩니다:

bufferLagText.enabled = showSpeakerLag && photonVoiceView.IsSpeaking;
if (bufferLagText.enabled)
{
    bufferLagText.text = string.Format("{0}", photonVoiceView.SpeakerInUse.Lag);
}

메인 화면으로

"버블 스피치" 아이콘

PUN Voice Demo - Highlighting Recorder
PUN Voice 데모 - 레코더 강조하기

이 아이콘의 목적은 플레이어의 음성이 녹음되고 전송되는 시기를 보여주는 것입니다. 이는 PhotonVoiceView 컴포넌트에 바인딩 됩니다. 이 코드에 따라 영상이 표시되거나 숨겨집니다.

recorderSprite.enabled = photonVoiceView.IsRecording;

이에 관련되어 더 많이 알아보시려면 "Highlighter.cs" 파일과 클래스를 확인해볼 수 있습니다.

메인 화면으로

다른 카메라

Photon Voice는 AR과 VR이 포함된 모든 게임에서 사용할 수 있으므로 3D 사운드 환경이 얼마나 좋은지 보여주는 작업 예를 만드는 데 도움이 될 것입니다. 이를 위해 3가지 카메라 모드를 준비했습니다.

  • "First Person"

PUN Voice Demo - First Person View
PUN Voice 데모 - First Person 뷰

  • "Third Person"

PUN Voice Demo - Third Person View
PUN Voice 데모 - Third Person 뷰

  • "Orthographic" (기본)

PUN Voice 데모 - Orthographic 뷰
PUN Voice 데모 - Orthographic 뷰

룸에 들어가면 언제든지 뷰를 자유롭고 매끄럽게 전환할 수 있습니다. 플레이어의 캐릭터가 인스턴스화되면 화면 오른쪽 상단 모서리에 있는 세 개의 각 버튼을 사용할 수 있습니다.

메인 화면으로

모바일 조이스틱

이 데모에는 모바일 터치 입력 지원이 포함되어 있습니다. 스마트폰 또는 태블릿에서는 유니티의 표준 에셋에 기반한 데모와 함께 제공되는 조이스틱 UI를 사용할 수 있습니다. 이 기능을 사용하려면 유니티 메뉴에서 "Mobile Input"을 사용하도록 설정하고 유니티의 빌드 설정에서 호환되는 플랫폼으로 전환해야 합니다.

PUN Voice Demo - Android Screenshot
PUN Voice 데모 - 안드로이드 스크린샷

메인 화면으로

디버그 모드

DebugVoice 토글이 켜져 있으면 디버그 모드가 활성화됩니다. 이 모드에서는 다음과 같은 추가 정보가 화면 왼쪽 상단 모서리에 표시됩니다:

  • PUN 클라이언트의 상태
  • Voice 클라이언트의 상태
  • 음성 진폭 평균치와 피크
  • 사용할 수 있는 마이크 장치 목록 또는 없을 경우 경고. 일반적으로, 대부분의 기기에서는 하나의 마이크 장치가 있습니다.

PUN Voice Demo - Debug Mode
PUN Voice 데모 - 디버그 모드

메인 화면으로

사운드

데모에는 몇 가지 멋진 음향 효과도 포함되어 있습니다. 룸에 참여한 것과 퇴장하는 것을 알려야 합니다. 이게 마음에 들었으면 좋겠습니다!

기술문서 TOP으로 돌아가기