Scene Setupについて
現在開いているシーンにおいて、MiRZA アプリを作成する上で必要な設定がなされているかどうかを確認し、設定するためのサポートを行います。
Step 2-1: Add XR Core Modules
XR アプリに関連する必要モジュールがシーン内に存在するかどうかを確認します。
「Open Guide」ボタンで関連するオンラインドキュメントへ移動します。
「Setup XR Core Modules」ボタンで、以下の処理を行い XR Core Modules を追加します。
- AR Session の追加
- XR Origin の追加
- AR Camera Manager の無効化
- AR Camera Background の無効化
- XR Origin 追加時に孫 GameObject として一緒にデフォルトで作成される Left Controller / Right Controller を削除
- XR Origin が親にいない Main Camera の GameObject をすべて削除
Step 2-2: Add Snapdragon Spaces Modules
アプリをビルドするうえで必要なモジュールがシーン内に存在するかどうかを確認します。
「Open Guide」ボタンで関連するオンラインドキュメントへ移動します。
「Add Snapdragon Spaces Modules」ボタンで、以下の処理を行い Snapdragon Spaces Modules を追加します。
- Dynamic OpenXR Loader の追加
- Spaces Host View の追加
- Spaces Lifecycle Events の追加
- Spaces XR Simulator の追加
Step 2-3: Add MiRZA Modules
MiRZA Library がサポートする機能がシーン内に存在するかどうかを確認します。
これらは必須ではありませんが、Dual Render Fusion アプリを作成するうえでのショートカットとなります。
「Add Dual Render Fusion Controller」ボタンで、シーン内に Dual Render Fusion コントローラのひな形を配置します。
「Add Render Camera」ボタンで、Main Camera の子に RenderCamera を追加します。
RenderCamera とは、MiRZA のカメラ映像をコントローラ上に表示するために利用する Camera のオブジェクトを指します。
RenderCamera の詳しい使い方は Assets/QONOQController/Scenes/ControllerPrefabSampleScene.unity シーンを参照してください
- Assets/QONOQController フォルダは「Add Dual Render Fusion Controller」ボタンによって追加されます
- RenderCamera はシーン内の /AR Setup/XR Origin (XR Rig)/Camera Offset/Main Camera/RenderCamera にあります
- カメラ映像の描画は SimpleQONOQFusionInteraction/SimpleCanvasControllerCompanion/Canvas/NotificationArea/Notify-CameraView/MessageBox/ContentGroup/CameraPreview/RawImage で行っています
Spaces Lifecycle Event Configuration
「Register Events To Spaces Lifecycle Events」ボタンで、「Add Dual Render Fusion Controller」ボタンで追加したコントローラの基本的なイベント設定をシーン内の Spaces Lifecycle Events へ登録します。
これにより行われる設定は以下の通りです。
- コントローラが MiRZA へ接続中にダイアログで通知する
- コントローラが MiRZA へ接続完了時にダイアログを閉じる
- コントローラと MiRZA の接続が切れた際にポインターを非表示にする
- MiRZA で全ての XR コンテンツが利用可能になったらポインターを表示する
- MiRZA で全ての XR コンテンツが利用不可になったらポインターを非表示にする
- コントローラが利用可能になったらUIを表示する
- コントローラが利用不可になったらUIを非表示にする
- コントローラが利用不可になったら、RenderCamera を無効化する
- シーン内の Target Texture (URP では Output Texture) が設定されている Camera を RenderCamera として設定します
- シーン内に RenderCamera が存在しない場合は、この設定は行われません
Add QCHT Modules
ハンドトラッキングを行うために便利なモジュールがシーン内に存在するかどうかを確認します。
ハンドトラッキングを 使用するシーンを新たに作成するときは、Hand Tracking Template を活用することを検討してください。
「Templates」ボタンで、Templates カテゴリを開きます。
1. Check modules and settings for Hand Tracking
ハンドトラッキングに必要なパッケージ、およびサンプルのインストール状況と設定の状況を表示します。
2. Add QCHT XR Origin
「Add QCHT XR Origin」 ボタンで、シーン内へモジュールを自動で追加します。