ワールド・ポーズ・システム(WPS)を使ったアプリの作り方
ナイアンティック・ライトシップは、 ワールド・ポーズ・システム(WPS)を提供し、標準的なGPSよりも高い精度と安定性で、位置やコンパスの方位方角を取得することができます。 このチュートリアルでは、UnityプロジェクトにWPSの基本機能を追加し、近くの場所にローカライズするように設定する方法を学びます。
前提条件
ARDKがインストールされているUnityプロジェクト、基本的なARシーン、そしてLightship Occlusionが必要です。 詳しくは、ARDK 3のインストール、ARシーンの設定、実世界オクルージョンの設定方法を参照してください。
また、プレイバック用のスキャンを作成する必要があります。 詳しくは、プレイバック用データセットの作成方法を参照してください。
備考
このハウツーでオクルージョンを設定する場合は、オクルージョンの設定のステップ2(キューブを追加するセクション)をスキップして、オクルージョン抑制の設定の手順に従って、WPSオクルージョンのテスト時に空と地面を除外してください。
UnityプロジェクトにWPSを追加する
UnityプロジェクトにWPSを追加するには、次の手順を行います。
- Hierarchy で
XROrigin
を選択し、Inspector で Add Component をクリックし、ARWorldPositioningObjectHelper
を追加します。 これにより、ARWorldPositioningManager
コンポーネントも作成されます。 - Hierarchy で
XROrigin
とCamera Offset
を展開し、Main Camera
を表示して選択します。 Inspector で Camera の Clipping Planes を見つけ、 Far の値を1000に設定します。 ARWorldPositioningObjectHelper
コンポーネント で、 Altitude Mode を Camera-relative with smart averaging に設定します。- Assets フォルダで右クリックし、 Create にマウスを合わせて C#スクリプト を選択します。 新しいスクリプトに
AddWPSObjects
という名前をつけます。 - Hierarchy に戻り、右クリックして Create Empty を選択し、新しい
GameObject
を追加します。WPSObjects
という名前を付けます。WPSObjects
を選択し、 Inspector で Add Component をクリックし、AddWPSObjects
をスクリプトコンポーネントとして追加します。

ロケーションを取得する
プロジェクトでWPSを使用する前に、プレイバックスキャンを作成した場所の緯度と経度を把握する必要があります。 ロケーションの座標を取得するには、以下の手順を行います。
- Googleマップを開き、再生スキャンをキャプチャした場所を探します。
- マップをクリックしてマーカーを追加します。
- マーカーを右クリックし、メニューの上部に表示される座標を選択してクリップボードにコピーします。