演習 - Azure Spatial Anchors を統合する

完了

このモジュールでは、Azure Spatial Anchors の使用方法について学習します。 追跡オブジェクトの場所は、Azure Spatial Anchors として格納します。 アンカーに対してクエリを実行すると、場所を指す矢印が表示されます。

Azure Spatial Anchors の概要

Azure Spatial Anchors は Azure Cloud Services ファミリーに含まれており、アンカーの場所を保存するために使用します。 保存されたアンカーの場所は、クラウドからの "アンカー ID" に基づいて取得できます。HoloLens、iOS、Android デバイスなどのマルチプラットフォーム デバイスは、このアンカーの場所を共有してアクセスできます。

Azure Spatial Anchors の詳細をご確認ください。

Azure Spatial Anchors を準備する

開始する前に、Azure portal で Spatial Anchors リソースを作成する必要があります。 Spatial Anchors リソースを作成する方法について説明します。

シーンを準備する

このセクションでは、シーンを構成し、必要な変更を行う方法について学習します。

  1. [階層] ウィンドウで MRTK XR Rig > Camera Offset オブジェクトを選択し、[インスペクター] ウィンドウの [コンポーネントの追加] ボタンを使用して、AR Anchor Manager (スクリプト) を追加します

    Screenshot of Unity with AR AnchorManager script selected.

  2. [プロジェクト] ウィンドウで、[アセット] > [MRTK.Tutorials.AzureCloudServices] > [プレハブ] > [マネージャー] の順に移動します。

    Screenshot of Unity with AnchorManager prefab selected.

  3. [マネージャー] フォルダーで、プレハブ [Anchor Manager] をシーン階層にドラッグ アンド ドロップします。

  4. [階層] で [Anchor Manager] GameObject を選択します。[インスペクター] セクションには、[Spatial Anchor Manager] (スクリプト) が表示されます。 [Spatial Anchors アカウント ID] および [Spatial Anchors アカウント キー] フィールドを見つけて、前のレッスンで作成した資格情報を追加します。

    Screenshot of Unity with newly added AnchorManager prefab still selected.

  5. ここで、シーン階層で [Scene Controller](シーン コントローラー) オブジェクトを見つけて選択します。 シーン コントローラー インスペクターが表示されます。

    Screenshot of Unity with SceneController script component configured.

  6. シーン コントローラー コンポーネントの [アンカー マネージャー] フィールドは空です。 シーンの [階層] から アンカー マネージャーをそのフィールドにドラッグアンドドロップし、シーンを保存します。

アプリをビルドして HoloLens 2 にデプロイする

Note

HoloLens 2 のビルドとテストは必須ではありません。 HoloLens デバイスがない場合は、HoloLens 2 Emulator でテストできます。 デバイスは HoloLens.com で購入できます。

Azure Spatial Anchors は Unity では実行できません。そのため、Azure Spatial Anchors 機能をテストするには、プロジェクトをデバイスにデプロイする必要があります。

ヒント

Unity プロジェクトをビルドして HoloLens 2 に配置する方法を確認するには、このチュートリアルの、「アプリケーションのビルドとデプロイ」セクションの手順を参照してください。

HoloLens 2 でアプリを実行し、アプリ内の指示に従う

場所を格納するアンカーを作成する

このセクションでは、オブジェクトの場所を保存します。

  1. アプリケーションを実行し、メイン メニューの [オブジェクトの設定] を選択します。

  2. 保存するオブジェクトの [名前] を入力し、[オブジェクトの設定] を選択して続行します。 オブジェクトに関する詳細情報を追加するには、[画像] を選択し、オブジェクトについて説明します。

  3. 場所を保存するには、[場所の保存] を選択します

  4. 保存したい場所に移動して配置できるアンカー ポインターが表示されます。 その後、確認のポップアップが表示されます。 場所を確認して保存する場合は、[はい] を選択します。それ以外の場合は、[いいえ] を選択して別の場所を選択すると、場所を変更できます。

  5. [はい] を選択して場所を確認すると、場所とアンカー ID が Azure Cloud Storage に保存されます。 保存すると、オブジェクトの名前が指定されたオブジェクト タグがアンカーに表示されます。

アンカーの場所を検索するためのクエリ

  1. アンカーの場所を正常に保存したら、メイン メニューの [オブジェクトの検索] を選択してアンカーの場所を見つけることができます。

  2. [オブジェクトの検索] を選択した後、ポップアップ ウィンドウで検索するオブジェクトの名前を入力します。

  3. [オブジェクトの検索] を選択します。 オブジェクトが既に保存されており、データベースで見つかった場合は、オブジェクトのすべての詳細がオブジェクト カードに表示されます。

  4. [場所の表示] を選択してオブジェクトを見つけます。 システムにより、クラウド ストレージからオブジェクト アドレスに対してクエリが実行されます。

  5. 場所を正常に取得すると、矢印によりオブジェクトの場所が示されます。 オブジェクトの場所が見つかるまで矢印に従ってください。

  6. オブジェクトが見つかると、オブジェクト名が一番上に表示され、矢印マークが表示されなくなります。 オブジェクト タグを選択すると、オブジェクトの詳細が表示されます。