Location ARを使用してコンテンツを現実世界に配置する
AR Locationは、仮想オブジェクトを現実世界に「アンカー(固定)」するために最も高度に抽象化したものです。
この入門ガイドでは、以下の内容について説明します。
- Geosptial Browser(GSB)からUnityに現実世界の場所をインポートする;
- 現実世界の場所にコンテンツを配置する;
- モックアップを使って、あるいは現地で、配置されたコンテンツをテストする。
前提条件
- ARDKがインストールされたUnityプロジェクトと、セットアップされた基本的なARシーンが必要です。 詳細については、 Setup ARDK 3 および Setup AR Scene をご覧ください。
- 有効な API Keyが必要です。
現実世界の場所をUnityに追加する
UnityにARロケーションを追加するには、次のように行います。
- Geospatial Browser にアクセスし、コンテンツを作成したい場所を探します。 データは.zipファイルとしてダウンロードされます。 解凍しないでください。。 位置データのダウンロードに関する詳細については、 メッシュをダウンロードする を参照してください。
- ダウンロードしたzipファイルを Project ウィンドウの Assets ディレクトリにドラッグ&ドロップします。 インポート処理が完了すると、 Mesh
.prefab
ファイルと、 Manifest.asset
ファイルの2つのアセットが作成されます。 - Lightship Settingsの Persistent Anchors をオンにする:
- Lightship トップメニューをクリックし、 Settingsを選択します。
- Inspector ウィンドウで、 Persistent Anchorsの隣にある Enabled ボックスにチェックを入れます。
XROrigin
に AR Location Manager コンポーネントを追加する:- Hierarchyで
XROrigin
を選択し、 Inspector ウィンドウで、 Add Component をクリックし、 ARLocationManagerを検索します。 - ARLocationManager Componentで、 Add AR Location をクリックし、新しい
ARLocation
を作成します。
- Hierarchyで
- Hierarchyで、
ARLocation
を選択して、 Inspectorにそのコンポーネントを表示します。 Assets ディレクトリの Manifest を、Component の AR Location Manifest フィールドにドラッグ&ドロップします。- これにより、マニフェストに合わせて
ARLocation
GameObjectの名前が更新され、トラッキングのためのフィールドが設定されます。
- これにより、マニフェストに合わせて
現実世界のARコンテンツを追加する
ARコンテンツを追加する際には、次のことを忘れないでください:
- マニフェストの子として AR コンテンツを追加します (
ARLocation
)。 例えば、 Cube 以下のロケーションに追加します:- Hierarchyで、
ARLocation
を右クリックし、 3D Object にマウスオーバーして 、 Cubeを選択する。 - Inspectorで、キューブの Scale を
0.5
に設定し、その位置を0,0,2
に設定します。
- Hierarchyで、
- 自動トラッキングを有効にしてください:
- Hierarchyで、 XROriginを選択し、 Inspector ウィンドウで、 ARLocationManager Component の Auto-Track ボックスをチェックします。
ARLocation
がランタイム中にトラッキングされると、それは関連付けられた ARPersistentAnchor
の ARTrackable
フィールドに配置されます。 これにより、シーン内の ARLocation
のすべての子オブジェクトの相対位置が維持されます。 ARLocation
の子コンテンツを配置または更新する際は、シーンの一貫性を保つためにローカルトランスフォーム空間で変更を行ってください。
リアルワールドAR コンテントを検証する
現実世界のARコンテンツをテストする最も正確な方法は、Unityアプリをデバイスにビルドし、物理的にその場所を訪れてテスト することです。 ただし、この方法が常に可能とは限らないため、Lightshipは、Location AR向けにシミュレーションサブシステムも提供しています。 シミュレーションを有効にするには、 シミュレーションのドキュメント を参照してください。
シミュレーションされた永続アンカーには、一貫した trackableId が割り当てられていますが、これらの trackableId は実際のアンカー(プレイバックまたはリアルタイムのVPS)を正確に解決するためのものとは一致しません。
ヒント
Playbackを使ってローカライズをテストすることもできます。 プレイバック設定方法(How to Setup Playback)を参照してください。