Android XR 通过 OpenXR 1.1 规范和众多第三方供应商扩展程序支持 OpenXR。使用这些扩展程序,您可以在开发 XR 应用时获得熟悉的体验。其中一些功能需要 Android 运行时权限。如果您希望直接基于 OpenXR API 进行构建,可以在 jetpack-xr-natives 代码库中找到所需的头文件。
Android XR 供应商扩展程序
扩展程序名称 |
说明 |
Spatial API 版本 |
|---|---|---|
应用通过 |
||
使用 IK 根据头部和手部位置确定身体位置。 权限: |
||
适用于支持多种环境混合模式的设备。 |
||
此扩展程序能让你的应用请求头显周围真实环境的深度图,并在创建时查询支持的深度分辨率。 |
||
此扩展程序允许应用持久保存。 |
||
此扩展程序可让应用确定当前系统配置支持哪些扩展程序。 |
||
此扩展程序使应用能够获取用户眼睛的位置和方向,以及眼动追踪状态。 |
||
此扩展程序使应用能够获取混合形状的权重,并在 XR 体验中渲染面部表情。 权限: |
||
此扩展程序使应用能够从多个数据源获取面部追踪数据。 |
||
此扩展程序为 Google 的 Geospatial API 提供地理空间跟踪功能。 |
||
此扩展程序提供地理空间锚点和表面锚点,这些锚点在空间中相对于地球定位在给定的纬度、经度和海拔高度。 |
||
此扩展程序允许应用设置和查询全局透视调光级别,并在调光级别发生变化时接收事件。 |
||
此扩展程序允许应用为 Google Cloud API 提供身份验证凭据,从而支持使用基于 Google Cloud 的扩展程序。 |
||
此扩展程序支持以动态手部网格表示的手部追踪输入。 权限: |
||
此扩展程序允许应用请求获取代表头戴设备周围真实环境光照的数据。 |
||
此扩展程序基于基本的 |
||
此扩展程序提供了一个用于获取鼠标输入的 |
||
透视摄像头可能需要一些时间才能启动,并且可能无法立即使用。 |
||
此扩展程序提供了 API,用于枚举和查询当前 XR 设备的各种性能指标计数器。 |
||
此扩展程序能让你的应用对环境中的可跟踪对象执行光线投射。 |
||
此扩展程序允许运行时在建议的分辨率发生变化时通知应用。 |
||
用户的默认环境可以:通过混合模式和输入模态的组合,呈现多种状态。 |
||
此扩展程序旨在提供大致代表用户环境中物理对象的网格。 |
||
相比之下,此扩展程序会创建由 |
||
此扩展程序为 |
||
此扩展基于 |
||
此扩展程序添加了空间边界的定义,使应用能够过滤发现的空间实体。 |
||
此扩展程序基于 XR_EXT_spatial_entity 构建,可为现有空间功能提供光线投射功能。 |
||
此扩展程序能让你的应用创建锚点并将其附着到空间实体上。 |
||
此扩展程序基于 |
||
此扩展程序能让你的应用访问物理环境中的可跟踪对象。 |
||
此扩展程序可跟踪由一组输入参考图片指定的平面图片。 |
||
此扩展程序可实现物理标记跟踪。 |
||
此扩展程序可实现物理对象跟踪。 |
||
此扩展程序可实现实体二维码跟踪和二维码数据解码。 |
||
此扩展程序能让你的应用创建 |
||
此扩展程序会公开运行时应用的羽化区域,以便应用在安全区域内布局界面元素。 |
第三方扩展程序
扩展程序名称 |
说明 |
Spatial API 版本 |
|---|---|---|
某些应用可能需要访问 XR 互动设备,而无需在显示屏上呈现任何图片内容。 |
||
此扩展程序添加了一个可选结构,该结构可包含在传递给 |
||
由于 OpenXR 接口的性质,开发者和应用可获得的错误信息非常少。 |
||
此扩展程序能让应用定位手部追踪输入的各个关节。 权限: |
||
此扩展定义了一个 API,供应用向运行时提供性能提示,以及供运行时向应用发送与性能相关的通知。 这样,双方就可以在所需的 CPU 和 GPU 性能、热可持续性以及整个会话期间一致的良好用户体验之间进行适当的折衷。 |
||
在支持动态调整显示刷新率的平台上。 |
||
此扩展程序能让你的应用修改和查询与交换链关联的特定可变状态。 |
||
XR 场景中的注视点渲染是一种渲染技术,可让图像中靠近焦点或眼睛中央凹的区域以高于外围区域的分辨率显示。 |
||
在 Facebook HMD 上,开发者可以创建由运行时生成的注视点渲染配置文件,以实现光学特性和性能。 |
||
Vulkan 图形 API 需要将图片应用于交换链,才能应用注视点渲染模式。 |
||
此扩展程序可为在应用中启用空间扭曲技术提供支持。 |
||
此扩展必须由支持应用使用 OpenGL ES API 进行渲染的运行时提供。 |
||
当应用在 Android 系统上创建 XrInstance 对象时。 |
||
XR 中的一项常见活动是查看图片流。 |
||
为了让 XR 体验舒适,应用必须快速且稳定地提供帧。 |
||
在合成期间,在将图层颜色转换为预乘 Alpha 表示法后,系统会将颜色比例和偏差应用于图层颜色。 |
||
此扩展程序添加了一个额外的层类型,可直接从立方体贴图进行采样。 |
||
此扩展程序添加了一种额外的图层类型,其中 XR 运行时必须将源自交换链的纹理映射到圆柱体部分的内部。您可以将其想象成曲面电视屏幕在观看者眼中的样子。 |
||
此扩展程序定义了一种额外的图层类型,允许应用在投影图层中提交深度图像和彩色图像。 |
||
此扩展程序添加了一个额外的图层类型,其中 XR 运行时必须将源自交换链的等距柱状投影编码图片映射到球体内部。 |
||
此扩展程序添加了一个额外的图层类型,其中 XR 运行时必须将源自交换链的等距柱状投影编码图片映射到球体内部。 此扩展程序使用不同的参数化,更符合 |
||
此扩展程序提供了两个函数,用于在 timespec 单调时间和 |
||
此扩展程序支持在 OpenXR 运行时中使用 Vulkan 图形 API。 |
||
此扩展程序支持在 OpenXR 运行时中使用 Vulkan 图形 API。 |
||
在某些平台上,必须先使用平台专用参数初始化加载器,然后才能进行加载。 |
||
在 Android 上,某些加载器实现需要应用在初始化时提供额外信息。 |
||
此扩展程序使应用能够指定应以某种方式创建交换链映像,以便将其用作输入附件。在撰写本文时,此位仅影响 Vulkan 交换链。 |
||
此扩展程序允许应用通过定义额外的组件路径来建议绑定,从而将一个或多个数字操作绑定到触控板或摇杆,就像它们是方向键一样。 |
||
此扩展程序定义了遵循 RFC 4122 的通用唯一标识符。 |
||
此扩展程序支持经过深度测试的图层合成。 |
||
此扩展程序提供了一个 |
||
此扩展程序为所有用户手部互动配置文件(包括手部追踪设备和动作控制器设备)定义了四种常用的动作姿势。 |
||
此扩展程序支持为应用提供按视图绘制的遮罩。 |
||
眼动追踪注视点渲染会在用户视线边缘渲染较低的像素密度。 |
||
权限: |
||
此扩展程序为交互配置文件定义了一个新的“标准姿势标识符”,名为“palm_ext”。 |
||
Varjo 头戴式设备在显示屏的中心区域提供极高的像素密度。 |
||
此扩展程序向 XrViewConfigurationType 添加了新的视图配置类型 |
||
借助此扩展程序,基于 Vulkan 的应用可以在调用 xrCreateSwapchain 时,通过将 XrVulkanSwapchainCreateInfoMETA 结构链接到 XrSwapchainCreateInfo 来传递额外的 |
||
权限: |
||
此扩展程序未定义新的合成层类型。 |
||
|
||
此扩展程序允许应用请求在合成层上使用锐化或超采样等处理选项。 |
||
此扩展程序引入了 xrLocateSpacesKHR 函数。 |
||
核心 OpenXR 规范在 |
||
此扩展程序基于 |
||
此扩展程序能让应用在不同会话之间发现和关联空间实体。 |
||
此扩展程序基于 |
||
此扩展程序基于 |
||
此扩展程序介绍了 OpenXR 中场景理解和空间推理的概念和基础。 |
||
在 XR 系统中,某些操作运行时间较长,无法在正常帧循环内合理完成。 |
||
XR 设备使用的色彩空间可能与开发中使用的许多显示器不同。 |
||
此扩展程序提供了一个标志,当应用于合成层时,该标志会反转层交换链图片中 Alpha 值的解释。 |
||
|
||
此扩展程序可根据应用提供的其他数据,在应用上启用帧合成。 |
||
为可跟踪对象提供 Qualcomm 图片跟踪操作。 |
||
为可跟踪对象提供 Qualcomm 二维码跟踪操作。 |
||
此扩展程序引入了一个新事件,用于在系统检测到用户状态发生变化时发出通知。 |
||
此扩展程序扩展了结构体名称的大小上限,并提供了一个新函数来访问这些新的扩展名称。 |
||
此扩展程序是对 |
||
此扩展程序描述了空间容器上下文中的“自渲染”。 |
||
此扩展程序定义了一个新的可显示实体类。 |
||
此扩展程序能让应用在不同会话间持久保存和取消持久保存空间实体。 |
||
此扩展程序基于 |
||
此扩展程序基于 |
||
此扩展程序为 |
||
|
||
此扩展程序未定义新的合成层类型。 |
OpenXR™ 和 OpenXR 徽标是 The Khronos Group Inc. 拥有的商标,并在中国、欧盟、日本和英国注册为商标。