Unity Meta Quest 一体机开发(四):Oculus Integration/Meta XR SDK 中 Eye Level,Floor Level,Stage 的区别

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

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

在这里插入图片描述


这篇教程将会介绍 Meta XR SDK(旧版叫做 Oculus Integration)中 OVRManager 的 Eye Level,Floor Level,Stage 的区别。

在这里插入图片描述
Oculus Integration 开发包中有个 OVRManager 脚本被挂载到 OVRCameraRig 物体上。OVR Manager 中有个 Tracking Origin Type 参数,它相当于追踪的参考系,参数分为 Eye Level, Floor Level 和 Stage。
VR 设备会对头显进行追踪,于是现实中头显的位置和旋转数据会被传输给 Unity,让 Unity 中的眼部相机匹配上现实中玩家头显的位置和朝向。而头显的位置和旋转数据是个三维坐标,那么它们的值一定是相对于某个参考系的,只有确立坐标系的原点后,才能给出三维坐标的值。 这时候 Tracking Origin Type 参数就派上了用场。Oculus 官方文档对三种 Type 的定义是这样的:(https://developer.oculus.com/documentation/unity/unity-add-camera-rig/

  • Eye Level tracks the position and orientation relative to the device’s position.
  • Floor Level tracks the position and orientation relative to the floor, whose height is decided through guardian setup.
  • Stage also tracks the position and orientation relative to the floor. On Quest, the Stage tracking origin will not directly respond to user recentering.

如果直观的看,Tracking Origin Type 也相当于设置 VR 世界中头部的初始高度。

选择 Floor Level,会以安全区的地面(打开 VR 设备一般都会先设置地面高度,然后划安全区)作为参考系,运行程序后头部高度会以地面作为参考点,高度相当于摆放在场景中的玩家物体的高度加上现实中玩家头显到安全区地面的距离。

选择 Eye Level,会以头显设备本身作为参考系,头部高度相当于摆放在场景中的玩家物体的高度加上头显相对于设备自身坐标系的高度(每次设备定位成功后会建立设备自身的坐标系,以现实世界中头显的位置作为原点),不会额外加上现实中头显到地面的高度。

选择 Stage,和 Floor Level 一样也是以地面作为参考系,但是不会受头显的重定位影响。重定位是什么意思呢?以 Quest 举例,长按右手柄的 Oculus 键或者重新划安全区会对用户的位置和朝向重新定位,根据用户当前的位置和朝向重新定位原点的位置。假设刚进入一个游戏,我们在现实中的位置相当于虚拟世界中的初始位置,位于(0,0,0)原点,然后一开始有个方块处于我们的正前方。这时候我们在现实中转过 90°,然后往前走一步,再进行重定位。如果选择的是 Floor Level,方块就会被重新定位在我们的正前方,和一开始的位置是不一样的;如果选择的是 Stage,重定位是不起作用的,方块还会位于原来的位置。

大家可以通过下面的图感受它们的区别,也建议自己打包出来运行一下。
(注:只有打包出来,在一体机中运行,才能看到 Stage 不受重定位的影响,在串流的时候是看不出来的)

相机的初始高度

Eye Level:

在这里插入图片描述

Floor Level / Stage:

在这里插入图片描述

Floor Level 和 Stage 的区别

Floor Level:

在这里插入图片描述

Stage:

在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

YY-nb

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

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

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

打赏作者

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

抵扣说明:

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

余额充值