ワールド・ポジショニング・システム(WPS)
WPSとは?
ライトシップ・ワールド・ポジショニング・システム(WPS)は、端末のGPSやコンパスの方位データを使用する代わりに、携帯電話の3D位置と方位を地理座標で提供します。 WPSは、標準的なGPS測位よりも精度が高く、フレーム間の安定性が高いため、ARアプリケーションに適しています。 ユーザーが動き回っても、WPSはデバイスの位置を維持するため、長時間・長距離の連続使用に適しています。
WPSはGPS信号のある場所であればどこ でも機能しますが、精度はGPSの精度によって異なります。
他のLightship Experimental Featuresと同様に、WPSはサポートされておらず、変更される可能性があります。
WPSは何に使えるのか?
GPSの位置やコンパスの方位角を使用するアプリケーションは、WPSが提供する精度と安定性の向上により改善されます。 また、WPSと既存の地理データを組み合わせた新しいタイプのAR体験もあります:
- デバイスの正確な3D位置を地図上に表示する三人称視点ビューの作成。
- カメラビューを補強したり、プロシージャル生成にコンテキストを提供するために地理データを使用します。
- 地図データを、現実世界のトポロジーを反映した仮想世界に置き換え、プレーヤーが歩き回って探索できるようにします。
WPSのユースケースのいくつかを実際に見るには、サンプルプロジェクトを試してみてください。
世界測位による安定性の向上は、下の画像でデバイスのコンパスと並べて見ることができます。
ワールド・ポジショニング・システムの実現
Hierarchy内のXROriginコンポーネントに[ARWorldPositioningManager]を追加することで、プロジェクト内でワールドポジショニングシステムが有効になります。 これにより、MainCameraに[ARWorldPositioningCameraHelper]が自動的に追加されます。 WPSによって提供される、より正確なコンパスとGPSプロパティを必要とするアプリケーションでは、CameraHelperから直接アクセスすることができます。
世界測位システムUPMをプロジェクトに追加する
WPS UPMをプロジェクトに追加するには、Lightship GithubからWorld Positioning System UPMをダウンロードしてください。
クリックしてWPSCompass.csを表示します
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Niantic.Experimental.Lightship.AR.WorldPositioning;
public class WPSCompass : MonoBehaviour
{
[SerializeField] private ARCameraManager _arCameraManager;
private ARWorldPositioningCameraHelper _WPSCameraHelper;
// Startは最初のフレーム更新の前に呼ばれる
void Start()
{
_WPSCameraHelper = _arCameraManager.GetComponent<ARWorldPositioningCameraHelper>();
} // Updateはフレームごとに1回呼ばれる。
// Updateはフレームごとに1回呼ばれる
void Update()
{
float heading = _WPSCameraHelper.TrueHeading;
Quaternion rotation = Quaternion.Euler(0, 0, heading);
double latitute = _WPSCameraHelper.Latitude;
double longitude = _WPSCameraHelper.Longitude;
}.
}
ワールドポジショニングシステムを使用したワールド座標へのオブジェクトの配置については、ハウツーページワールドポジショニングシステム(WPS)を使用したアプリの作り方を参照してください。
WPSはどのように機能するのか?
WPSはGPS、コンパスの方位、ARKit/ARCoreのトラ ッキングデータをセッションから組み合わせ、より正確な結果を出します。 WPSでは、ARKit/ARCoreトラッキングのためにカメラを有効にする必要がありますが、カメラビューがユーザーに見える必要はありません。
WPS FAQ
なぜデバイスのGPSやコンパスの方位ではなく、WPSを使うのですか?
WPSは、標準的なプラットフォームAPIから得られるよりも正確なコンパス方位と緯度経度位置を提供する。 GPSと方位データをARトラッキングと融合させ、バーチャルコンテンツのレンダリングに適したフレーム間安定性を実現する。 また、すべてのプラットフォームで同じUnityインターフェイスを提供し、地理データの処理を簡素化するヘルパークラスを提供し、デバイス固有のGPSの問題についての心配を取り除きます。