Jetpack XR SDK を使用すると、Kotlin や Compose などの最新のツールや、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 panels
や orbiters
などのサブスペース コンポーザブルというコンポーザブルのタイプを提供します。これにより、既存の 2D Compose またはビューベースの UI を空間レイアウトに配置できます。
詳細なガイダンスについては、XR 向け Jetpack Compose で UI を開発するをご覧ください。
Compose for XR では、Volume
サブスペース コンポーザブルが導入されました。これにより、3D モデルなどの SceneCore エンティティを UI に対して配置できます。
既存の Android アプリを空間化する方法を学習するか、API リファレンスをご覧ください。
XR 向けマテリアル デザイン
マテリアル デザインには、XR に適応するコンポーネントとレイアウトが用意されています。たとえば、アダプティブ レイアウトでビルドしている場合、依存関係の最新のアルファ版に更新すると、シンプルな EnableXrComponentOverrides
ラッパーでペインが Spatial Panels
に配置され、ナビゲーション レールが Orbiter
に配置されます。詳しくは、XR 向けマテリアル デザインの実装をご覧ください。
Jetpack SceneCore
Jetpack SceneCore ライブラリを使用すると、エンティティで定義された 3D コンテンツを、相互や環境に対して配置、配置できます。SceneCore を使用すると、次のことができます。
- 空間環境を設定する
PanelEntity
のインスタンスを作成する- 3D モデルを配置してアニメーション化する
- 空間オーディオのソースを指定する
- エンティティにコンポーネントを追加して、エンティティを移動、サイズ変更、現実世界に固定できるようにする
Jetpack SceneCore ライブラリは、ビューを使用して構築されたアプリの空間化もサポートしています。詳細については、ビューの操作に関するガイドをご覧ください。
詳しくは、API リファレンスをご覧ください。
Jetpack XR 向け ARCore
既存の ARCore ライブラリを基に開発された ARCore for Jetpack XR ライブラリは、デジタル コンテンツと現実世界を融合させる機能を提供します。このライブラリには、モーション トラッキング、永続アンカー、ヒットテスト、セマンティック ラベルリングによる平面の識別(床、壁、テーブルトップなど)が含まれています。このライブラリは、OpenXR
を基盤とする認識スタックを利用することで、幅広いデバイスとの互換性を確保し、アプリケーションの将来の対応を容易にします。
詳しくは、Jetpack XR の ARCore を使用するをご覧ください。
デベロッパー プレビューに関する注意事項
このリリースはデベロッパー プレビュー版の一部であり、これらの API はまだ開発中です。既知の問題については、リリースノートをご覧ください。
- Jetpack Compose for XR リリースノート
- Jetpack XR 向け ARCore リリースノート
- Jetpack SceneCore リリースノート
- Jetpack for SceneCore ランタイム リリースノート
このリストにない問題が発生した場合は、バグを報告するかフィードバックを送信してください。