Unity の AR Foundation は、拡張現実の体験を 1 回記述し、追加の変更を加えずに Android デバイスまたは iOS デバイス用にビルドできるクロスプラットフォーム フレームワークです。このフレームワークは、Unity の AR Foundation パッケージから入手できます。
ARCore のオプションの ARCore Extensions for AR Foundation パッケージを使用すると、Cloud Anchor、カメラ設定フィルタ、録画と再生などの機能をアプリで使用できるようになります。
既存のプロジェクトを移行またはアップグレードする
- 既存のプロジェクトを(非推奨の)ARCore SDK for Unity から Unity の AR Foundation に移行し、必要に応じて ARCore Extensions に移行するには、移行ガイドをご覧ください。
- 以前のバージョンの AR Foundation から既存のプロジェクトをアップグレードするには、Unity のアップグレードと移行のガイドをご覧ください。
要件
ターゲット プラットフォームに応じて、AR Foundation パッケージには次のものが必要です。
ハードウェア
- ARCore 対応の Android デバイスまたはエミュレータ
- デバイスを開発マシンに接続するための USB ケーブル
ソフトウェア
ハードウェア
- 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 を使用するには、個別のパッケージをインストールし、各プラットフォームに対応するプラグインを有効にする必要があります。
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 を有効にします。
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 Session: AR エクスペリエンスのライフサイクルを制御します。
AR Session Origin: AR 座標を Unity ワールド座標に変換します。
新しいゲーム オブジェクトを追加する前に、デフォルトの Main Camera を削除します。AR Session Origin の新しい AR Camera に置き換えられます。
新しい AR ゲーム オブジェクトをシーンに追加します。Hierarchy ペインを右クリックして、XR を選択します。新しい AR Session と新しい AR Session Origin ゲーム オブジェクトを追加します。
AR Session: AR エクスペリエンスのライフサイクルを制御します。
XR Origin: AR 座標を Unity ワールド座標に変換します。
新しいゲーム オブジェクトを追加する前に、デフォルトの Main Camera を削除します。XR Origin の新しい AR Camera に置き換えられます。
新しい AR ゲーム オブジェクトをシーンに追加します。Hierarchy ペインを右クリックして、XR を選択します。新しい AR Session と新しい XR Origin ゲーム オブジェクトを追加します。
AR Session: AR エクスペリエンスのライフサイクルを制御します。
XR Origin: AR 座標を Unity ワールド座標に変換します。
新しいゲーム オブジェクトを追加する前に、デフォルトの Main Camera を削除します。XR Origin の新しい AR Camera に置き換えられます。
新しい AR ゲーム オブジェクトをシーンに追加します。Hierarchy ペインを右クリックして、XR を選択します。新しい AR Session と新しい XR Origin ゲーム オブジェクトを追加します。
プレーヤー設定を構成する
- 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 次のステップで ARM64 サポートを有効にできるように、Mono ではなく IL2CPP を選択します。 開発中:
- Mono + 32 ビット(ARMv7)を使用する
- FAT(32 ビット + 64 ビット)ARCore APK をインストールする
Google Play ストアに配送する場合:
- IL2CPP
- 32 ビット(ARMv7)と 64 ビット(ARM64)の両方を有効にして、Google Play ストアの 64 ビット要件を満たす
- 省略可(2018.3 以降でサポート): Build Settings で Android App Bundles を有効にする
Other Settings > Target Architectures Google Play の64 ビット要件を満たすには、ARM64(64 ビット ARM)を有効にします。32 ビットデバイスをサポートするには、ARMv7(32 ビット ARM)を有効のままにします。
- 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)。