上周,Oculus在GDC上宣布他们将在Oculus PC SDK的1.3版本中将名为“异步时间扭曲(Asynchronous Timewarp)”的VR渲染功能引入到Windows系统中。这个功能(简称ATW)可以在PC无法以足够的速度渲染帧时,消除产生不适的卡顿。Valve将ATW称为“理想的安全网”,但也建议避免过度依赖它。
异步时间扭曲是Oculus自Rift DK2以来实施的同步时间扭曲的改进版本。虽然同步时间扭曲在降低延迟方面是有效的,但它与帧与帧的渲染循环相关联。
ATW, 正如其名称所示,将时间扭曲从渲染循环中分离出来,这使得它在处理未能及时完成渲染的帧并发送到VR头显时更加灵活。Oculus在最近的一篇博文中详细解释了这一点:
在Oculus上,ATW始终运行,并提供对应用程序和多任务操作系统行为的不可预测的保险。ATW可以消除像汽车悬挂系统一样消除颠簸的渲染故障。借助ATW,我们根据帧固定的相对时间安排时间扭曲,因此我们提供了固定的、低的方向延迟,无论应用程序的性能如何。
这种一致性的低方向延迟允许应用程序通过支持CPU和GPU之间的完全并行来进行有效渲染。尽可能高效地利用PC资源,使应用程序更容易保持90帧。需要更多时间进行渲染的应用程序与更高效的程序相比,可能具有更高的位置延迟,但在所有情况下,方向延迟保持较低。
Oculus似乎对这个功能非常自豪,并写道“使ATW正确运作需要很多工作。”
博文继续写道:“使用ATW,用户在虚拟现实中的体验会更加顺畅。没有使用ATW的Rift初始标题的早期测量结果显示应用程序丢失了约5%的帧。ATW可以填补大部分丢失的帧,减少跳动的情况,效果提升了20-100倍。这个功能不会对应用程序性能产生任何影响,并且不需要代码更改。”
该公司坚持认为ATW“不是万能解决方案”,并继续建议开发者在他们的VR应用程序中目标为一致的90FPS帧率,以获得最佳体验。
此外:Valve的“The Lab”是一个充满了HTC Vive虚拟现实游戏的奇妙游乐场。
Valve也同意ATW应该只作为偶尔丢失帧的最后手段使用。在上周的GDC上,Valve的资深程序员Alex Vlachos在他的高级VR渲染性能研讨会上称ATW为“理想的安全网”,但建议采用一种“自适应质量”系统,该系统偏向于在过度依赖ATW之前减少渲染质量。
Vlachos表示,自适应质量系统有两个目标:
减少丢帧的机会和[借助时间扭曲的补救]
在GPU闲置周期时提高质量
使用这样的系统可以使推荐的VR规格以下的GPU在非专门为该规格设计的应用程序上达到90FPS的帧率,而在高端系统上,允许VR体验在超过推荐规格的系统上看起来更好。
他提供了一个可以根据测量帧率自动调整的设置示例:
使用这个系统,Vlachos表示Valve能够使阀门的“光圈机器人修理”演示在四年前的Nvidia GTX 680上保持稳定的90FPS,而不依赖ATW。
总的来说,这些技术可以在帧意外没有以足够快的速度渲染时提供更流畅的VR性能,不论是因为用户在某个特定时刻的视图特别需要渲染,还是因为在用户计算机上运行的后台进程在错误的时候夺走了一点渲染能力。
0