XR Interaction Manager と XR Rig 【XR Interaction Toolkit】
今回の記事はXR Interaction Toolkitを利用する上で要になる XR Interaction Manager と XR Rigについてです.
実行環境
- Unity 2019.4.6f1
- XR Interaction Toolkit 0.9.4-preview
前回記事
XR Rig
XR でお馴染みのCamera Rigです. XR Interaction Toolkit で VR を始める上で,まず XR Rig を Hierarchy に設置する必要があります. Hierarchy で右クリック > XR > Room-Scale XR Rig または Stationary XR Rig で自動的に XR Interaction Manager と XR Rig が配置されます.
中身には Main Camera, Left Hand Controller,RightHand Controller が入っています.
Main Camera の Tracked Pose Driver
Main Camera に Tracked Pose Driver コンポーネントがあります. XR Device から Pose の値を取得し,シーン内のGame Object に適用します.
今回はHMDから位置と回転のデータを取り,このMain Cameraに適用しています.
XR Interaction Manager
XR Interaction Toolkit を利用する上で,Managerクラスとなる役割を果たします. Hierarchyに必ず置いておく必要があります.
Room-Scale XR Rig と Stationary XR Rig
どちらも XR Rig ですが,違いはRoom-Scale XR Rigは Tracking Origin Mode を Floor, Stationary XR Rig は Device にしているだけで,他は同じです.
Stationary XR Rig は Device レベルで考慮されるため, ストーリーテリングVR体験のようにシーン内で移動の必要がない場合に使います.
Room-Scale XR Rig は Floor レベルで考慮されるため, JoyStick や Teleportation を利用する場合はこちらの XR Rig を使うことになります.
実機確認
実際にUnity公式が出しているサンプルプロジェクトを改造します.
WorldInteractionのサンプルシーンを開き,すでにある XR Rig をアンチェックし, 新たに Room-Scale XR Rig を設置します.Transform は前の XR Rig の値をコピーします.
腕から赤線が出てきました. デフォルトでは, 両方の Hand Controller は XR Ray Interactor であるため, 遠隔的にVR物体とインタラクションできるようになっています.
最後に
次回は XR Ray Interactor について書こうと思います.