Googleは、黒人コミュニティの人種的平等を推進することに取り組んでいます。 方法をご覧ください。

iOS向けクラウドアンカーの概要

Cloud Anchorsを使用して、AndroidユーザーとiOSユーザーが共有できるマルチプレーヤーまたはコラボレーションARエクスペリエンスを作成します。

すべての人のためのAR体験を構築および拡張する

ARCore SDK for iOSはARKitとインターフェイスしてクラウドアンカー機能を提供し、同じ環境内のiOSデバイスとAndroidデバイス間でアンカーを共有できるようにします。

ARCore SDK for iOSのバージョン1.12以降、ARKit互換デバイスで動作するARKitアプリを構築できます。

クラウドアンカーとは何ですか?

アプリでは、クラウドアンカーを使用して、ユーザーが仮想オブジェクトをARシーンに追加できます。複数のユーザーが、共有物理空間のさまざまな位置からこれらのオブジェクトを同時に表示および操作できます。

クラウドアンカーはと行動が似ているアンカーと、アンカーのための基本的なガイドラインはまた、クラウドアンカーに適用されます。参照アンカーでの作業を基本的なガイドラインを確認します。

クラウドアンカーは、ARCoreクラウドアンカーサービスでホストされるという点でアンカーとは異なります。このホスティングにより、ユーザーは同じアプリでエクスペリエンスを共有できます。

クラウドアンカーはどのように機能しますか?

これらの共有経験を有効にするには、Arcoreのは、に接続しArcoreのクラウドアンカーサービスホスト決意アンカーに。これには、インターネット接続が機能している必要があります。

ホスティングと解決には、高レベルで次の手順が含まれます。

  1. ユーザーは、自分の環境にローカルアンカーを作成します。

  2. ホスティングの間に、Arcoreのは、そのアンカーの一意のIDを返しますArcoreのクラウドアンカーサービスへのアンカーのためのデータをアップロードします。

  3. アプリは一意のIDを他のユーザーに配布します。

  4. 解決時には、ユニークなIDを持つユーザーは、Arcoreのクラウドアンカーサービスを使用して同じアンカーを再作成することができます。

Cloud Anchorsで優れたユーザーエクスペリエンスを作成するには、ホスティングプロセスを詳細に理解して、ユーザーの成功に役立つアプリの設計に対応できるようにすることが重要です。

アンカーの確立とホスティング

アンカーを確立してホストするために、ARCoreはアンカー(関心の中心)を囲む空間の3Dフィーチャマップを使用します。この特徴マップを取得するには、デバイスのリアカメラはで、ホストコールの前に30秒で異なる視野角と位置からの関心の中心の周りの環境をマッピングする必要があります( hostCloudAnchor:error: )。

ARCore SDK 1.12.0以降、このホスト呼び出しにより、ARCoreは過去30秒間の選択したビジュアルデータをデバイスのカメラからARCore Cloud Anchorサービスにアップロードします。このサービスは、ビジュアルデータを処理して3Dフィーチャマップを構築し、CloudAnchorを返します。 ID。

3Dフィーチャマップを適切に作成することは、優れたユーザーエクスペリエンスにとって重要です。そうしないと、マッピングの品質が制限され、解決が困難になる可能性があります。マップの品質を向上させるために、ユーザーインターフェイスは、さまざまな表示角度と位置からローカルアンカーの周りにデバイスを移動することにより、関心のある中心の周りの環境をできるだけ多くマップするようにユーザーに明示的に指示することをお勧めします。

クラウドアンカーをホストするには:

  1. セッションがアンカーをホストしようとする前に安定させるためのトラッキング時間を与えるために開始した後、数秒待ってください

  2. 例えば、視覚的に区別可能な特徴を有するコーナ-ホストへのアンカー位置を選択する際に、互いから容易に区別される視覚的な特徴を有する領域を見つけることを試みます。

  3. ポイントの関心の中心に後部デバイスカメラ、それは、あなたがアンカーを配置するポイントを囲む領域です。

  4. おおよそデバイスと関心の中心との間の物理的距離を維持しながら、興味の中心に訓練されたカメラを維持しながら、最大30秒間、異なる視角及び位置から環境をマッピングするの周りにデバイスを動かします。デバイスのカメラを対象の中心でトレーニングしたまま空間を歩き回ると、対象領域の視覚的特徴をあらゆる角度からキャプチャできるようになり、解決がより堅牢になります。

  5. コールhostCloudAnchor:error:ホスティング要求を開始します。

  6. ARCoreは、ARCore Cloud Anchor APIを介して、ビジュアルデータ、デバイスポーズ、およびアンカーポーズをアップロードします。

  7. ARCore Cloud Anchorサービスは、スペースの3Dフィーチャマップを作成し、デバイスへのアンカーの一意のCloud AnchorIDを返します。

  8. 使用anchor.cloudState (エラー処理メッセージを含む)ホストされたアンカーの状態を確認します。

ARCore Cloud Anchorサービスは、スペースの3Dフィーチャマップを作成し、一意のCloud AnchorIDをデバイスに返します。

アンカーをホストする必要があります。

anchor.cloudStateあなたが(エラー処理メッセージを含む)ホストされたアンカーの状態を確認することができます。

以前にホストされていたアンカーを解決する

同じ環境内の他のユーザーがクラウドアンカーがホストされたエリアで彼らのデバイスのカメラを指したとき、解決要求( resolveCloudAnchorWithIdentifier:error: )定期的にすることを3次元特徴マップに対してシーンから視覚的特徴を比較することArcoreのクラウドアンカーサービスを引き起こしが作成されました。ARCoreはこれを使用して、クラウドアンカーに対するユーザーの位置と向きを正確に特定します。これが、ホスティングリクエストの30秒前に、関心のある中心の周りの環境をできるだけ多くマッピングすることが重要である理由です。

複数のクラウドアンカーの解決を順番に開始できます。最大20個のクラウドアンカーを同時に解決できます。

ホスティングデバイスと同じまたは異なるデバイスを使用して、次の手順に従ってホストされたアンカーを解決します。

  1. セッションがアンカーを解決しようとする前に安定させるためのトラッキング時間を与えるために開始した後、数秒待ってください

  2. ホストされたアンカーと同じ環境では、ことを確認して、関心の元の領域を走査

    • デバイスのカメラには、マップされた領域への明確な視線があります

    • デバイスカメラは、ホストされているアンカーから、最初にアンカーをホストしていたデバイスと同様の距離にあります。

  3. コールresolveCloudAnchorWithIdentifier:error:と使用anchor.cloudState定期的に解決要求の状態をチェックします。

    あなたの要求をキャンセルしたい場合は、呼び出しremoveAnchor

  4. ARCoreは継続的にARCoreCloud Anchor APIをポーリングし、ビジュアルデータをARCore CloudAnchorサービスに送信します。

  5. ARCore Cloud Anchorサービスは、シーンの視覚的特徴を作成された3D特徴マップと比較します。それが一致を検出すると、サービスは、クラウドアンカーのポーズを返します

クラウドアンカーは解決するはずです。

anchor.cloudStateあなたが(エラー処理メッセージを含む)ホストされたアンカーの状態を確認することができます。あなたはクラウドアンカー、通話が終わったらremoveAnchor

クラウドアンカーのプライバシー要件

ArcoreのSDKの1.12.0以降を使用するため、当社の更新プライバシー要件に準拠するためには、目立つクラウドアンカーの使用を開示しなければなりません。詳細については、を参照してくださいユーザーのプライバシー要件

データストレージとアクセス制限

クラウドアンカーには、次のデータストレージとアクセス制限があります。

  • ARCore 1.20以降では、クラウドアンカーはホストされてから365日間解決できます。 (それらがホストされた後、以前の1.20よりArcoreのバージョンでは、クラウドアンカーは、わずか24時間で解決することができます。)がすでに使用してホストされた後、あなたはアンカーの寿命を延長することができるクラウドアンカー管理APIを

  • アンカーをホストしているときにクラウドにアップロードされたビジュアルデータは、24時間以内に破棄されます。

  • アンカーは、サーバー上で3Dフィーチャマップに対して解決されます。

  • 以前にアップロードされたビジュアルデータがユーザーのデバイスに送信されることはありません。

優れたユーザーエクスペリエンスのためのベストプラクティス

次のベストプラクティスは、優れたCloudAnchorsユーザーエクスペリエンスの作成に役立ちます。

  • ホストコールを開始するには、前の30秒間のマッピングを使用して3Dフィーチャマップを作成することに注意してください。アプリのユーザーインターフェースがこれを考慮に入れていることを確認してください。

  • ユーザーが関心のある中心を移動しているときに、ユーザー(またはその両方)にとって楽しい、または役立つ可能性のあるアクションまたは機能を作成することを検討してください。これにより、適切な3D機能マップを作成するタスクも実行されます。

  • 特定の種類のサーフェスでクラウドアンカーをホストまたは解決することは避けてください。

    • 最良の結果を得るには、ユーザーは反射面や、空白の滑らかな白い壁などの視覚的特徴のない面を避ける必要があります。
  • 部屋の照明が十分であることを確認してください。

  • パスARFrameあなたによGARSessionあなたがホストまたは解決アンカーにしてみてくださいする前に。

非推奨ポリシー

ArcoreのSDK 1.12.0以降で構築されたアプリがで覆われているクラウドアンカーAPIの非推奨ポリシー

ArcoreのSDK 1.11.0以下で構築されたアプリが原因古いのSDKの使用にホストまたは解決クラウドアンカーにはできない、Arcoreのクラウドアンカーサービスを非推奨。

始めましょう

iOS用ARCoreSDKの使用を開始するには、以下を参照してください。