ARPin の概要

ARPin を使用すると、Unreal Engine 内で仮想コンテンツをアタッチ可能な実世界の固定位置を AR 内にマークできます。

Choose your operating system:

Windows

macOS

Linux

ARPins は、Unreal Engine 内で仮想コンテンツをアタッチすることができる拡張現実 (AR) 内の固定された現実世界の場所です。ARPins は、Unreal Engine 内で仮想コンテンツをアタッチ可能な AR 内における実世界の固定位置のことです。ARPin API はすべてのプラットフォームで共通ですが、 ARPin データの実装は各プラットフォームごとに異なります。基盤となるプラットフォームが実世界の位置または実世界のジオメトリの追跡をサポートしている場合、この機能により ARPin の位置の安定性が向上し、それらが対応する実世界の位置またはジオメトリにロックされたままになります。

example of adding and removing pins in AR environment

ARPin のデータを保存する

一部のプラットフォームでは、仮想コンテンツを特定の位置またはジオメトリにロックできるだけでなく、位置データをローカルまたはクラウドに保存することも可能です。位置データを保存することで、仮想コンテンツをアプリセッション間で一貫して表示できるようになります。また、一部の実装ではマルチユーザー エクスペリエンスも表示可能となります。

次の表は、どの AR プラットフォームが ARPin データをローカルまたは Microsoft Azure クラウド サービスに保存できるのかを示しています。

プラットフォーム

ARPin プラットフォームの実装

ARPin 持続性のあるプラットフォームの実装

ARPin のローカルストレージ機能のサポート

Azure Spatial Anchors のサポート

ARCore

アンカー

クラウドアンカー

なし

あり

ARKit

ARAnchor

ARGeoAnchor

なし

あり

HoloLens

空間アンカー

Azure Spatial Anchors

あり。次のプラグインのいずれかを使用します。

  • Windows Mixed Reality

  • Microsoft OpenXR

あり。次のプラグインのいずれかを使用します。

  • Azure Spatial Anchors for WMR

  • Microsoft OpenXR

Magic Leap

PersistentCoordinateFrame (PCF)

PersistentCoordinateFrame (PCF)

あり。Magic Leap ARPin 機能を使用します。

なし

ARPin をローカルに保存する

データを AR デバイスのローカルに保存すると、コンテンツをアプリのセッション間で保持できます。プロジェクトに ARPin 機能を追加する方法の詳細については、「

[ARPin クイックスタート](SharingAndReleasing/XRDevelopment/AR/ARPins/ArpinQuickStartGuide)
」を参照してください。

ARPin をクラウドに保存する

ARPin は、Azure Spatial Anchors、ARCore を使用した Cloud Anchors、および ARKit を使用した Geo Anchors を介してクラウドに保存できます。

Azure Spatial Anchors

クラウドにデータを保存すると、仮想コンテンツと実世界の位置を複数のデバイスとプラットフォーム間でいつでも共有できます。Azure Spatial Anchors はクラウド実装で、これは Microsoft Azure を使用して ARPin データを保存および取得するためのプラグインとして Unreal Engine に含まれています。 Azure Spatial Anchors は、次のような複数の AR プラットフォームでサポートされています。

  • Windows Mixed Reality (HoloLens)

  • ARCore をサポートする Android デバイス

*ARKit をサポートする iOS デバイス

Azure Spatial Anchors を使用するには、 Azure アカウントが必要です。

プロジェクトで Azure Spatial Anchors を使用するには、 Azure Spatial Anchors プラグインとプラットフォーム固有の Azure Spatial Anchors プラグインを有効にします。

Azure Spatial Anchors plugin

プロジェクトで Azure Spatial Anchors を使用する方法の詳細については、Unreal Engine における Microsoft の「 Azure Spatial Anchors に関するドキュメント 」を参照してください。

ARCore を使用した Cloud Anchors

ARCore がサポートしているデバイスでは Azure Spatial Anchors を使用できますが、それに加えて、クラウド上にある ARPin 向けの Google のプラットフォーム実装である Cloud Anchors は、 UGoogleARCoreServicesFunctionLibrary を介して Unreal Engine で公開されます。

API を使うには、次の手順を実行します。

  1. UGoogleARCoreServicesFunctionLibrary::CreateAndHostCloudARPin() を呼び出して、既存の ARPin からクラウド ARPin を作成します。

  2. クラウド ARPin が作成されたら、 UCloudARPin::GetCloudID() を呼び出して、そのクラウド ID (ピンに固有の uuid) にアクセスします。

  3. この際、いつでも、 UGoogleARCoreServicesFunctionLibrary::CreateAndResolveCloudARPin() を使用して以前に作成したクラウド ARPin を解決できます。解決すると、クラウド ARPin からピンのワールド トランスフォームが提供され、それが物理的な世界のどこでピンが作成されたのかを示します。

ARKit を使用した Geo Anchors

ARCore がサポートしているデバイスでは Azure Spatial Anchors を使用できますが、それに加えて、クラウド上にある ARPin 向けの Apple のプラットフォーム実装である ARGeoAnchor は、 UARTrackedGeometry のサブクラスとして Unreal Engine で公開されます。

API を使うには、次の手順を実行します。

  1. UARGeoTrackingSupport::GetGeoTrackingSupport() をクエリします。

  2. 可能な場合、返されたオブジェクトの関数を呼び出します。たとえば、新しい Geo Anchor を作成するには、関数 UARGeoTrackingSupport::AddGeoAnchorAtLocation() を使用します。

Unreal Engine のドキュメントを改善するために協力をお願いします!どのような改善を望んでいるかご意見をお聞かせください。
調査に参加する
キャンセル