Unity VR在编辑器下开启Quest3透视(PassThrough)功能

现在有个需求是PC端串流在某些特定时候需要开启透视。我研究了两天发现一些坑,记录一下方便查阅,也给没踩坑的朋友一些思路方案。

先说结论,如果要打PC端或者在Unity编辑器中开启,那么OpenXR当前是不行的可能还需要一个长期的过程,必须需要切换到Oculus。当然Unity官方指出使用ARFoundation的混合现实可以做到,具体参考这里

因为当前项目是OpenXR框架的,所以想在改动比较小的情况下进行。所以直接切换XR Plug-in Management到Oculus就好了。

准备工作

可以参考官网

Meta Quest 版本需要 v37.0 或更高版本
首先下载Meta XR All-in-One SDK
其实只需要安装Meta XR Core SDK一个就够透视了。

首先目前SDK的版本是 com.meta.xr.sdk.core-64.0.0 ,只用装这一个就可以了。
我就是直接下载了core的zip包,并配置了manifest.json

"com.meta.xr.sdk.core": "file:local/com.meta.xr.sdk.core-64.0.0",

另外您必须在 Oculus PC 应用程序(现在叫Meta Quest Link,就是Meta大厅)中单击“设置” > “测试版” ,启用“开发者运行时功能”和“Passthrough over Meta Quest Link”。如下图:
在这里插入图片描述
当然要开启透视,必须通过有线或者Air串流MetaQuestLink软件。

Unity中的设置

在这里插入图片描述
切换到Oculus,并解决掉所有警告和报错,如果你装有OpenXR,他会提示你需要从包管理器中remove掉openxr。

没有出现小叹号说明准备工作做好了。

开始配置

首先需要两个脚本,OVRManager和OVRPassthroughLayer,也只需要这两个。
在这里插入图片描述
OVRManager里的General里需要把PassthroughSupport改为Required
然后Insight Passthrough勾选,只有这两个地方需要变动。
这样在初始化的时候就初始化Passthrough功能了。

在这里插入图片描述
Layer中我需要透视相机完全覆盖场景,所以选择了Overlay,如果你需要把3D物品显示到上层需要改为Underlay。建议先改到Overlay,调试成功后再进行开发。这样不用去管相机设置。
因为在设置成Underlay的时候,因为游戏里的天空盒子等会遮挡透视层可能会影响你的判断,你可以需要自行设置相机,例如下面的代码:

passthroughLayer.enabled = true;

      // Set camera background to transparent
      OVRCameraRig ovrCameraRig = GameObject.Find("OVRCameraRig").GetComponent<OVRCameraRig>(</
  • 21
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值