• Unity VR 开发教程: Oculus 一体机开发 (一) 环境配置(基于 Oculus Integration v46)


    此教程相关的详细教案,文档,思维导图和工程文件会分享在 Spatial XR 社区。这是一个高质量 XR 开发者社区,博主目前在内担任 XR 开发的讲师。该社区提供专人答疑、完整进阶教程、从零到一项目孵化保姆服务(包含产品上架App lab)、投资|融资对接、工程文件下载等服务。

    社区链接:
    SpatialXR社区:完整课程、项目下载、项目孵化宣发、答疑、投融资、专属圈子

    在这里插入图片描述


    📕教程说明

    注:最新版的教程可以看这一篇Unity Meta Quest 一体机开发:前期准备和环境配置

    前期准备:开启 Quest 的开发者模式,允许 USB 连接,电脑安装 Oculus ADB Drivers (链接:https://developer.oculus.com/downloads/package/oculus-adb-drivers/
    这些基本是 Quest 买到手后会进行的操作,网上也有许多 Quest 新手使用教程,因此本教程就不对这些东西进行详细说明啦。

    电脑操作系统:Windows

    使用的 VR 设备:Meta Quest 2

    使用的 Unity 版本:2021.3.5 LTS (这里推荐使用 2021 及以上的 LTS 版本)

    Oculus Integration 版本:v46

    官方文档:https://developer.oculus.com/documentation/unity/

    注:本篇教程可能具有时效性,因为 Oculus 的 SDK 更新迭代得比较快,如果大家使用的 SDK 版本比我的新,在不方便查看官方文档的情况下也可以先试试本篇教程的配置步骤,如果发现教程过时,欢迎大家进行反馈,我也会及时进行更改说明,一切以官方文档为主。


    📕安装 Unity 时需要添加的模块

    第一次安装 Unity 编辑器时会有添加模块的过程。如果你已经安装了 Unity 编辑器,可以到 Unity Hub 的安装里找到对应版本的编辑器,然后添加模块,如下图所示:

    在这里插入图片描述

    安装安卓相关的模块,因为 Quest 一体机的系统是安卓,相当于我们要开发安卓应用。

    在这里插入图片描述


    📕设置 Unity 的 Build Settings

    进入 Unity 编辑器后,点击菜单栏的 File -> Build Settings
    将 Platform 切换到 Android(点 Android 的 Switch Platform),然后进行如下操作:

    • 将 Texture Compression 设为 ASTC
    • Run Device 切换成 Quest 设备(要先保证头显和电脑进行了连接)。

    在这里插入图片描述


    📕XR Plug-in Management 设置

    找到 Project Settings 中的 XR Plug-in Management,先点 Install

    然后在安卓图标的界面下勾选 Oculus,导入 Oculus XR Plugin

    在这里插入图片描述

    然后在电脑图标的界面下也勾选 Oculus,这样我们能通过头显和电脑串流的方式,在 Unity 的 Play Mode 下进行调试,这是为了在开发程序的时候能直接点击 Unity 的运行按钮来查看游戏场景,省去将程序打包成安卓 APK 再导入一体机运行的时间。

    在这里插入图片描述

    这里需要注意一下,XR Plug-in Management 的 Open XR 是 Unity 自己的 Open XR Plugin,之后导入 Oculus Integration 时选择的 Open XR 是 Oculus 的 OpenXR Backend,二者不是同一个东西

    下图是 Oculus XR Plugin 的运行原理:

    在这里插入图片描述
    (后来经测试,电脑端选用 Unity OpenXR 插件而不选用 Oculus 也是能够正常运行的,暂时还没遇到什么问题)

    接下来,我们点击 XR Plug-in Management 下的 Oculus,这里的设置可以根据需求改,我一般习惯把 Render Mode 改为 Multi Pass。Multi Pass 会将场景渲染两次,分别显示在两只眼睛中,这种渲染方式虽然性能会差一点,但是具有高兼容性。

    在这里插入图片描述

    电脑端:

    在这里插入图片描述

    📕导入 Oculus Integration

    打开 Unity Asset Store 的网址(搜索引擎可以搜到),搜索 Oculus Integration (我写这篇文章的时候 Integration 的版本为 46.0),然后添加这个资源

    在这里插入图片描述
    接下来打开 Unity 菜单栏的 Window -> Package Manager,在 My Assets 中找到 Oculus Integration,然后将它导入:

    在这里插入图片描述

    在这里插入图片描述


    注:如果导入后 Console 出现了这个报错 (我使用 Oculus Integration v49 时遇到的问题)

    在这里插入图片描述

    我们直接点击第二行的报错,这时候会自动跳转到出错的脚本。然后我们如下图所示在脚本里引入 UnityEngine 命名空间,这样会不会报错了。

    在这里插入图片描述


    接下来会跳出几个界面:
    选择 Yes

    在这里插入图片描述

    选择 Use OpenXR

    在这里插入图片描述

    选择 Restart

    在这里插入图片描述

    选择 Show Assets

    在这里插入图片描述

    选择 Clean Up Package:

    在这里插入图片描述

    选择 Upgrade

    在这里插入图片描述

    选择 Restart

    在这里插入图片描述

    这时候,就成功导入了 Oculus Integration

    官方文档中的步骤总结:

    在这里插入图片描述


    📕手动设置

    🔥设置 Project Settings

    官方文档部分:
    https://developer.oculus.com/documentation/unity/unity-conf-settings/
    打开编辑器菜单栏的 Edit -> Project Settings -> Player

    ⭐通用设置

    根据自己的需求设置公司名,项目名,版本号:

    在这里插入图片描述

    然后打开 Player -> Other Settings

    ⭐Rendering 设置

    找到 Rendering,进行如下操作:

    • 将 Color Space 设为 Linear
    • 取消勾选 Auto Graphics API,用拖动的方式将 OpenGLES3 置顶
    • 勾选 Multithreaded Rendering
      在这里插入图片描述

    ⭐Identification 设置

    找到 Identification,设置 Minimum API Level 为 29

    在这里插入图片描述

    ⭐Configuration 设置

    如图进行设置:

    在这里插入图片描述

    ⭐Quality 设置

    找到 Quality,先 Add Quality Level,将 Name 改成 Quest(名字可以随便取)

    然后确保选中的是新添加的 Quality Level,按照如图所示进行设置:

    在这里插入图片描述

    到这里,Oculus 开发的基础环境配置就结束了。


    📕一键快速设置

    新版本的 Ouclus Integration 已经支持一键快速配置环境了。打开 Unity 编辑器菜单栏的 Edit -> Project Settings -> Oculus,如下图所示:

    在这里插入图片描述

    可以看到有一堆红色和橙色的感叹号,我们点击页面上的 Fix AllApply All,Unity 就会自动帮我们修改环境的配置。最后,我们需要确认修改之后安卓端和 PC 端页面上全是绿色的符号就可以了:

    在这里插入图片描述

    在这里插入图片描述

    值得一提的是,一键快速设置后有些地方会和之前的手动设置不大一样,但是经过测试,还是能正常运行的。“手动设置”的部分是参考 Meta 官方文档的要求一步步设置的,后续大家可以根据自己的需求进行微调,不过这里建议把 Quality 设置的部分改成和手动设置一样的情况


    📕开启手势追踪

    找到 Oculus 文件夹的 Oculus Project Config 文件。

    在这里插入图片描述

    然后打开 Inspector 面板,将 Hand Tracking Support 设为 Controllers And Hands

    在这里插入图片描述

    Hand Tracking Version 建议设为 V2,因为 Meta 的手势追踪 2.0 版本拥有更好的效果。


    📕测试打包

    现在我们可以随便打开一个 Oculus 的样例场景,我选择了这个:

    在这里插入图片描述

    这时候我们可以先在头显和电脑串流的情况下运行这个场景,如果能成功运行,就说明之前的配置是没问题的。

    接下来我们测试打包到一体机运行,我们打开编辑器菜单栏的 File -> Build Settings

    先 Add Open Scenes,再点击 Build And Run,设置好 APK 在电脑中的保存路径后,耐心等待。

    在这里插入图片描述

    打包完毕后,带上头显,这时候程序就是以一体机软件的形式运行了,如果运行成功,说明之前的配置没有问题~

  • 相关阅读:
    如何在32位MCU用printf()函数打印64位数据
    2023年中国互联网本地生活服务行业发展历程及趋势分析:国内市场仍有增长潜力[图]
    IT面试真题详解SQL(领取SQL详解一份)
    使用js 完成chrome web 自动化或者爬虫模版例子
    Oracle中 insert all 语句用法详解
    基于Python班级管理系统毕业设计-附源码171809
    [FFmpeg] 常用ffmpeg命令
    计算机毕业设计JAVA高校商铺管理系统mybatis+源码+调试部署+系统+数据库+lw
    1. Collection,List, Map, Queue
    Shannon理论
  • 原文地址:https://blog.csdn.net/qq_46044366/article/details/128024981