拡張現実 (AR) には、VR や従来のリアルタイム 3D アプリケーションと比較して、デザイン上の新しい課題があります。定義上、拡張現実アプリケーションは、ユーザーの周りの現実世界にコンテンツを重ね合わせます。現実世界にオブジェクトを配置するには、まず、どこに配置するかを決めなければなりません。例えば、物理的な壁に仮想絵画を置きたいかもしれません。仮想の鉢植えを置く場合は、物理的なテーブルや床に置くこともあるでしょう。AR アプリケーションは、ユーザーのデバイスから、平面の位置、物体、人、顔の検出など、世界に関する情報を受け取り、良いユーザー体験を提供するためにこれらの情報をどのように使用するかを決定します。
Unity で典型的な AR シーンを開くと、シーンや Hierarchy ウィンドウにあまり多くの 3D オブジェクトはありません。代わりに、シーン内のほとんどのゲームオブジェクトはアプリケーションの設定やロジックを定義します。3D コンテンツは通常プレハブとして作成され、AR 関連のイベントに応じてランタイムにシーンに加えられます。
Unity エディターの典型的な AR シーン
基本的な AR シーンには、以下のゲームオブジェクトとコンポーネントが含まれます。
If you have the XR Interaction Toolkit installed, the XR Origin option for AR applications changes to XR Origin (AR), which adds GameObjects for representing hand-held controllers and the toolkit components needed for interaction with objects in the scene.
Tips: * Use the GameObject > XR menu to add these GameObjects and their associated components to a scene. (You can also open the menu by right-clicking in the Hierarchy window.) * You should never have more than one active XR Origin in a scene.
これらのセッションゲームオブジェクトに加えて、アプリケーションが使用する AR 機能の種類ごとに対応する AR マネージャー コンポーネントが必要です。
XR シーンの設定方法については、XR シーンの設定 を参照してください。
AR アプリケーションケーションの作成に関する詳細な情報は、シーン設定 を含む AR Foundation パッケージのドキュメントを参照してください。
To create AR apps in Unity, you can install the AR Foundation package along with the XR provider plug-ins for the devices you want to support. Unity provides additional packages, including Unity Mars and the XR Interaction Toolkit to make it easier and faster to develop AR experiences.
Unity がサポートする AR プロバイダープラグインには以下が含まれます。
XR Plug-in Management システムを使用してこれらのプラグインを 1 つ以上追加し、有効にしてください。手順については、XR プロジェクトの設定 を参照してください。
Note: Depending on the platform or device, you might need to install additional packages alongside Unity’s OpenXR Plug-in. For example, to build an AR app for HoloLens 2, you must install the Microsoft’s Mixed Reality OpenXR Plugin.
AR Foundation パッケージは、Unity での AR 開発をサポートします。
AR Foundation を使用すると、Unity でマルチプラットフォームの AR アプリケーションを作成できます。AR Foundation プロジェクトでは、対応するマネージャーコンポーネントをシーンに追加して、有効にする AR 機能を選択します。AR デバイス上でアプリケーションをビルドして実行すると、AR Foundation はプラットフォームのネイティブの AR SDK を使用してこれらの機能を有効にします。そのため、一度作成すれば、世界の主要な AR プラットフォームに展開できます。
デバイスは、可能な AR 機能をすべてサポートしなくても、AR に対応することができます。利用可能な機能は、デバイスプラットフォームと特定のデバイスの機能の両方に依存します。例えば、Google の Android 向け AR プラットフォームである ARCore は、現在のところボディトラッキングをサポートしていません。そのため、Android プラットフォーム向けにアプリケーションを作成しても、ボディトラッキングは使用できません。同じプラットフォームであっても、デバイスによって機能が異なることがあります。例えば、特定のデバイスモデルは、ゲームの世界に向けたカメラで AR をサポートできても、ユーザーに向けたカメラではサポートできないかもしれません。
AR Foundation のダウンロードと使用方法の詳細は、AR Foundation パッケージの ドキュメント を参照してください。
Unity Marsは AR アプリケーションを作成するための専用オーサリングツールと優れたワークフローを提供します。
Unity Mars には互換性のあるライセンスが必要です。Unity Pro、Unity Enterprise、Unity Industrial Collection プランには Mars が含まれています。別のプランをご利用の場合は、別途 Unity Mars のライセンスを取得することもできます。詳しくは Unity Mars を参照してください。
Unity XR Interaction Toolkit は、AR と VR 両方のインタラクションを構築するためのツールを提供します。XR Interaction Toolkit が提供する AR 機能には以下が含まれます。
Unity の AR Project Template は、Unity での VR 開発の出発点です。このテンプレートは、プロジェクトの設定を構成し、適切なパッケージをプリインストールし、さまざまな設定済みのサンプルアセットをもつサンプルシーンを提供し、AR の準備が整ったプロジェクトを設定する方法を示します。新規プロジェクト作成時に Unity Hub から AR テンプレートにアクセスします。テンプレートを使用してプロジェクトを作成する方法については、新規プロジェクトを作成 を参照してください。
テンプレートアセットとサンプルシーンの設定方法については、AR Project Template についてを 参照してください。