在混合现实(MR)技术领域,设备对物理环境的感知与建模能力是决定用户体验的关键因素之一。Lasertag开发团队在Meta Quest 3和Quest 3S设备上实现了一项重大技术创新—— 连续场景网格化。这一技术革新彻底省去了传统的房间设置流程,有效规避了由此衍生的一系列问题,为用户带来更加流畅、便捷的混合现实体验。
Quest 3和Quest 3S配备的先进传感器,能够对房间进行扫描,进而生成3D场景网格。这一3D场景网格为混合现实应用提供了基础支撑,使得虚拟对象能够与物理几何体进行自然交互,甚至允许用户对环境进行重新设计。然而,Meta当前采用的场景网格系统存在两大显著弊端。
首要问题在于,用户必须先进行环境扫描。扫描所需时间因房屋大小和形状而异,短则约20秒,长则需花费数分钟。在此过程中,用户不仅需要保持静止查看,有时甚至要在房间内来回走动,这种繁琐的操作流程极大地降低了用户使用混合现实应用的便捷性,远不及直接打开应用程序那般简单直接。
另一个不容忽视的问题是,场景网格扫描所生成的结果仅仅反映了扫描那一刻的环境状态。一旦完成扫描后,房间内的家具发生移动,或者有物品被添加、移除,这些变化都无法自动同步到混合现实场景中,除非用户手动进行扫描更新。举例来说,如果在扫描时有其他人与你一同处于房间内,他们的身形会被固定在场景网格之中,后续即便此人离开,混合现实场景中仍会保留其虚拟身形。
值得一提的是,Quest 3和Quest 3S还为应用程序提供了另一种获取物理环境3D结构信息的途径——深度 API。深度API通过比较头显前置两个追踪摄像头的视差,生成实时的第一人称深度帧。该技术的有效工作距离最远可达5米,在混合现实应用中,常被用于实现动态遮挡效果,通过深度帧数据,应用程序能够精准判断虚拟对象是否会被物理几何体遮挡。
Julian Triveri 开发的同地多人混合现实Quest 3游戏「Lasertag」便是深度API应用的典型案例。在这款游戏中,深度API不仅用于实现动态遮挡,其公开版本还借助该技术判断每一帧中激光是与真实几何体发生碰撞,还是击中对手。Triveri之所以没有采用Meta的场景网格,是因为他希望避免增加游戏设置过程中的繁琐步骤,同时突破网格内容固定的限制。
而「Lasertag」的测试版更是展现出了强大的技术潜力。在Beta版本中,Triveri利用深度帧数据,在GPU上逐步构建出能够代表物理环境的3D体积纹理。这一技术实现了即使无需任何初始设置,游戏也能模拟激光与未在当前视野内,但此前已扫描过的真实世界几何体的碰撞效果。在内部版本中,Triveri还借助Unity开源的移动立方体算法,将3D体积纹理转换为网格。
在早期的开发过程中,Triveri甚至尝试过联网高度图技术。在相关测试中,同一游戏会话中的每个头显都会将自身基于深度帧连续构建的高度图共享给其他头显,如此一来,每个头显都能获取所有扫描结果的汇总信息。不过,目前该功能尚未开放,且依赖于Triveri暂不打算推广的旧有底层技术,但这无疑是一次极具价值的探索,为未来多人混合现实系统的发展提供了新思路。
那么,为何Meta没有选择连续网格化技术,而是继续沿用现有的房间扫描系统呢?在Apple Vision Pro和PICO 4 Ultra等设备上,场景网格已实现了持续自动扫描与更新,无需用户进行特定的房间设置。这得益于它们配备的硬件级深度传感器,能够高效获取深度信息。反观 Quest 3和Quest 3S,其深度信息的获取依赖于计算成本较高的计算机视觉算法(Quest 3还借助了投射红外图案技术)。使用深度API会大量消耗CPU、GPU资源,同时显著缩短电池续航时间,这也是许多Quest混合现实应用至今未能实现动态遮挡功能的重要原因。而利用深度帧构建网格,所需的计算资源和能耗更是成倍增加。
从本质上讲,「Lasertag」通过牺牲一定的性能和电池续航能力,换来了无需设置即可持续感知场景的优势,这也正是Quest 3和3S官方场景网格系统未采用该技术的核心原因。今年1月,Meta曾表示计划让场景网格实现自动更新以反映环境变化,但从其表述来看,仍需进行初始设置作为基础。
目前,「Lasertag」在Meta Horizon平台上对Quest头显用户免费开放。正式商店版本使用实时深度帧处理激光碰撞,而预发布测试版则如前文所述,能够随着时间推移构建3D体积,为用户带来更为丰富和真实的混合现实游戏体验。