前段时间 Oculus 的 SDK 频繁更新,很多已有的教程都不再适用于现在的版本了。本系列文章的主要目的是记录现版本常见功能的实现方法,便于自己后续开发。当然,不排除我文章刚写完 SDK 又变了的可能性,所以如果有人发现文章的内容已经不适用于新版本了,也可以留评论或者私信我,我会持续更新文章内容。
当前适用版本:
- Unity 版本:2021.3.7f1c1
- Oculus Interaction SDK 版本:47.0
文章最近更新日期:2023.02.21
项目设置
关于如何安装 SDK 并且完成相机设置的步骤在前文中已有表述,如有需求可以翻看这篇文章
【Oculus Interaction SDK】(一)设置 VR 相机与控制器 & 实现简单的抓取功能 - 千叶Christa - 博客园 (cnblogs.com)
首先,我们需要到 Project Settings 中将色彩空间 Color Space 从默认的 Gamma 改为 Linear
将脚本后端 Scripting Backend 从默认的 Mono 改为 IL2CPP
将目标体系结构 Target Architectures 更改为 ARM64
移除天空盒
在导航栏找到 Window > Rendering > Lighting > Environment,移除天空盒
修改相机
找到场景中的相机 OVRCameraRig 为其添加 OVR Passthrough Layer 组件,将 Placement 选项修改为 Underlay
在 OVRCameraRig 的 OVR Manager 组件中打开 General 选项卡,勾选 Passthrough Capability
在组件的最后找到 Enable Passthrough 选项,勾选此选项
清除一下相机底色
添加测试物体
新建一个 Cube,为其添加交互组件,同时为控制器添加交互功能
关于控制器和物体设置,详情请看之前的文章,这里就不赘述了
【Oculus Interaction SDK】(一)设置 VR 相机与控制器 & 实现简单的抓取功能 - 千叶Christa - 博客园 (cnblogs.com)
进行测试
Oculus 应用软件在 49.0 版本的公测版中提供了通过 Oculus Link 透视的功能
不需要打包安装,现在可以直接通过 Oculus Link 看到透视效果啦,nice!
虽说可以在串流的时候直接看到透视效果,但是 Unity 的 Game 窗口并不会有任何透视画面(相机背景是纯黑色)
并且 Oculus Link 的透视效果也无法通过 SideQuest 串流显示在 PC 窗口上
为了录制测试效果,还是要把项目安装到头显上才可以 QAQ
在这里我直接通过 Unity 进行安装了,你也可以 Build 之后通过 ADB 进行安装
OK,来看看效果吧!
Quest 2 的环境透视效果_千叶Christa_哔哩哔哩_bilibili
参考资料
Meta Quest Passthrough Tutorial in Unity - PART 1 : Setup - YouTube