【Unity XR】Unity开发OpenXR

介绍OpenXR相关依赖插件

OpenXR

OpenXR是一种免版税的开放标准,可提供对增强现实 (AR) 和虚拟现实 (VR)(统称为 XR)平台和设备的高性能访问。

OpenXR Plugin

OpenXR 是由 Khronos 开发的开放、免版税标准,旨在通过允许开发人员针对各种 AR/VR 设备来简化 AR/VR 开发。 使用此插件在 XR Plug-in Management 中启用 OpenXR。

XR Interaction Toolkit

XR Interaction Toolkit包是一个高级的、基于组件的交互系统,用于创建 VR 和 AR 体验。 它提供了一个框架,使 Unity 输入事件中的 3D 和 UI 交互可用。 该系统的核心是一组基本的 Interactor 和 Interactable 组件,以及将这两种类型的组件联系在一起的 Interaction Manager。 它还包含帮助组件,您可以使用这些组件来扩展绘制视觉效果和挂钩您自己的交互事件的功能。

XR Plugin Management

XR Plugin Management提供对 XR 插件的简单管理的软件包。管理 XR 插件的加载、初始化、设置和构建支持并提供帮助。Project Settings中 XR Plug-in Management 使用 XR 插件管理包来帮助简化 XR 插件生命周期管理,并可能通过 Unity 统一设置系统为用户提供构建时 UI。

安装OpenXR相关依赖插件

Package Manager

在编辑器中,您可以通过以下菜单访问 Package Manager window :Window > Package Manager.
通过 Package Manager window 菜单栏 Packages 下拉菜单选择 Unity Registry (显示 Unity 包注册表上的所有包)
搜索 XR 下载相关插件包
在这里插入图片描述
在安装XR Plugin Management后,会弹出提醒(使用新的输入系统包,并禁用旧的输入系统API,然后重启),直接选择YES

Unity VR 模板

创建项目时选择 VR 模板项目会自动为项目添加相关包如:XR Interaction Toolkit、XR Plugin Management 等
在这里插入图片描述

配置OpenXR相关依赖插件

XR Plug-in Management:
XRManagerSettings - 这是一个可用于管理 XRLoader 实例及其生命周期的 ScriptableObject。
XRLoader - 这是所有加载程序都应该派生的基类。 它提供了 XRManagerSettings 可用于管理生命周期的基本 API,以及可用于从 Loader 请求特定子系统的简单 API。
XRConfigurationData - 这是一个允许在统一设置窗口中托管构建和运行时设置的属性。 所有实例都显示在统一设置窗口中的顶级 XR 条目下,使用脚本中提供的名称作为属性的一部分。 管理包使用 EditorBuildSettings 配置对象 API(与属性中提供的密钥一起存储)来维护和管理构建设置的一个实例的生命周期。 您可以通过从 EditorBuildSettings 检索与所选键(在属性中设置)关联的实例来访问配置设置实例。
XRPackageInitializationBase - 从中派生的帮助类简化了包初始化。 帮助创建包的 XRLoader 的默认实例和安装包时的默认设置。 初始化只运行一次,你不应该依赖用户自己创建指定的实例。
XRBuildHelper - 抽象类可用于处理一些关于将设置从编辑器移动到运行时的样板。 如果您从此类派生并指定适当的设置类型,则系统将该类型的设置从 EditorUserBuildSettings 移动到 PlayerSettings,以便系统可以在运行时使用它们。
XRGeneralSettings - 包含适用于所有 XR 插件而不是任何单个提供程序的设置。
Samples folder - 包含 XR Plug-in Management 所有部分的实现。 您可以将此文件夹复制到您的项目或包中,以根据您的需要开始实施 XR Plug-in Management。

OpenXR Plugin:
添加 OpenXR Plugin 包时在 Assets 文件夹下生成 XR 文件夹
Open XR Loader No Pre Init - OpenXR 加载程序继承于 XRLoader
Open XR Loader - OpenXR 加载程序继承于 XRLoader
Open XR Package Settings -

XR Interaction Toolkit:
添加 XR Interaction Toolkit 包时在 Assets 文件夹下生成 XR 文件夹

会有个Debugger -XR Interaction Debugger
XR Interaction Debugger 窗口显示场景中所有输入设备、交互对象和交互器的自上而下视图。 它还显示了它们彼此之间的关系以及它们的父交互管理器。 要打开此窗口,请从 Unity 的主菜单转到 Window > Analysis > XR Interaction Debugger。

如果在导入 XR Interaction Toolkit 后导致com.unity.xr.openxr发生错误,可能是引用没生成,重启 Unity 就好。

Windows XR Plugin
提供对 Unity XR SDK 的实施和支持,从而允许集成和使用 Windows Mixed Reality 设备。

Oculus XR Plugin
为 Oculus 设备提供显示和输入支持。

Project Settings 下 XR Plug-in Management:
在目标平台,勾选OpenXR,

点击感叹号,提醒增加至少1个 Interaction Profile文件;

点击Edit,此时进入 OpenXR 相关的 feature 设置,选择 OculusTouch Controller profile

安装PicoXR SDK

下载PICO Unity Integration SDK

Unity XR SDK v2.x 系列是底层和接口重构后的长期维护版本,支持Neo3、PICO4全系列设备。开发 Neo3、PICO4游戏及应用,建议使用2.x 系列SDK。 旧版SDK,Unity XR Platform SDK (Legacy)以及PicoVR Unity SDK(Deprecated)已经下架,推荐使用UnityXR SDK。

官网下载地址 https://developer-cn.pico-interactive.com/sdk

当前最新版:PICO Unity Integration SDK v211

Package Manager 导入 SDK

在编辑器中,您可以通过以下菜单访问 Package Manager window :Window > Package Manager.
通过 Package Manager window 菜单栏 “+” 下拉菜单选择 Add package form disk(从本地加载package)
在这里插入图片描述
在打开的对话框中,选择SDK文件夹下的package.json文件后点击打开
在这里插入图片描述

搜索 XR 下载相关插件包

不想写了 跳转去看把
Unity关于Oculus Quest2 入门开发:(一)Unity配置Oculus Quest2开发环境
https://blog.csdn.net/weixin_43750989/article/details/114642711

Unity关于Oculus Quest2 入门开发:(三)基于XR Interaction Toolkit0.10.0开发交互功能之传送篇
https://blog.csdn.net/weixin_43750989/article/details/114671959

实战分享1:如何使用华为VR Glass 6dof 基于 OpenXR@ unity 开发VR游戏/应用
https://blog.csdn.net/weixin_46470246/article/details/123719141

【实战分享2】:如何基于OpenXR@ unity + 华为VR Glass 6dof & Quest 开发跨平台VR游戏/应用
https://blog.csdn.net/weixin_46470246/article/details/123752868

Unity开发OpenXR |(三)使用 OpenXR 添加一个运动系统,实现传送、抓取功能 的简单VR示例场景 的全过程详细教程
https://cloud.tencent.com/developer/article/1945445

  • 7
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Unity是一种非常强大的跨平台游戏开发引擎,而OpenXR是一种开放的、跨平台的虚拟现实(VR)与增强现实(AR)开发标准。Unity使用OpenXR进行开发的好处是多方面的。 首先,OpenXR能够提供与硬件设备的无缝集成。通过使用OpenXR开发人员可以轻松地将Unity游戏与各种VR和AR设备连接起来,而不必为每种设备编写不同的代码。这意味着可以节省大量的时间和精力,以及在不同平台上进行应用程序的重新调试和测试。 其次,利用OpenXR进行开发可以实现更高的性能和更好的用户体验。OpenXR使用异步计算和渲染的方式,能够更有效地利用硬件的计算资源,从而提供更流畅的帧率和更快的响应时间。这对于开发虚拟现实和增强现实应用程序来说非常重要,因为用户体验的顺畅性和真实感对于这些应用程序的成功至关重要。 最后,OpenXR还提供了丰富的功能和工具,可以帮助开发人员更轻松地实现虚拟现实和增强现实应用程序。例如,OpenXR提供了一套标准的交互接口,允许开发人员使用手势、触摸和语音等方式与应用程序进行交互。此外,OpenXR还支持空间音频、头部追踪和手部追踪等高级功能,可以增强用户的沉浸感和参与度。 综上所述,Unity使用OpenXR进行开发可以简化跨平台VR和AR应用程序的开发过程,提高性能和用户体验,并提供丰富的功能和工具。这使得开发人员能够更快速、更高效地开发出令人惊叹的虚拟现实和增强现实应用程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JIQIU.YANG

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值