デバイストラッキング
AR Foundation の シーン設定 手順に従うと、"XR Origin" という名前の事前設定されたゲームオブジェクトがシーンに表示されます。以下に示すように、XR Origin ゲームオブジェクトは、カメラおよび TrackedPoseDriver を備えた XROrigin コンポーネントとゲームオブジェクト階層を介して、デバイストラッキングと、Unity の座標系へのトラッカブルの変換を自動的に処理します。
XR Origin コンポーネント
XROrigin コンポーネントは、平面や特徴点のようなトラッカブルな特徴を、シーン内の最終的な位置、回転、スケールに変換します。
XR Origin コンポーネント
セッション空間とワールド空間
XROrigin コンポーネントは、AR (拡張現実) デバイスの "セッション空間" (AR セッションの開始を基準とした、スケールされていない空間) から Unity ワールド空間にトラッカブルを変換します。例えば、セッション空間 (0, 0, 0) は AR セッションが作成された位置を指し、Unity ワールド空間での XR Origin の位置に対応します。
この概念は、Unity で他のアセットを操作する際の "モデル" または "ローカル" 空間とワールド空間の違いに似ています。例えば、DCC ツールから家アセットをインポートした場合、ドアの位置はモデラーの原点を基準とした相対位置になります。これは一般的に "モデル空間" または "ローカル空間" と呼ばれています。これを Unity でインスタンス化した場合、Unity の原点を基準としたワールド空間も持つことになります。
ゲームオブジェクト階層
XR Origin は、"Camera Offset" と "Main Camera" という名前の 2 つの子ゲームオブジェクトを使用して作成されます。これらのゲームオブジェクトとその Transform は、それぞれ重要です。
アプリケーションがデバイス上で実行されると、XR Origin の位置と回転には、アプリケーション開始時のユーザーのデバイスの初期位置と回転が反映されます。XR Origin は AR セッション中には動きませんが、AR デバイスが物理環境の中を移動すると、Main Camera ゲームオブジェクトの TrackedPoseDriver コンポーネントは、デバイスの位置と回転に合わせて Main Camera の位置と回転を自動的に更新します。
XROrigin コンポーネントは、その Tracking Origin Mode が Device に設定されている場合、Camera Offset ゲームオブジェクトを使用して Camera Y Offset (カメラ Y オフセット) 値を適用します。追加のカメラオフセットを適用するには、XR Origin と Camera Offset の間に別のゲームオブジェクトを挿入します。
ランタイムに、XROrigin コンポーネントは、"Trackables" という名前の別の子ゲームオブジェクトを作成します。マネージャー は新しいトラッカブルを検出してシーンに追加すると、それらを Trackables ゲームオブジェクトの子としてインスタンス化します。子ゲームオブジェクトとしてインスタンス化されたトラッカブルとその位置、回転、スケールは、XR Origin を基準として定義されます。
スケール
XROrigin では、仮想コンテンツをスケールすることもできます。XR Origin にスケールを適用するには、Inspector または transform プロパティを使用して、その Transform コンポーネントのスケールを設定します。これにより、Main Camera の位置や検出されたトラッカブルなど、デバイスから受け取ったすべてのデータがスケールされます。値が大きいと AR コンテンツは小さく表示され、値が小さいと大きく表示されます。例えば、スケールを 10 にするとコンテンツは 10 倍小さく表示され、0.1 にするとコンテンツは 10 倍大きく表示されます。
対象デバイス
XROrigin は、AR Foundation と XR Interaction Toolkit パッケージの間で共有されるクラスです。XR Interaction Toolkit は、Unity で AR 体験を構築するために使用する、オプションの追加パッケージです。
AR Foundation のデフォルトの XROrigin は、モバイル AR 体験向けに事前設定されていますが、ハンドヘルドコントローラー入力による AR ヘッドマウントディスプレイを対象にする場合は、XR Interaction Toolkit をインストールして、XROrigin を追加設定できます。XROrigin の設定については、詳細な XR Origin コンポーネントのドキュメント を参照してください。