XR Origin は、XR シーンのトラッキング空間の中心として機能します。
XR Origin は、XR トラッキングデータをシーンのワールド空間に変換するために連携して動作するゲームオブジェクトとコンポーネントのセットです。
以下のトピックでは、XR Origin とプロジェクトでの使用方法について説明します。
| トピック | 説明 |
|---|---|
| XR トラッキングスペース | XR Origin、デバイストラッキングスペース、Unity シーンの関係について説明します。 |
| XR Origin の設定 | Unity で使用できる XR Origin の各設定について説明します。 |
XR Origin とその子ゲームオブジェクトおよびコンポーネントの詳細については、XR Origin コンポーネントを参照してください。
XR デバイスは、初期化時に現実世界の原点を選択します。ユーザーのヘッドセットやハンドヘルドデバイス、XRコントローラー、手、ユーザーの周囲で検出された物理的なオブジェクトなど、トラッキングされた実体すべての位置と向きが、この選択された点と相対的にレポートされます。
注意: 原点を選択する基準はプラットフォームによって異なります。通常、デバイスはユーザーの HMD (VR) またはハンドヘルドデバイス (AR) の真下を選択します。
トラッキンデータをシーンで直接使用する場合、ユーザーはシーンの原点 (0, 0, 0) に立っているように見えます。シーン内の別の場所にユーザーを表示させるには、トラッキングデータを適切な位置と向きに変換する必要があります。Unity が提供する XR Origin は、これを自動で行います。AR Foundation や XR Interaction Toolkit によって提供される機能を含め、Unity XR 機能の多くでは、シーンに XR Origin が必要です。プロジェクトに合わせて、さまざまなXR Origin 設定から選択できます。
Unity シーンに XR トラッキングスペースを配置するには、シーンの開始時にユーザーを表示したい位置に XR Origin ゲームオブジェクトを追加します。例えば、シーンの原点にユーザーを配置するには、XR Origin ゲームオブジェクトを該当の場所に配置します。XR Origin を Y 軸を中心に回転させ、希望の開始方向にユーザーを向けることができます。
XR Origin には、追跡される実体を表すゲームオブジェクトが階層内に子として含まれています。例えば、ユーザーのヘッドセットやハンドヘルドデバイスは Camera ゲームオブジェクトで表されます。子であるため、これらのゲームオブジェクトの位置と回転を制御するトラッキングデータは、XR Origin に相対するワールド空間に自動的に変換されます。こうした子ゲームオブジェクトは、ユーザーが現実世界で動くと、シーン内で XR Origin に対して相対的に動きます。
トラッキングデータを変換するために XR Origin (A) を親として使用することで、トラッキング原点と Unity のシーン原点 (B) の場所と向きを別にすることができます。
ユーザーがシーン内を歩き回っても、親の XR Origin ゲームオブジェクトは移動しません。ただし、コントローラー入力を介してユーザーがテレポートしたりシーン内を移動したりできるようにするために、スクリプトを使って XR Origin を動かすことは可能です。
Unity の XR パッケージには、様々なタイプの XR アプリケーションに合わせた XR Origin 設定が複数あります。GameObject > XR メニューを使用して、現在のシーンに XR Origin を追加できます。利用可能なオプションは、プロジェクトに追加したパッケージによって異なります。
重要:1 つのシーンに複数のアクティブな XR Origin を含めることはできません。1 つのシーン内で、別の目的のために異なる XR Origin の設定が必要となる場合は、同時に 1 つだけを有効にしてください。
| XR のタイプ | 設定方法 | メニューオプション | パッケージ | ノート |
|---|---|---|---|---|
| VR、MR | XR Rig | Convert Main Camera To XR Rig | XR Legacy Input Helpers (XR 用の古い機能の入力補助機能、XR Plug-in Management パッケージとともにインストールされます) | 基本的な Unity シーンの標準カメラを置き換えます。メインカメラの置き換えに使用されるロジックは、複雑なシーンでは失敗する可能性があります。XR Interaction Tools パッケージをインストールすると、Unity はこのオプションを削除します。このメニューオプションで作成される XR Rig ゲームオブジェクトは、XR Origin とは若干異なり、XR Origin と比べて、他の Unity XR 機能との互換性が低くなる可能性があります。 |
| VR、MR | XR Origin | XR Origin | XR Core Utils (XR の中心的なユーティリティ、XR Interaction Toolkit パッケージとともにインストールされます) | コントローラー用のゲームオブジェクトは含まれません。 |
| VR、MR | XR Origin (VR) | XR Origin (VR) | XR Interaction Toolkit | アクションベースの入力用に設定されたコントローラーゲームオブジェクトが含まれます。 |
| VR、MR | XR Origin (VR) | Device-based > XR Origin (VR) | XR Interaction Toolkit | デバイスベースの入力用に設定されたコントローラーゲームオブジェクトが含まれます。 |
| AR、MR | XR Origin (AR) | XR Origin (AR) | AR Foundation | ハンドヘルド AR アプリケーションのトラッキングの原点として機能します。コントローラーのゲームオブジェクトが含まれます。このオプションは、XR Interaction Toolkit がインストールされている場合に利用できます。 |
| AR | XR Origin (Mobile AR) | XR Origin (Mobile AR) | AR Foundation | ハンドヘルド AR アプリケーションのトラッキングの原点として機能します。コントローラーのゲームオブジェクトは含まれません。XR Interaction Toolkit がインストールされている場合、このオプションは XR Origin (AR) に置き換えられます。 |
注:
XROrigin コンポーネントも CameraOffset コンポーネントに置き換えられ、設定が追加されています。詳細については、XR Origin コンポーネント を参照してください。