質問: UnityとVIVEで開発しています。 シーン毎にSteamVRの機能の有無を実装したいのですが、どうしたらよいでしょうか? 概要 --- 1つのプロジェクトの進行内で、それぞれVIVEを着脱することを想定しています。 例えば、 シーン1:VIVEを使ったアトラクションを実施 ↓ シーン2:アプリケーションのリザルト画面として、プレイヤーの動向を2Dマップで表示 その際に、シーン1ではVIVEのカメラを有効にし、 シーン2ではVIVEカメラを無効にして、Unityのメインカメラ(デフォルトで配置されているカメラ)を使いたいです。 ### イメージ 上記のイメージです。 シーン2について「中継」と記載していますが、特にリアルタイムの中継する必要はありません。 ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/fa356c408aa514ee0839d762de057e65.jpeg) 困っている事 ------- シーンを変えても、VIVEのカメラが有効になってしまいます。 [CameraRig]と[SteamVR]は設置していません。 UnityのHierarchyに、Cameraを2個配置しても変えられません。
回答: UnityでHierarchyに複数のCameraを配置すると、CameraコンポーネントのDepthプロパティ(デフォルトは0)が最も高いCameraがMainCameraとして描画されます。 なので「あらかじめ通常カメラを持っておいて、非VR遷移時には、通常CameraのDepthプロパティを+1にし、VR遷移時には-1にする」などすれば解決するのではないかと思われます。 (もしくは[CameraRig]>CameraのDepthプロパティを上げ下げする) もっときれいな方法があると思いますが、良ければ参考にしてくださいませ