使用 OpenXR 开发

Android XR 通过支持 OpenXR 1.1 规范和选定的供应商扩展,支持使用 OpenXR 构建的应用。OpenXR 是一种开放标准,可让您使用一组通用的 API 在各种 XR 设备上创建沉浸式和交互式体验。

功能

Android XR 支持多种功能,可让您使用 OpenXR 构建充分利用 XR 设备独特功能的应用。这些功能包括:

可追踪对象
支持*平面检测*(即识别和追踪环境中平面区域的功能,从而能够在真实世界中放置虚拟对象)和*锚点*(即可附加到真实世界对象或位置的虚拟参考点,确保即使在用户移动时,虚拟内容也能保持准确的位置和方向)。
光线投射
一种用于确定虚拟光线与场景中对象之间交点的技术,有助于选择和操作虚拟元素等交互。
锚点持久性
在多个会话中保存和恢复锚点的能力,允许在环境中持久且一致地放置虚拟内容。
对象追踪
在真实世界中追踪鼠标、键盘和其他对象的能力。
深度纹理
生成深度图,提供相机与场景中对象之间距离的信息,从而实现更逼真的遮挡和交互效果。
透视
将真实世界相机画面与虚拟内容融合的能力,从而创建无缝结合物理世界和数字世界的混合现实体验。
合成层透视
允许使用多边形透视合成层裁剪,可用于将真实世界对象引入场景。
面部追踪
追踪用户面部特征的能力,从而创建更逼真和富有表现力的虚拟形象和虚拟角色。
眼动追踪
提供用户眼睛的位置和方向,旨在使虚拟形象的眼部姿态更加逼真。
手部追踪
追踪用户手部位置和移动的能力。
手部网格
提供用户手部的低多边形网格精确表示。针对平台到应用的交付进行了优化,确保您获得最佳性能。这是使用绑定姿势和混合权重的其他扩展的替代方案。
光照估计
用于光照模型,以匹配用户的真实世界光照条件。

支持的输入设备

Android XR 还支持以下输入设备。

手部交互
识别特定的手势,如捏合、滑动和指向,使用户能够通过手势和手部动作与虚拟对象进行交互。
眼球凝视交互
追踪用户眼球移动的能力,允许他们通过凝视选择和交互虚拟对象。
6 自由度运动控制器
追踪控制器位置和移动的能力,以及用于触发应用内操作或悬停事件的 Dpad 和按钮绑定。
鼠标交互
用户在 3D 空间中通过鼠标指针与对象交互的能力

支持的性能功能

Android XR 支持以下与性能相关的功能。

眼动追踪中心凹渲染
允许应用仅在眼睛的焦点处渲染更高分辨率的内容。
空间扭曲
使用速度向量和深度纹理信息生成中间帧,有效提高帧率,让您的用户沉浸在体验中。
性能指标
提供当前 XR 设备、合成器和 XR 应用的 Android XR 运行时性能指标。这包括 CPU 帧时间、GPU 帧时间、GPU 利用率、CPU 频率、每秒帧数以及更多

请参阅OpenXR 功能概览,了解受支持功能和扩展的完整列表。

支持的引擎

Unity

Android XR 的 Unity 支持基于 OpenXR 构建,允许开发者使用 Unity 6 创建体验。在Unity 概览中了解更多关于使用 Unity 构建 XR 应用的信息。


OpenXR™ 和 OpenXR 徽标是 The Khronos Group Inc. 拥有的商标,并在中国、欧盟、日本和英国注册为商标。