Table of Contents

EasyARプロジェクトにおけるAR Foundationシーンの設定と使用方法

UnityでAR Foundationを使用する場合、EasyARを利用してAR Foundationのデバイス制限を解決することが多い。以下では、EasyARシーンでAR Foundationを正しく設定・使用する方法、およびデバイスのサポート状況に基づいてAR Foundationを動的に有効化する方法について説明する。

開始前に

AR Foundationコンポーネントの追加

EasyARシーンにAR FoundationのAR SessionとXR Originを追加します。

AR Sessionの追加

Hierarchyビューで空白部分を右クリックし、メニューからXR > AR Sessionを選択してUnityのARSessionをシーンに追加します。

alt text

注記

このAR SessionはEasyARのAR Sessionとは異なり、両方がシーンに共存する必要があります。

XR Originの追加

Hierarchyビューで空白部分を右クリックし、メニューからXR > XR Origin (Mobile AR)を選択してUnityのXROriginをシーンに追加します。

alt text

注記

このXR OriginはEasyARのXR Originと機能が重複するため、EasyARのXR OriginではなくUnity XR Originを使用する必要があります。

シーンに既存のEasyAR XR Origin(通常XR Origin (EasyAR)という名前)がある場合、その子オブジェクトを新しく作成したXR Originの下に移動し、XR Origin (EasyAR)を削除します。

alt text

新しく作成したXR Originの下にXR Origin Childがない場合は、手動で追加します。

HierarchyビューでXR Originを右クリックし、メニューからEasyAR Sense > Origin > Origin : XR Origin Childを選択してXR Origin Childを追加します。

alt text

カメラの設定

シーンに既存のAR用Cameraがある場合、不要なメインカメラが出現するので、元のカメラを削除します。

alt text

次に、XR Origin下のMain Cameraを選択し、カメラ設定の説明に従って設定します。

最終的に、AR Foundationが追加された完全なEasyARシーンの構造は以下のようになります:

alt text

注意

ARCameraManager.currentConfigurationを使用してAR Foundationの設定を変更する場合、一部のスマートフォン(例:Xiaomi 10)では設定変更後に画像を取得できない問題が発生し、EasyARが使用不可になることがあります(アプリには背景画像が表示されるがEasyAR機能が反応しない)。そのため、通常は変更を推奨せず、変更が必要な場合はEasyARが使用できない場合の代替案を準備してください。

デバイス互換性とAR Foundationの動的有効化

EasyARはAR Foundationよりも多くのデバイスと互換性があるため、必要な場合にのみAR Foundationを有効化し、それ以外では完全に無効化するように設定する必要があります。

frame sourceコンポーネントの確認

通常、EasyARメニューから作成されたsessionには、自動的にARCoreARFoundationFrameSourceおよびARKitARFoundationFrameSourceが追加されます(一部の画像追跡などSLAM機能を必要としないケースを除く)。

alt text

重要

ARCoreARFoundationFrameSourceおよびARKitARFoundationFrameSourceは、AR Foundationをサポートするデバイスでその機能を有効にするためのEasyAR提供のframe sourceです。シーンのsessionにこれらのframe sourceがない場合、AR Foundation機能を有効にできません。

シーンのsessionにこれらのframe sourceがない場合は、メニューから手動で追加できます。

alt text

AR Foundationをサポートしていないスマートフォンでも動作させるには、sessionにAR Foundation以外のframe sourceが含まれていることを確認する必要があります。典型的なARSessionは以下のようになります:

alt text

ヒント

実際のニーズに応じてframe sourceの順序を並べ替えることができます。アプリ実行時、sessionはデバイスのサポート状況に基づき、transform順で最初に利用可能なframe sourceを選択します。

必要な場合のみAR Foundationを有効化

AR Foundationのモバイル実装はARCoreとARKitであるため、限られたデバイスでのみ使用可能です。特に多くの中国製Androidスマートフォンでは使用できないため、通常はサポート対象デバイスのみでAR Foundationおよび関連機能スクリプトを有効化することを推奨します。

EasyARはこれらの操作を自動化でき、この機能はProject Settings > EasyAR > Sense内のUnity XR > Unity XR Auto Switchオプションで有効/無効を切り替えられます。詳細はUnity XRオブジェクトの自動切り替えを参照してください。

AR Foundation互換性を保持するシーン

正しくAR Foundationコンポーネントが追加されたシーンは、AR Foundationパッケージがインストールされているかどうかに関わらず正常に動作します。

AR Foundationがインストールされていない場合、AR Foundation機能および対応するframe sourceは使用不可となり、シーン内の一部スクリプトが欠落しますが、これは正常な状態です。

alt text alt text

ヒント

多くのサンプルはAR Foundationパッケージのインストール有無に関わらず動作します。これらのサンプルでAR Foundationサポートを有効にするには、EasyARプロジェクトでのAR Foundationの有効化を実施してください。

次のステップ

関連トピック