开源引擎Godot现已支持PICO 4和高通Spaces
(映维网Nweon 2024年10月05日)开源引擎Godot日前通过博文分享了XR方面的进展。其中,这个开发工具已经正式支持PICO 4和高通Spaces等。
改进的帧时序逻辑
当OpenXR最初在Godot 3中实现时,特定操作发生的顺序是有限制的。与OpenXR的大部分通信都绑定在渲染引擎中,导致Godot更多地依赖于预测算法来定位实体(如控制器)。
对于Godot 4.3,大部分逻辑进行了重做。Godot现在在开始处理新帧时正确地通知OpenXR,并获得被追踪实体的姿态数据以及当前帧的预测定位。
准备在单独的线程支持渲染
团队对XR代码进行了大量整理,以确保当渲染发生在单独的线程时它能正常运行。特别是对于XR应用程序,这使得更接近于确保稳定的帧率。
在Godot 4.4中尚有更多的工作需要完成,但基础已经到位。
AR和透视的标准化
不同的头显以不同的方式实现透视功能,这给瞄准多种设备的开发者带来了困难。
所以,团队标准化了AR和透视,采用了OpenXR环境混合模式并将特定平台的代码移动到OpenXR Vendors Plugin这种。
手、面部和身体追踪的标准化
Godot支持手部追踪已经有很长一段时间,但为了确保更好的跨平台支持,团队进一步了改进了相关方面,包括OpenXR和WebXR之间的标准化。OpenXRHand节点已弃用,取而代之的是新的XRHandModifier3D节点。这个节点旨在与任何XR系统一起工作,而不仅仅是OpenXR。
另外,增加了面部追踪支持。Godot现在支持Unified Expressions来处理面部追踪数据。
身体追踪支持已添加使用Godots人形骨架作为基础,允许各种身体追踪设备利用Godots重定向逻辑。
改进的WebXR支持
Godot对WebXR的支持正在不断改进,最值得关注的是增加了手部追踪支持,对MSAA的支持,以及一系列的Bug修复和改进。WebXR实现现在同样支持AR应用程序。
改进的OpenGL支持
尽管就技术而言不是特定于XR,但对兼容性渲染器的改进直接影响了使用Godot创建XR体验的能力。
兼容性渲染器中的新MSAA实现支持OpenGL扩展,特别是针对现代一体机的TBDR GPU。当可用时,启用MSAA 2x或4x的成本非常低,同时在视觉效果方面提供了有价值的改进。
兼容性渲染器的新光映射功能为改进XR一体机硬件的照明提供了可行的解决方案。
改进了Vulkan引擎的注视点渲染支持
兼容性渲染器直接使用OpenXR的注视点渲染支持,但这有各种限制,并且不适用于OpenXR之外。
在Vulkan渲染器中支持可变速率着色已有一段时间,这使得在Godot中应用注视点渲染没有同样的缺点。
在最新版本中,团队进行了各种改进,对所使用的密度图提供了更多的控制,并允许眼动追踪影响密度图,确保用户焦点处的质量渲染。
W4 Games与Meta之间的合作
去年,W4 Games和Meta联手改进了Godot对Quest系列设备的支持。
W4团队与多名核心Godot XR贡献者密切合作,共同改进Godot的核心功能,不仅为Meta Quest用户改善体验,同时为其他XR系统改善体验。前面提到的多个项目从中受益匪浅。
其他改进同时包括各种渲染优化和修复:
-
增强的透视和手部追踪支持:除了Godot中透视和手部追踪的标准化之外,对Meta提供的一系列额外功能支持在Godot Vendors Plugin中实现了。对于透视,这包括将各种过滤器应用于直通图像,如调整亮度,对比度和饱和度,将颜色映射到其他值,甚至将直通投影到自定义几何体。对于手部追踪,开发者现在可以访问手部网格,手部碰撞形状,并进行简单的手势追踪。
-
合成层支撑:复合层是OpenXR的一个标准特性,它允许开发者添加浮动“面板”(平面或曲面),以从Godot SubViewport渲染2D内容。与将相同的内容作为纹理应用于3D网格相比,这种方法的结果是2D内容的细节要清晰得多。使用这种技术时,小文本的可读性更强。W4 Games添加了核心实现和Meta特定扩展,允许应用进一步的锐化或超采样,advanced alpha blending或将特定的合成层标记为包含“安全内容”。
-
场景发现和空间锚:Meta的Scene Discovery允许Quest扫描你的环境,并为你的游戏提供有关现实世界的信息。这可以允许你在墙上、家具上放置对象,或者让NPC与真实环境互动。空间锚允许你将其持久化。
新的/改进的平台支持
-
PICO 4
-
HTC Focus 3和XR Elite
-
Logitech MX Ink
-
Logitech MX Ink