XR Interaction Toolkit 2.0 の環境構築と XR Origin について【XR Interaction Toolkit 2.0】
はじめに
本記事では XR Interaction Toolkit 2.0 における環境構築と XR Origin に関して説明します.
検証環境
- Unity 2021.2.14f1
- Universal RP 12.1.5
- XR Plugin Management 4.2.1
- XR Interaction Toolkit 2.0.1
環境構築
インストール方法
Unity 2020.3 LTS
Package Manager で Unity Registry > XR Interaction Toolkit で調べると出てくると思います.
Unity 2021.2 以上
Package Manager で adding a package by name で com.unity.xr.interaction.toolkit
で追加します.
Input System
XR Interaction Toolkit は Input System を依存パッケージとしています. 以下のダイアログが出た場合は基本「YES」を選択します.
Interaction Layer Mask Updater
後述しますが,2.0.0 版から LayerMask が Unity Physics ではなく XR Interaction Toolkit 特有のものに変わりました. 2.0.0 以前のパッケージからアップグレードを行う場合は「I Made a Backup, Go Ahead!」をクリックすれば Interaction Layer Mask が更新されます.そうしたくない場合は「No Thanks」を選びます.
Samples 導入
Input Actions,Controller Bindings などのアセットを含むサンプルを取得したい場合は, 以下の画像からインストールすることができます.基本こちらは導入したほうがよいです.
XR Origin
1.0.0 時代は XR Rig という名称でしたが,XR Origin になりました.VRカメラとプレイヤースペースを提供します. XR Interaction Toolkit で VR を始める上で,まず XR Origin を Hierarchy に設置する必要があります. Hierarchy で右クリック > XR を選択すると,「Device-based > XR Origin」,「XR Origin (Action-based)」, 「XR Origin」の 3種類あって戸惑うかもしません.
「Device-based > XR Origin」は Device-based のコントローラ群が一緒に生成されます. 「XR Origin (Action-based)」は Action-based のコントローラ群が一緒に生成されます.
「XR Origin」はコントローラ群が一緒に生成されずに Camera のみが存在します.
Device-based と Action-based が存在しますが,機能自体は同じです. 個人的には Action-based を用いることの恩恵が大きいため, Action-based を基本使っていくのがよいと思います.
Tracked Pose Driver
HMD に存在する振動ジャイロや加速度センサから位置情報と角度情報をカメラに転送・更新するために必要なコンポーネントです. XR Origin 越しで生成された Main Camera にはデフォルトでアタッチされています.
Tracking Type
位置トラッキングのみ,角度トラッキングのみ,位置・角度のトラッキングの設定ができます. 基本的には Rotation And Position のままの設定でよいと思います.
Update Type
Player Loop のどのタイミングでトラッキング情報を更新するか設定できます.
UpdateAndBeforeRender
Input System が更新が完了された後とレンダリング直前に更新します. デフォルトの設定で,基本この設定でよいと思います.
Update
Input System が更新が完了された後に更新します.
BeforeRender
レンダリング直前に更新します