Android XR 通过 OpenXR 1.1 规范和一长串第三方供应商扩展程序来支持 OpenXR。在开发 XR 应用时,使用这些扩展程序可为您提供熟悉的体验。其中一些功能需要 Android 运行时权限。如果您希望直接基于 OpenXR API 进行构建,可以在 jetpack-xr-natives 代码库中找到所需的头文件。
Android XR 供应商扩展程序
扩展程序名称 |
说明 |
空间 API 版本 |
|---|---|---|
应用通过 |
||
使用 IK 根据头部和手部位置确定身体位置。 权限: |
||
适用于支持多种环境混合模式的设备。 |
||
此扩展程序可让应用请求头戴式设备周围真实环境的深度图,并在创建时查询支持的深度分辨率。 |
||
此扩展程序允许应用保持运行状态。 |
||
此扩展程序允许应用确定当前系统配置支持哪些扩展程序。 |
||
此扩展服务使应用能够获取用户眼睛的位置和方向,以及眼动追踪状态。 |
||
此扩展服务可让应用获取混合形状的权重,并在 XR 体验中呈现面部表情。 权限: |
||
此扩展程序可让应用从多个数据源获取面部追踪数据。 |
||
此扩展程序可实现手部追踪输入,以动态手部网格表示。 权限: |
||
此扩展程序允许应用请求表示头戴式耳机周围真实世界环境光照的数据。 |
||
此扩展程序基于基本的 |
||
此扩展程序提供了一个 |
||
透视摄像头可能需要一段时间才能启动,因此可能无法立即使用。 |
||
此扩展程序提供了一些 API,用于枚举和查询当前 XR 设备的各种性能指标计数器。 |
||
此扩展程序能让应用对环境中的可跟踪对象执行光线投射。 |
||
此扩展程序允许运行时在建议的分辨率发生变化时通知应用。 |
||
用户的默认环境可以:使用混合模式和输入模态的组合处于各种状态。 |
||
此扩展程序旨在提供大致表示用户环境中物理对象的网格。 |
||
相比之下,此扩展程序会创建一个由 |
||
此扩展程序为 |
||
此扩展程序基于 |
||
此扩展程序基于 XR_EXT_spatial_entity 构建,并为现有的空间功能提供光线投射功能。 |
||
此扩展程序允许应用创建锚点并将其附加到空间实体。 |
||
此扩展程序基于 |
||
此扩展程序能让你的应用访问物理环境中的可跟踪对象。 |
||
此扩展程序可实现对平面图像的跟踪,具体由一组输入参考图像指定。 |
||
此扩展程序可实现实体标记跟踪。 |
||
此扩展程序可实现实体对象跟踪。 |
||
此扩展程序可实现实体二维码跟踪和二维码数据解码。 |
||
此扩展程序允许应用创建 |
第三方扩展程序
扩展程序名称 |
说明 |
空间 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 交换链。 |
||
此扩展程序允许应用通过定义其他组件路径来建议绑定,从而将一个或多个数字操作绑定到触控板或拇指杆,就像绑定到 D-pad 一样。 |
||
此扩展程序定义了遵循 RFC 4122 的通用唯一标识符。 |
||
此扩展程序可实现经过深度测试的图层合成。 |
||
此扩展程序提供了一个 |
||
此扩展程序为所有用户手部互动配置文件定义了四种常用的动作姿势,包括手部追踪设备和运动控制器设备。 |
||
此扩展程序支持为应用提供每个视图的绘制遮罩。 |
||
眼动追踪凹凸透镜渲染技术可在用户目光的周边区域渲染较低的像素密度。 |
||
权限: |
||
此扩展程序为互动配置文件定义了一个新的“标准姿势标识符”,名为“palm_ext”。 |
||
Varjo 头戴式耳机在显示屏的中心区域提供极高的像素密度。 |
||
此扩展程序向 XrViewConfigurationType 添加了一个新的视图配置类型 - |
||
借助此扩展程序,基于 Vulkan 的应用可以在调用 xrCreateSwapchain 时,通过将 XrVulkanSwapchainCreateInfoMETA 结构链接到 XrSwapchainCreateInfo 来传递额外的 |
||
权限: |
||
此扩展程序未定义新的合成层类型。 |
||
|
||
此扩展程序允许应用请求在合成层上使用锐化或超采样等处理选项。 |
||
此扩展程序引入了 xrLocateSpacesKHR 函数。 |
||
核心 OpenXR 规范在 |
||
此扩展程序基于 |
||
此扩展程序可让应用在不同应用会话中发现和关联空间实体。 |
||
此扩展程序基于 |
||
此扩展程序基于 |
||
此扩展程序介绍了 OpenXR 中场景理解和空间推理的概念和基础。 |
||
在 XR 系统中,某些操作需要长时间运行,无法在正常的帧循环中合理完成。 |
||
XR 设备使用的色彩空间可能与开发中使用的许多显示器不同。 |
||
此扩展程序提供了一个标志,当应用于合成层时,该标志会反转层交换链图像中 alpha 值的解释。 |
||
此扩展服务提供支持,以根据应用提供的额外数据在应用上实现帧合成。 |
||
为可追踪对象提供 Qualcomm 图像跟踪操作。 |
||
为可追踪对象提供 Qualcomm 二维码跟踪操作。 |
||
此扩展程序引入了一个新事件,用于在系统检测到用户状态发生变化时进行通知。 |
||
此扩展程序可扩大结构体名称的最大大小,并提供一个新函数来访问这些新的扩展名称。 |
||
|
OpenXR™ 和 OpenXR 徽标是 The Khronos Group Inc. 拥有的商标,已在中国、欧盟、日本和英国注册为商标。