AR Foundation
AR Foundation を利用すると、Unity でマルチプラットフォーム対応の AR (拡張現実) アプリケーションを作成できます。AR Foundation プロジェクトでは、どの AR 機能を有効にするかを、対応するマネージャーコンポーネントをシーンに追加することで選択します。AR デバイスでアプリケーションを構築、実行する場合、AR Foundation は、プラットフォームのネイティブの AR SDK を使用して、そうした機能を有効化します。そのため、一度作成すれば、世界の代表的な AR プラットフォームに展開できます。
この シンプルな AR のサンプル シーンを見ると、平面の検出とレイキャスティングを行う方法がわかります
必要なパッケージ
AR Foundation パッケージには、AR 機能用のインターフェースが含まれていますが、機能そのものは実装されていません。ターゲットプラットフォームで AR Foundation を利用するには、そのプラットフォーム用の プロバイダープラグイン パッケージも別途必要です。
Unity は、以下のプロバイダープラグインに正式に対応しています。
- Google ARCore XR Plug-in (Android)
- Apple ARKit XR Plug-in (iOS)
- OpenXR Plug-in (HoloLens 2)
Note
AR Foundation は、ターゲットプラットフォーム用のプロバイダープラグインパッケージをインストールしないと、そのプラットフォームでは適切に機能しません。詳細な設定手順については、AR Foundation のインストール を参照してください。
機能
AR Foundation は以下の機能に対応しています。
機能 | 説明 |
---|---|
セッション | ターゲットプラットフォームで AR を有効化、無効化、設定します。 |
デバイストラッキング | 物理空間でのデバイスの位置と回転を追跡します。 |
カメラ | デバイスのカメラからの画像をレンダリングし、ライトを推定します。 |
平面検出 | サーフェスを検出して追跡します。 |
画像トラッキング | 2D 画像を検出して追跡します。 |
オブジェクトトラッキング | 3D オブジェクトを検出して追跡します。 |
フェイストラッキング | 人物の顔を検出して追跡します。 |
ボディトラッキング | 人物の体を検出して追跡します。 |
点群 | 特徴点を検出して追跡します。 |
レイキャスト | 追跡対象のアイテムにレイキャストします。 |
アンカー | スペース内の任意の点を追跡します。 |
メッシュ作成 | 環境のメッシュを生成します。 |
環境プローブ | 環境のキューブマップを生成します。 |
オクルージョン | 物理オブジェクトで AR コンテンツを遮蔽し、ヒューマンセグメンテーションを実行します。 |
参加者 | 共有 AR セッションで他のデバイスを追跡します。 |
対応プラットフォーム
AR Foundation のプロバイダープラグインは、Android 向けの Google の ARCore や iOS 向けの Apple の ARKit など、プラットフォームの AR 機能の実装状況に依存します。
以下の表には、Unity が対応している各プロバイダープラグインで利用できる機能がまとめられています。
機能 | ARCore | ARKit | OpenXR |
---|---|---|---|
セッション | ✓ | ✓ | ✓ |
デバイストラッキング | ✓ | ✓ | ✓ |
カメラ | ✓ | ✓ | |
平面検出 | ✓ | ✓ | |
画像トラッキング | ✓ | ✓ | |
オブジェクトトラッキング | ✓ | ||
フェイストラッキング | ✓ | ✓ | |
ボディトラッキング | ✓ | ||
点群 | ✓ | ✓ | |
レイキャスト | ✓ | ✓ | |
アンカー | ✓ | ✓ | ✓ |
メッシュ作成 | ✓ | ✓ | |
環境プローブ | ✓ | ✓ | |
オクルージョン | ✓ | ✓ | |
参加者 | ✓ |
サンプル
各機能の使用方法がわかる事前設定されたサンプルシーンについては、GitHub リポジトリの AR Foundation Samples を参照してください。
* Apple および ARKit は、アメリカ合衆国およびその他の国や地域で登録されている Apple Inc. の商標です。