Unity の AR Foundation は、拡張現実の体験を 1 回記述し、追加の変更を加えずに Android デバイスまたは iOS デバイス用にビルドできるクロスプラットフォーム フレームワークです。このフレームワークは、Unity の AR Foundation パッケージから入手できます。
ARCore のオプションである AR Foundation 用の ARCore Extensions パッケージは機能を追加し、Cloud Anchors、カメラ構成フィルタ、録画と再生などの機能をアプリで使用できるようになります。
既存のプロジェクトを移行またはアップグレードする
- 既存のプロジェクトを(非推奨の)Unity 用 ARCore SDK から Unity の AR Foundation に移行し、必要に応じて ARCore Extensions に移行するには、移行ガイドをご覧ください。
- 以前のバージョンの AR Foundation から既存のプロジェクトをアップグレードするには、Unity のアップグレードと移行のガイドをご覧ください。
要件
ターゲット プラットフォームに応じて、AR Foundation パッケージには次のものが必要です。
Android
ハードウェア
- ARCore 対応の Android デバイスまたはエミュレータ
- デバイスを開発マシンに接続するための USB ケーブル
ソフトウェア
iOS
ハードウェア
- ARCore 対応の iOS デバイス
- デバイスを開発マシンに接続するための USB ケーブル
ソフトウェア
AR Foundation をインストールする
AR Foundation Unity パッケージをインストールする手順は次のとおりです。
既存の Unity プロジェクトを開くか、新しい 3D プロジェクトを作成します。
Window > Package Manager に移動します。
Packages の横にある Unity Registry を選択します。
検索バーに「AR Foundation」と入力します。
[Install] をクリックします。
プラットフォーム固有のプラグイン パッケージをインストールして有効にする
AR Foundation パッケージは、Unity デベロッパーが使用するインターフェースを提供しますが、AR 機能自体を実装するわけではありません。ターゲット デバイスで AR Foundation を使用するには、プラットフォームごとに個別のパッケージをインストールし、対応するプラグインを有効にする必要があります。
Android
ARCore XR プラグイン パッケージを使用すると、Android デバイス向けの拡張現実アプリをビルドできます。アプリが Android デバイスをターゲットとする場合は、次の手順に沿って Unity プロジェクトにインストールしてください。互換性の問題を回避するため、AR Foundation パッケージと同じバージョンを使用してください。
プロジェクトで Window > Package Manager に移動します。
Packages の横にある [Unity Registry] を選択します。
検索バーに「ARCore XR plugin」と入力します。
[Install] をクリックします。
Edit > Project Settings に移動します。XR Plug-in Management で [Android] タブを開き、ARCore を有効にします。
iOS
ARKit XR プラグインを使用すると、iOS デバイス向けの拡張現実アプリをビルドできます。アプリが iOS デバイスをターゲットとする場合は、次の手順に沿って Unity プロジェクトにインストールしてください。互換性の問題を回避するため、AR Foundation パッケージと同じバージョンを使用します。
プロジェクトで Window > Package Manager に移動します。
Packages の横にある Unity Registry を選択します。
検索バーに「ARKit XR plugin」と入力します。
[Install] をクリックします。
Edit > Project Settings に移動します。XR Plug-in Management で [iOS] タブを開き、ARKit を有効にします。
AR セッションを構成して、AR Foundation コンポーネントをシーンに追加する
シーンでモーション トラッキング、環境認識、照明の推定などのAR プロセスを有効にするには、AR セッションが必要です。AR セッションをサポートするには、次のゲーム オブジェクトが必要です。
AR Foundation 4.x
AR Session: AR エクスペリエンスのライフサイクルを制御します。
AR Session Origin: AR 座標を Unity ワールド座標に変換します。
新しいゲーム オブジェクトを追加する前に、デフォルトの Main Camera を削除します。AR Session Origin の新しい AR Camera に置き換えられます。
新しい AR ゲーム オブジェクトをシーンに追加します。Hierarchy ペインを右クリックして、[XR] を選択します。新しい AR Session と新しい AR Session Origin ゲーム オブジェクトを追加します。
AR Foundation 5.x
AR Session: AR エクスペリエンスのライフサイクルを制御します。
XR Origin: AR 座標を Unity ワールド座標に変換します。
新しいゲーム オブジェクトを追加する前に、デフォルトの Main Camera を削除します。XR Origin の新しい AR Camera に置き換えられます。
新しい AR ゲーム オブジェクトをシーンに追加します。Hierarchy ペインを右クリックして、XR を選択します。新しい AR Session と新しい XR Origin ゲーム オブジェクトを追加します。
プレーヤー設定を構成する
Android
- File > Build Settings に移動して Build Settings ウィンドウを開きます。
- [Platform] で [Android] を選択し、[Switch Platform] をクリックします。
- [Player Settings] をクリックします。
次のように変更します。
Player Settings > … 値 Other Settings > Rendering [Auto Graphics API] のチェックボックスをオフにします。
Graphics APIs に Vulkan が含まれている場合は、Vulkan は ARCore でまだサポートされていないため、削除します。Other Settings > Package Name Java パッケージ名の形式を使用して一意のアプリ ID を作成します。
例:com.example.helloAR
を使用します。Other Settings > Minimum API Level AR 必須のアプリをビルドする場合は、Android 7.0 'Nougat' (API Level 24) or higher を指定します。
AR オプションアプリをビルドする場合は、Android API Level 19 or higher を指定します。Other Settings > Scripting Backend Mono ではなく IL2CPP を選択して、次のステップで ARM64 サポートを有効にできるようにします。 開発中:
- Mono + 32 ビット(ARMv7)を使用する
- FAT(32 ビット + 64 ビット)ARCore APK をインストールする
Google Play ストアに配送する場合:
- IL2CPP
- Google Play ストアの 64 ビット要件を満たすために 32 ビット(ARMv7)と 64 ビット(ARM64)の両方を有効にする
- 省略可(2018.3 以降でサポート): Build Settings で Android App Bundles を有効にする
Other Settings > Target Architectures Google Play の64 ビット要件を満たすには、ARM64(64 ビット ARM)を有効にします。32 ビットデバイスをサポートするには、ARMv7(32 ビット ARM)を有効のままにします。
iOS
- File > Build Settings に移動して Build Settings ウィンドウを開きます。
- [Platform] で [iOS] を選択し、[Switch Platform] をクリックします。
- [Player Settings] をクリックします。
以下の設定を構成します。
Player Settings > … 値 Other Settings > Bundle Identifier アプリの名前をリバース DNS 形式で追加します。
例:com.mycompany.myapp
を使用します。Other Settings > Camera usage description AR(ARKit など)の使用について説明する説明を入力します。 Other Settings > Target minimum iOS version 11.0 以降 Other Settings > Architecture ARM64
次のステップ
- オプションの ARCore Extensions パッケージを使ってみましょう。このパッケージは、AR Foundation フレームワーク用の追加の ARCore 機能を提供します。
- Unity の AR Foundation を使用して AR ゲームを作成する(Codelab)。