Jetpack XR SDK を使用して開発する

Jetpack XR SDK を使用すると、KotlinCompose などの最新のツールや、Java や ビューなどの前世代のツールを使用して、没入型の XR エクスペリエンスを構築できます。UI を空間化したり、3D モデルを読み込んでレンダリングしたり、現実世界をセマンティックに理解したりできます。

Android にモバイルアプリまたは大画面アプリをすでにお持ちの場合は、Jetpack XR SDK を使用して既存のレイアウトを空間化し、3D モデルと没入型環境でエクスペリエンスを強化することで、アプリを新しい次元に拡張できます。既存の Android アプリを空間化するための推奨事項については、品質に関するガイドラインをご覧ください。

Jetpack XR SDK は、次のライブラリで構成されています。これらを組み合わせることで、豊かで多様な空間化されたエクスペリエンスを構築するための包括的なツールキットが提供されます。また、これらは相互にシームレスに連携するように設計されています。

  • Jetpack Compose for XR: Android XR の空間機能を活用する空間 UI レイアウトを宣言型で構築します。
  • XR 向けマテリアル デザイン: XR に適応するマテリアル コンポーネントとレイアウトを使用して構築します。
  • Jetpack SceneCore: 3D コンテンツを使用して Android XR シーングラフを構築して操作します。
  • ARCore for Jetpack XR: 認識機能を使用してデジタル コンテンツを現実世界に組み込みます。

XR 向け Jetpack Compose

XR 向け Jetpack Compose を使用すると、既存の 2D アプリを XR に移植する場合でも、新しい XR アプリをゼロから作成する場合でも、などの使い慣れた Compose のコンセプトを使用して、XR で空間 UI レイアウトを作成できます。

このライブラリは、spatial panelsorbiters などのサブスペース コンポーザブルというコンポーザブルのタイプを提供します。これにより、既存の 2D Compose またはビューベースの UI を空間レイアウトに配置できます。

詳細なガイダンスについては、XR 向け Jetpack Compose で UI を開発するをご覧ください。

UI XR コンポーネントのオービター汎用例を開発する

Compose for XR では、Volume サブスペース コンポーザブルが導入されました。これにより、3D モデルなどの SceneCore エンティティを UI に対して配置できます。

既存の Android アプリを空間化する方法を学習するか、API リファレンスをご覧ください。

XR 向けマテリアル デザイン

マテリアル デザインには、XR に適応するコンポーネントとレイアウトが用意されています。たとえば、アダプティブ レイアウトでビルドしている場合、依存関係の最新のアルファ版に更新すると、シンプルな EnableXrComponentOverrides ラッパーでペインSpatial Panels に配置され、ナビゲーション レールOrbiter に配置されます。詳しくは、XR 向けマテリアル デザインの実装をご覧ください。

Jetpack SceneCore

Jetpack SceneCore ライブラリを使用すると、エンティティで定義された 3D コンテンツを、相互や環境に対して配置、配置できます。SceneCore を使用すると、次のことができます。

Jetpack SceneCore ライブラリは、ビューを使用して構築されたアプリの空間化もサポートしています。詳細については、ビューの操作に関するガイドをご覧ください。

詳しくは、API リファレンスをご覧ください。

Jetpack XR 向け ARCore

既存の ARCore ライブラリを基に開発された ARCore for Jetpack XR ライブラリは、デジタル コンテンツと現実世界を融合させる機能を提供します。このライブラリには、モーション トラッキング、永続アンカー、ヒットテスト、セマンティック ラベルリングによる平面の識別(床、壁、テーブルトップなど)が含まれています。このライブラリは、OpenXR を基盤とする認識スタックを利用することで、幅広いデバイスとの互換性を確保し、アプリケーションの将来の対応を容易にします。

詳しくは、Jetpack XR の ARCore を使用するをご覧ください。

デベロッパー プレビューに関する注意事項

このリリースはデベロッパー プレビュー版の一部であり、これらの API はまだ開発中です。既知の問題については、リリースノートをご覧ください。

このリストにない問題が発生した場合は、バグを報告するかフィードバックを送信してください