MetaQuest开发入门3_MRUK

Mixed Reality Utility Kit

Meta的MR模块

  • 官方文档
  • 透视 Passthrough
  • Depth API(目前Quest3特有)基于深度的前后遮挡,例如手部抠像
  • 空间锚点Spatial Anchor
    • 将虚拟物体固定在现实中的某个位置。
    • 分享给其他用户,实现多人MR体验。比如两个人在同个房间打MR乒乓球,需要保证他们看到的虚拟球桌在同个位置。
  • 场景理解 Scene Understanding(前提是要扫描房间)
    • 场景/房间模型:根据扫描的结果重建出一个与现实房间相匹配的虚拟房间,能够获取房间的整体布局和轮廓大小,以及房间内标记过的各个物体的位置和范围。用2D平面和3D立方体表示房间内的不同物体。能用标签来识别房间内的某一个物体具体是哪一种类型的物体(如墙壁,桌子,天花板等)
    • 场景锚点:房间模型中每一个标记的物体,例如房间模型中的地板、天花板、墙壁等物体都可以算作场景锚点。和空间锚点不同的是,场景锚点在Quest系统进行空间设置的时候被创建出来,由系统进行管理;而空间锚点是被应用本身创建,由用户进行管理。
    • 场景网格:目前Quest3特有功能,扫描房间时为物体覆盖上场景网格,相比于房间模型里的2D平面和3D立方体能更精确的表示现实物体的形状。常见的用法是给场景网格加上碰撞体,实现虚拟物体和现实物体的碰撞。场景网格也是房间模型中的一个特殊的场景锚点。

MRUK 就是将场景理解的功能封装成了更高层的API,提供更加丰富的 MR功能,方便开发者使用。

MRUK实现的些功能

Scene queries

  • 获取房间模型内每一个物体的位置

  • 不依赖于Unity物理系统的射线检测

  • 在平面上找到一个合适的位置来生成物体

  • 检测某个位置是否在房间内

  • 得到房间和房间内物体的边界盒

开发工具

  • SceneDebugger 空间数据调试工具(Assets > Samples >Meta MR Utility Kit > Basic > SceneDebugger)

  • 提供不同构造的房间模型,不连接真实的设备也能够进行调试

image-20250117195108212

测试:

  1. File > Build setting:

image-20250117195911838

image-20250117200006554

Licensed under CC BY-NC-SA 4.0
comments powered by Disqus