Unreal Engine 对 XR 开发的支持基于 OpenXR 标准,确保 Unreal 原生支持 Android XR 支持的 OpenXR 功能。
请按照本指南了解以下内容:
- Unreal Engine 对 Android XR 的支持
- Unreal Engine XR 基础知识
- 为 Android XR 开发和发布应用
- 适用于 Android XR 的 Unreal Engine 插件
- 获取支持
- 输入和互动
- 支持的扩展程序
Unreal Engine 对 Android XR 的支持
为 Android XR 构建 Unreal 应用时,您可以利用最新版 Unreal Engine 5 的空间计算功能。Unreal Engine 5 支持核心 OpenXR 规范,而 Android XR Extensions for Unreal 则支持 Android XR 和其他特定扩展程序,以帮助您快速入门。
Unreal Engine XR 基础知识
如果您是 Unreal 或 XR 开发新手,可以参阅 Unreal 的 XR 开发文档,了解基本概念和 工作流。以下是一些需要探索的关键领域:
- XR 框架:了解如何通过将VR Pawn附加相机组件(代表头戴设备)和手部 输入(代表手部)到共享场景根目录来构建。
- OpenXR 插件:Android XR 设备 支持的核心接口。
- XR 架构:Unreal 如何处理 技术堆栈和 XR 子系统。
- 项目设置:为空间
渲染配置
.uproject。 - 图形指南:利用注视点渲染、多视图和 可变速率着色 (VRS)。
- 性能和分析:用于优化 XR 应用的工具和技术。
- 最佳实践:用于打造 舒适沉浸式 XR 体验的设计和开发指南。
为 Android 开发和发布应用
Unreal Engine 提供了全面的文档,用于为 Android 开发、构建、 和发布应用。此文档涵盖了在引擎中管理 Android 权限、配置 Android 构建设置(通过“项目设置”>“平台”>“Android”)以及使用 Unreal Automation Tool (UAT)。
此外,请参阅有关为 packaging and distributing apps for Android XR 打包和分发应用的文档,了解适用于在 Google Play 商店中分发的空间应用的具体要求。确保您的应用还遵循沉浸式体验的 质量指南,以便在 Android XR 上提供一致且 舒适的用户体验。
适用于 Android XR 的 Unreal Engine 插件
有两个核心插件可支持为 Android XR 构建 Unreal 应用。这些插件通过“插件”菜单(“修改”>“插件”)进行管理。
Android XR OpenXR 插件
Android XR OpenXR 插件是向 Unreal 添加 Android XR 支持的主要引擎接口。它实现了空间跟踪、环境理解和感知所需的 OpenXR 扩展程序。如需了解如何添加和 配置此插件,请参阅 Unreal Engine OpenXR 文档。
Android XR Extensions for Unreal
Android XR Extensions for Unreal 补充了基本的 OpenXR 支持,包括其他功能,可帮助您构建沉浸式体验,例如高级手部网格数据和特定硬件优化。如需了解如何 导入和配置此软件包,请按照 Android XR Extensions 快速入门中的说明操作。
获取支持
如果您遇到问题,请参阅我们 支持页面上的 Unreal Engine 支持部分以获取帮助。
输入和互动
创建互动式空间体验需要将物理动作映射到数字动作。Unreal Engine 使用增强型输入系统与 OpenXR 相结合来处理运动控制器和手部追踪。通过设置输入操作和输入映射上下文,您可以创建灵活的互动(例如抓取、指向和界面导航),这些互动可以在不同的 Android XR 输入方法之间无缝运行。
如需获取有关构建这些机制的全面指南,请参阅 Unreal Engine 的 文档,了解如何打造互动式 XR 体验。
Android XR 支持 Unreal Engine 中的以下特定互动方法:
互动配置文件
您可以在“项目设置”的“OpenXR”部分中配置互动配置文件。这样,您的应用就可以在不同的控制器和跟踪方法之间保持一致的输入映射。
手部互动
手部互动通过 OpenXR 手部追踪扩展程序提供。您可以通过蓝图或 C++ 中的 XR 跟踪组件访问手部关节数据和姿势。
凝视互动
凝视数据可以作为标准输入姿势检索,让您可以驱动界面焦点或社交状态功能。这需要 android.permission.EYE_TRACKING_FINE 权限。
面部追踪
访问实时面部表情数据,以制作虚拟形象动画或驱动社交互动。这使用 XR_ANDROID_face_tracking
扩展程序。
支持的扩展程序
在 Unreal 中为 Android XR 进行开发时,支持以下 OpenXR 扩展程序:
| 功能或能力 | OpenXR 扩展程序字符串 | 提供者 |
|---|---|---|
设备锚点持久性 |
Android XR Extensions for Unreal |
|
光线投射 |
Android XR Extensions for Unreal |
|
可跟踪对象(平面/深度) |
Android XR Extensions for Unreal |
|
对象跟踪 |
Android XR Extensions for Unreal |
|
场景网格化 |
Android XR Extensions for Unreal |
|
面部追踪 |
Android XR Extensions for Unreal |
|
眼动跟踪 |
Android XR Extensions for Unreal |
|
直通相机状态 |
Android XR Extensions for Unreal |
|
直通网格层 |
Android XR Extensions for Unreal |
|
深度纹理 |
Android XR Extensions for Unreal |
|
光照估算 |
Android XR Extensions for Unreal |
|
性能指标 |
Android XR Extensions for Unreal |
|
推荐分辨率 |
Android XR Extensions for Unreal |
|
手部互动 |
Android XR Extensions for Unreal |
|
调试实用程序 |
Unreal Native OpenXR |
|
性能设置 |
Unreal Native OpenXR |
|
显示屏刷新频率 |
Unreal Native OpenXR |
|
手部追踪网格 |
Android XR Extensions for Unreal |
|
空间扭曲 |
Unreal Native OpenXR |
|
Equirect2 合成层 |
Unreal Native OpenXR |
|
Android 线程设置 |
Unreal Native OpenXR |
|
全局直通调暗 |
Android XR Extensions for Unreal(v1.0.0 稳定版) |
|
系统扩展属性 |
Android XR Extensions for Unreal(v1.0.0 稳定版) |
|
空间实体和标记跟踪 |
Android XR Extensions for Unreal(v1.0.0 稳定版) |
扩展程序由以下来源之一提供:
- Android XR Extensions for Unreal:这些是为 Android XR 平台开发的 Google 特定扩展程序
(
ANDROID)。如需利用这些空间 功能,您必须安装并启用 Android XR Extensions 插件在您的.uproject中。 - Unreal Native OpenXR:这些功能利用了 Khronos (
KHR)、扩展程序 (EXT) 和 Meta (FB) 标准扩展程序,这些扩展程序已直接集成到 Unreal Engine 的核心 OpenXR 插件中并由其维护。