最終更新日
このページでは、2画面目を表示する方法について説明します。Pluginに含まれているサンプルで試すこともできます。
Caution
2画面表示はUniy Editorの使用時では機能しません。Buildしアプリ実行することでご確認ください。
事前準備
- Spatial Reality Displayのセットアップが完了していること。 完了していない場合は Setup Spatial Reality Display、 Setup Spatial Reality Display Settings を参照してください。
- SRDisplay UnityPluginがインストールされたUnity Projectがあること。 準備していない場合は Setup for Unity を参照してください。
2画面目を表示する方法
"Hello cube!"アプリを作成する を参考にSRDisplayManager Prefabを配置します。
2画面目を表示するには、最初にSRDisplayManagerのInit2DView()を呼びます。そして、空間再現ディスプレイ2DViewを取得します。
if (_空間再現ディスプレイManager.Init2DView())
{
_空間再現ディスプレイ2DView = _空間再現ディスプレイManager.空間再現ディスプレイ2DView;
}
Show(true)で、2画面目を表示します。
_空間再現ディスプレイ2DView.Show(true);

2画面目を非表示にする場合は、falseを設定します。
_空間再現ディスプレイ2DView.Show(false);

サンプルでは、F5キー(2画面目の表示/非表示)に割り当てられています。
2画面目を全画面で表示する方法
2画面目を全画面表示にできます。
_空間再現ディスプレイ2DView.SetFullScreen(true);

全画面表示から元に戻すことができます。
_空間再現ディスプレイ2DView.SetFullScreen(false);
サンプルでは、F6キー(全画面切替)で確認できます。
2画面目の画像を設定する方法
表示する画像について、Spatial Reality Displayの左目画像、右目画像、混合画像の設定が可能です。
左目画像を設定します。
_空間再現ディスプレイ2DView.SetSourceTexture(SRDTextureType.LeftEye);
右目画像を設定します。
_空間再現ディスプレイ2DView.SetSourceTexture(空間再現ディスプレイTextureType.RightEye);
混合画像を設定します。
_空間再現ディスプレイ2DView.SetSourceTexture(空間再現ディスプレイTextureType.SideBySide);
ELF-SR2:

ELF-SR1:

サンプルでは、F7キー(画像設定切替)で確認できます。
任意のTextureを設定します。
SDK2.4.0以降ではユーザー独自のテクスチャー(CustomTexture)を設定することも可能になりました。
CustomTextureを表示するには、 SetSourceTexture() で 空間再現ディスプレイTextureType.Custom を選択して、CustomTexture に表示したいテクスチャーを割り当てます。
例えば、シーンにカメラを置いて、そのカメラの映像を2画面目に表示したい場合は以下の様な実装となります。
public void ShowCameraImage(Camera sourceCamera)
{
_空間再現ディスプレイ2DView.SetSourceTexture(空間再現ディスプレイ2DView.空間再現ディスプレイTextureType.Custom);
_空間再現ディスプレイ2DView.CustomTexture = sourceCamera.activeTexture;
}

サンプルでは、メニューより"Press 6"で確認できます。