Jetpack XR 用 ARCore は、さまざまな API を通じて現実世界を理解するための強力な認識機能をアプリに提供します。これらの API の一部は、XR ヘッドセットや有線 XR グラスなどのデバイスの没入型エクスペリエンスの強化に役立ち、AI グラスなどのデバイスの拡張エクスペリエンスの強化に役立ち、あらゆるタイプの Android XR デバイスのアプリ エクスペリエンスの強化に役立ちます。
たとえば、Jetpack XR 用 ARCore を使用して平面データを取得したり、空間内の固定位置にコンテンツを固定したり、地理空間ポーズを使用して現実世界の場所にコンテンツを固定したりできます。
ライブラリの依存関係を追加する
XR アプリで認識機能の使用を開始する前に、AR で強化するアプリ エクスペリエンスのタイプに応じて、必要な 依存関係を追加します。
セッションにアクセスする
Jetpack XR 用 ARCore の認識機能は、Session(Jetpack XR ランタイムを使用)に依存しています。
アプリがセッションにアクセスする方法は、認識機能で強化するアプリ エクスペリエンスのタイプによって異なります。
- アプリが 空間 UI を使用して Jetpack Compose for XR で没入型エクスペリエンスを強化している場合は、Jetpack Compose for XR からセッションにアクセスします。
- その他のすべての状況では、Jetpack XR ランタイムからセッションにアクセスできます。これについては、このページの次のセクションで説明します。
Jetpack XR ランタイムからセッションにアクセスする
Jetpack XR ランタイムからセッションにアクセスするには、セッションを作成します。
セッションを作成するには、Context を
create() メソッドに渡します。この Context は、没入型 XR デバイスまたはモバイル デバイスの Activity、または
投影されたコンテキストにすることができます。
ARCore セッションの作成はコストのかかるタスクになる可能性があるため、 次の例に示すようにバックグラウンドで処理する必要があります。
lifecycleScope.launch { when (val result = Session.create(context)) { is SessionCreateSuccess -> { val xrSession = result.session // ... } else -> TODO(/* A different unhandled exception was thrown. */) } }
セッションのアクティビティが破棄されると、そのセッションに関連付けられているすべての AR コンテンツが破棄され、セッションは無効になります。
セッションを構成する
一部の機能はデフォルトで無効になっている可能性があり、機能させるには構成する必要があります。セッションを構成するには、configure() を使用して、構成オプション を指定します。Sessionさまざまな AR 機能に必要な構成の詳細については、各 AR 機能の対応するページをご覧ください。
次のステップ
アプリにセッションが設定されたら、それを使用してさまざまな XR デバイスのアプリ エクスペリエンスを強化する方法を確認します。
- Jetpack XR 用 ARCore を使用して平面を検出する
- Jetpack XR 用 ARCore でアンカーを作成する
- Jetpack XR 用 ARCore を使用して手を操作する
- Jetpack XR 用 ARCore を使用してアプリに顔追跡を組み込む
- Jetpack XR 用 ARCore を使用してアプリで深度情報を取得する
- Jetpack XR 用 ARCore を使用してデバイスのポーズをトラッキングする