Android XR 支援 OpenXR 1.1 規格和特定供應商擴充功能,因此支援使用 OpenXR 建構的應用程式。OpenXR 是一項開放標準,可讓您使用一組通用 API,在各種 XR 裝置上建立沉浸式互動體驗。
功能
Android XR 支援多項功能,可讓您使用 OpenXR 建構應用程式,充分發揮 XR 裝置的獨特功能。這些功能包括:
- 空間實體架構
- 統一的基礎,可理解場景並進行空間推理。允許應用程式探索、查詢及追蹤環境中的實體空間實體 (包括平面、3D 網格、定界框、圖片、標記和註解)、使用空間邊界篩選探索結果、查詢實體原型、建立附加至實體的空間錨點、執行空間實體和網格光線投射,以及在應用程式工作階段中保留空間實體。
- 空間容器
- 跨平台空間視窗 API (
XR_EXT_spatial_container和XR_EXT_spatial_container_self_rendering),可讓應用程式使用 OpenXR 交換鏈和組合層,建立及算繪可顯示的 3D 空間容器 (包括有界和沉浸式),讓使用者同時體驗多個空間容器。 - 地理空間和地理空間錨點
- 可讓應用程式使用 Google 的視覺定位服務 (VPS) 和 GPS 追蹤地球相對姿勢、向 Google Cloud 服務驗證,以及在特定經緯度和高度放置地理空間錨點和表面錨點。
- 可追蹤項目
- 支援平面偵測,也就是辨識及追蹤環境中平面的能力,可根據現實世界放置虛擬物件,以及錨點,也就是可附加至現實世界物件或位置的虛擬參考點,讓虛擬內容即使在使用者移動時,也能保持準確的位置和方向。
- 光線投射
- 這項技術用於判斷虛擬射線與場景中物件或世界網格的交點,有助於選取及操控虛擬元素等互動。
- 錨點持續性
- 可跨多個工作階段儲存及還原錨點,在環境中持續且一致地放置虛擬內容。
- 物件追蹤
- 追蹤現實世界中滑鼠、鍵盤和其他實體物件的能力。
- 圖片和標記追蹤
- 偵測及追蹤環境中平面參考圖像和實體標記 (例如 AprilTag 和 ArUco 標記) 的能力。
- QR code 追蹤
- 追蹤實體環境中的 QR code 並解碼資料。
- 深度紋理
- 生成深度圖,提供相機與場景中物體之間的距離資訊,實現更逼真的遮蔽和互動效果。
- 直通
- 可將真實世界的相機畫面與虛擬內容融合,打造混合實境體驗,完美結合實體和數位世界。
- 全域穿透調暗
- 允許應用程式設定及查詢全域透視調光等級,將虛擬內容與實體環境融合,並在調光等級變更時接收事件。
- 可視區域羽化
- 公開執行階段套用的羽化周邊區域,讓應用程式在不受周邊羽化影響的安全區域內,配置 UI 元素。
- 場景網格
- 可取得環境的 3D 網格,用於物理、遮蔽和其他世界感知互動。
- 組合圖層直通
- 允許使用多邊形穿透合成層剪裁,可用於將真實世界物件帶入場景。
- 臉部追蹤
- 可從視覺和音訊資料來源追蹤使用者的臉部特徵,建立更逼真、更具表現力的虛擬化身和虛擬角色。
- 眼動追蹤
- 提供使用者眼睛的位置和方向,讓虛擬化身的眼睛姿勢更逼真。
- 手勢追蹤
- 追蹤使用者手部位置和動作的能力。
- 手部網格
- 以低多邊形網格準確呈現使用者的手部。已針對平台到應用程式的推送作業進行最佳化,確保您能獲得最佳效能。這是其他使用繫結姿勢和混合權重的擴充功能的替代方案。
- 身軀追蹤
- 使用頭部和手部追蹤輸入內容,估算使用者的身體關節位置和比例。
- 光線估測
- 用於光照模型 (包括定向、環境、球諧和立方體光照),以符合使用者的實際光照條件。
支援的輸入裝置
Android XR 也支援下列輸入裝置。
- 手部互動
- 辨識特定手勢,例如捏合、滑動和指向,讓使用者能透過手勢和手部動作與虛擬物件互動。
- 視線互動
- 追蹤使用者的眼球運動,讓他們能用視線選取虛擬物件並與之互動。
- 6DoF 動態控制器
- 追蹤控制器位置和動作,以及方向鍵和按鈕繫結,用於觸發動作或應用程式內的懸停事件。
- 滑鼠互動
- 使用者可透過 3D 空間中的滑鼠游標與物件互動
支援的效能功能
Android XR 支援下列效能相關功能。
- 眼動追蹤中心凹
- 允許應用程式只在視線焦點處,顯示解析度較高的內容。
- Space warp
- 使用速度向量和深度紋理資訊產生補間影格,有效提高影格率,讓使用者沉浸在體驗中
- 影格合成
- 使用應用程式提供的動作向量和影格資料,合成中間影格,提升視覺流暢度和影格率。
- 效能指標
- 提供目前 XR 裝置、合成器和 XR 應用程式在執行階段的 Android XR 效能指標,包括 CPU 影格時間、GPU 影格時間、GPU 使用率、CPU 頻率、每秒影格數等。
如需支援功能和擴充功能的完整清單,請參閱「OpenXR 功能總覽」。
支援的引擎
下列引擎支援使用 Android XR 進行 OpenXR 開發。
Unity
Android XR 的 Unity 支援以 OpenXR 為基礎,可讓開發人員使用 Unity 6 打造體驗。如要進一步瞭解如何使用 Unity 建構 XR 應用程式,請參閱 Unity 總覽。
Unreal Engine
Unreal Engine 透過 OpenXR 標準支援 Android XR,讓您在 Unreal Engine 5 中使用標準工具和工作流程。如要進一步瞭解如何使用 Unreal Engine 建構 XR 應用程式,請參閱「Unreal Engine 總覽」。
Godot
Godot 透過 OpenXR 整合支援 Android XR,可讓您使用標準 Godot 工作流程,建構及匯出 Android XR 應用程式。如要進一步瞭解如何使用 Godot 建構 XR 應用程式,請參閱 Godot 總覽。
OpenXR™ 和 OpenXR 標誌是 Khronos Group Inc. 擁有的商標,並已在中國、歐盟、日本和英國註冊為商標。