テクスチャストリーミング
Available in the
Industries Circle
Fusion Industriesプロトタイピングアドオン
原理
このアドオンは、Runner.SendReliableDataToPlayerを使用して画像データを共有する方法を示しています。
- 画像を作成した際に:その画像がすべての接続済みユーザーに送信されます。
- または、セッションに遅れて参加したユーザーが接続した際に:その画像がそのユーザーのみに送信されます。
StreamTextureManagerはシーンに含まれている必要があり、理想的にはNetworkRunner階層の下に配置します(そうしない場合は、そのrunner属性を定義する必要があります)。
画像を送信するには、以下のようにStreamTextureManager.SendTexture(textureReceiver, textureData, allPlayers)を使用します。
textureReceiver:IStreamTextureReceiverを実装したコンポーネントで、データを受信した際にフォワードするネットワークオブジェクトを見つけるためにObjectを実装し、実際のテクスチャを受信するためのReceiveTexture(Texture2D texture)メソッドを通じてテクスチャを受け取ります。texture:RenderTexture、Texture2D、またはバイト配列のいずれかであることができます。players: データを送信するプレイヤーのリストです。
デモ
使用方法をわかりやすくするため、CameraPictureコンポーネントはローカルで画像を受信(PhotoRecorderコンポーネントから)し、その後、接続されているすべてのユーザーに転送しています。
遅れて参加したユーザーには、状態の権限がそのユーザーのみに画像データを転送します。FixedUpdateNetwork内のチェックにより、常に状態の権限が存在することが保証されます(元の著者が離れた場合でも)。
使用方法
デモシーンはAssets\Photon\FusionAddons\TextureStreaming\Demo\Scenes\PhotoCamera.unityフォルダにあります。
写真を撮るには、接続が完了したらPhotoRecorderを選択し、インスペクタ内のPhotoRecorderコンポーネントにあるShoot pictureボタンをクリックします。
ダウンロード
このアドオン最新バージョンはaddon projectにあります。
サポートされているトポロジ
- shared mode
Changelog
- Version 1.0.1: Fix demo scene + add namespace
- Version 1.0.0: First release