OpenXR で開発する

対象の XR デバイス
このガイダンスは、このようなタイプの XR デバイス向けのエクスペリエンスを構築する際に役立ちます。
XR ヘッドセット
有線 XR グラス

 

OpenXR のテキストロゴ

Android XR は、OpenXR 1.1 仕様とベンダー拡張機能の選択のサポートを通じて、OpenXR で構築されたアプリをサポートします。OpenXR は、さまざまな XR デバイスで共通の API セットを使用して没入型でインタラクティブなエクスペリエンスを作成できるオープン スタンダードです。

機能

Android XR は、OpenXR を使用して XR デバイスの独自の機能を最大限に活用するアプリを構築できる機能をサポートしています。主な機能は次のとおりです。

Trackables
平面検出をサポートしています。これは、環境内の平面を特定して追跡し、現実世界と関連付けて仮想オブジェクトを配置できるようにする機能です。また、アンカーもサポートしています。これは、現実世界のオブジェクトや場所に付加できる仮想参照点です。これにより、ユーザーが移動しても、仮想コンテンツの正確な位置と向きが維持されます。
レイキャスト
仮想レイとシーン内のオブジェクトの交点を特定するために使用される手法。仮想要素の選択や操作などのインタラクションを容易にします。
アンカーの永続性
複数のセッションでアンカーを保存して復元する機能。これにより、環境内で仮想コンテンツを永続的かつ一貫して配置できます。
オブジェクト トラッキング
現実世界のマウス、キーボード、その他のオブジェクトを追跡する機能。
QR コードのトラッキング
物理環境で QR コードを追跡し、そのデータをデコードする機能。
深度テクスチャ
カメラとシーン内のオブジェクト間の距離に関する情報を提供するデプスマップの生成。よりリアルなオクルージョンとインタラクション効果を実現します。
パススルー
現実世界のカメラ映像と仮想コンテンツをブレンドし、現実世界とデジタル世界をシームレスに組み合わせた複合現実体験を生み出す機能。
シーン メッシュ
環境の 3D メッシュを取得する機能。物理演算、オクルージョン、その他の世界認識インタラクションに使用できます。
コンポジション レイヤのパススルー
ポリゴンのパススルー合成レイヤの切り抜きを可能にします。現実世界のオブジェクトをシーンに組み込むために使用できます。
顔追跡
ユーザーの顔の特徴を追跡する機能。よりリアルで表現力豊かなアバターやバーチャル キャラクターを作成できます。
アイ トラッキング
ユーザーの目の位置と向きを提供します。アバターの目のポーズをよりリアルにするために設計されています。
ハンド トラッキング
ユーザーの手の位置と動きを追跡する機能。
手のメッシュ
ユーザーの手をローポリ メッシュとして正確に表現します。プラットフォームからアプリケーションへの配信に最適化されており、可能な限り最高のパフォーマンスを実現します。これは、バインド ポーズとブレンド ウェイトを使用する他の拡張機能の代替手段です。
光の推定
ユーザーの現実世界の照明条件に合わせて照明モデルを調整するために使用されます。

サポートされている入力デバイス

Android XR は、次の入力デバイスもサポートしています。

手の操作
ピンチ、スワイプ、ポイントなどの特定のハンド ジェスチャーを認識し、ユーザーがジェスチャーや手の動きで仮想オブジェクトを操作できるようにします。
視線操作
ユーザーの視線の動きを追跡し、視線で仮想オブジェクトを選択して操作できる機能。
6DoF モーション コントローラ
コントローラの位置と動きをトラッキングし、D-pad とボタンのバインディングを使用して、アプリ内のアクションやホバーイベントをトリガーする機能。
マウス操作
ユーザーが 3D 空間でマウス ポインタを使用してオブジェクトを操作できる

サポートされているパフォーマンス機能

Android XR は、パフォーマンス関連の次の機能をサポートしています。

アイトラッキングによるフォービエーション
アプリが目の焦点でのみ高解像度コンテンツをレンダリングできるようにします。
Space warp
速度ベクトルと深度テクスチャ情報を使用して、ユーザーがエクスペリエンスに没頭し続けるために必要なフレームレートを効果的に高めるトゥイーン フレームを生成します。
Performance metrics
現在の XR デバイス、コンポジター、XR アプリの実行時の Android XR パフォーマンス指標を提供します。これには、CPU フレーム時間、GPU フレーム時間、GPU 使用率、CPU 周波数、フレームレートなどが含まれます。

サポートされている機能と拡張機能の全一覧については、OpenXR 機能の概要をご覧ください。

サポートされているエンジン

Android XR での OpenXR 開発では、次のエンジンがサポートされています。

Unity

Android XR の Unity サポートは OpenXR 上に構築されており、デベロッパーは Unity 6 を使用してエクスペリエンスを作成できます。Unity を使用した XR アプリの作成について詳しくは、Unity の概要をご覧ください。


OpenXR™ および OpenXR のロゴは、Khronos Group Inc. が所有する商標であり、中国、欧州連合、日本、英国で商標として登録されています。