This document is about: VOICE 2
SWITCH TO

PUN Voiceデモ

PUN Voiceデモは、プレイヤー同士で会話できる簡単な4人プレイのモバイルゲームです。
マッチメイキングの他、4人のキャラクター、3つのカメラ表示があります。
このデモはUnityのチュートリアル「Survival Shooter」を基に作成されました。
Photon Voiceパッケージで使用できます。

PUN Voice Demo Screenshot
PUN Voiceデモの実行画面

セットアップ

PUN Voiceデモを試すには:

  1. アセットストアからパッケージをダウンロードする
  2. Unityでプロジェクトを開き、DemoPunSceneをロードする。
  3. UnityインスペクターでPhotonServerSettingsを開く (メニュー: "Window" -> "Photon Unity Networking" -> "Highlight Server Settings"):
  4. ビルドして、実行して、できあがり!

特徴

このセクションではこのデモで確認できる特徴についてご紹介します。

複数のキャラクター

デモを試行しているとき、各プレイヤーのキャラクターがそれぞれユニークで、ランダムな位置にスポーンされることに気が付くでしょう。
これはCharacterInstantiationクラスを使用して処理されています。 OnJoinedRoomコールバックで、アクター番号に基づいてプレハブを選択し、スポーン位置をランダムにします。

接続とキャリブレーション

PUN Voice Demo - Control Buttons
PUN Voiceデモ - コントロールボタン

右下の端にキャリブレーションと接続のボタンがあります。
キャリブレーションボタンは、Voiceのルームに入ったときのみ有効で、音量の調整に便利です。
詳細は"キャリブレーション"を参照してください。

他の2つのボタンはそれぞれ、PUNまたはPhoton Voice 「へ接続」・「から切断」します。

設定

いくつかの設定を行うと、UIから簡単にアクセスできるようになります。
ショートカットを作って、Photon Voiceアプリケーションを整えましょう。

ゲーム内設定

PUN Voice Demo In-Game Settings
PUN Voiceデモゲーム内設定

Photon Voiceアプリケーションにとって最も重要なランタイム設定は単一のToggleGroupに分類されています:

  • Transmit: 無効にすると、音声伝送がオフになります。有効の場合、音声は録音され、伝送されます。
  • Mute Speaker: 名前の通り、音量が0になりスピーカーがミュートされます。
  • VoiceDetection: この設定は、ボイスの検出を有効化・無効化します。
  • DebugEcho: この設定は、クライアントが1人でVoiceアプリケーションをテストする場合に便利です。 オンにした場合、サーバーからオーディオストリームが元の送信者に送り返されます。 デバッグ目的でのみの使用となります。

グローバル設定

PUN Voice Demo In-Game Settings
PUN Voiceデモグローバル設定
  • AutoConnectAndJoin: PUNクライアントが「PUNルーム」に参加すると、自動的にPhoton Voiceクライアントを「ボイスルーム」に参加させます。
  • AutoLeaveAndDisconnect: PUNクライアントが接続を切ると、自動的にPhoton Voiceクライアントの接続を切ります。
  • DebugVoice: デバッグモードを切り替えます。
    デバッグテキストが画面の左上の隅に、次の情報を含む表示されます。 PUNおよびVoiceアプリケーションClientState、使用されているマイク端末、Voice統計。
    オンにした場合、「話し中」の各キャラクターの上にVoiceのスピーカーラグが表示されます。

Voiceコンポーネントの特徴

メインとなる2つのVoiceコンポーネントの動作について、各プレイヤーの頭上に表示される等角図法を用いて説明します。
これは、Unityの「World Space」モードにある新しいUIシステムに基づいています。 アイコンを2つ含んでいます:

"Speaker" アイコン

PUN Voice Demo - Highlighting Speaker
PUN Voice デモ - 話している人の表示

このアイコンの目的は、プレイヤーボイスの再生を表示することです。
これはPhotonVoiceViewコンポーネントと連携しています。
画像は次のコードに基づいて表示・非表示されます:

C#

speakerSprite.enabled = photonVoiceView.IsSpeaking;

また、DebugVoiceグローバル設定が切り替わると、常にアップデートされた数字を含むテキストが同じ画面に表示されるようになります。
これはスピーカーコンポーネントのラグについて通知します。 以下のように有効化・無効化します:

C#

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

「吹き出し」アイコン

PUN Voice Demo - Highlighting Recorder
PUN Voiceデモ - 録音している人の表示

このアイコンの目的は、プレイヤーボイスが録音され伝送されたことを表示することです。
これはPhotonVoiceViewコンポーネントと連携しています。
画像は次のコードに基づいて表示・非表示されます:

C#

recorderSprite.enabled = photonVoiceView.IsRecording;

詳細は、「Highlighter.cs」ファイルと同じ名前のクラスを参照してください。

いろいろなカメラ

Photon VoiceがAR・VRを含むあらゆるタイプのゲームに向いていることから、3Dサウンドエクスペリエンスのすばらしさを示す実際の例が役立つでしょう。
すばらしさを体感してもらえるように、カメラモードを3つ用意しました:

・「一人称視点」

PUN Voice Demo - First Person View
PUN Voiceデモ - 一人称視点

・「三人称視点」

PUN Voice Demo - Third Person View
PUN Voiceデモ - 三人称視点

・「オーソグラフィック」(デフォルト)

PUN Voice Demo - Orthographic View
PUN Voiceデモ - オーソグラフィック

カメラの切り替えはルームに参加していればいつでも、自由に途切れることなく行えます。
プレイヤーのキャラクターが初期化されたら、画面の右上にあるそれぞれ3つのボタンを使用します。

モバイルジョイスティック

デモにはモバイルタッチ入力のサポートも含まれます。
スマートフォンやタブレットで、デモに搭載されているジョイスティックUIを使用できます。このUIはUnityの標準アセットに基づいています。
この機能を使用するには、Unityのメニューで「Mobile Input」を有効化し、Unitynoビルド設定で互換性のあるプラットフォームに切り替えます。

PUN Voice Demo - Android Screenshot
PUN Voiceデモ - Androidスクリーンショット

デバッグモード

DebugVoice切り替えがオンの場合は、Debug Modeが有効化されます。
このモードでは、画面左上の隅に次の追加情報が表示されます:

・PUNクライアントの状態
・Voiceクライアントの状態
・ボイスの振幅の平均とピーク
・使用可能なマイク端末のリストおよび、使用可能なマイクがない場合は警告 一般的には、ほとんどの端末にマイクが1つ搭載されています。

PUN Voice Demo - Debug Mode
PUN Voiceデモ - デバッグモード
Back to top