atcore's Profile

1
points

Questions
1

Answers
0

  • 如果你经常听国内一些技术流的VR创业公司的演讲,那么你对“异步时间扭曲”(ATW)这个词肯定不会陌生。例如自称国内第一家掌握ATW技术的焰火工坊,在他们的第一次发布会上CTO王明杨就提到了这项技术。当时他尝试了进行解释,但后来放弃了,只说“你们知道这很牛逼就行了”。此后CEO娄池也在各种场合提起ATW,包括微信朋友圈。另外一家公司乐相也是。 焰火工坊CEO娄池和乐相CEO陈朝阳的朋友圈 “异步时间扭曲”这个名称听起来很牛逼,但了解它实际含义的人可能不多。 一种生成中间帧的技术 异步时间扭曲英文是Asynchronous Timewarp,简称ATW。简单来说,这是一种生成中间帧的技术。当游戏画面无法保持足够的帧率时,它能产生中间帧进行弥补,从而维持较高的画面刷新率。这项技术的提出者John Carmack目前是Oculus的CTO。 我们采访了王明杨来解释ATW,他是这样说的: 正常情况下,我们的手机大部分是60hz刷新,也就是说,在理想情况下我们的手机大概要处理有60帧/秒。那么,从数据到渲染就有 1000 /60 ~= 16.6666ms的时延。 那么,如何抵消这个时延呢?卡马克(John Carmack)提出一种方法,通过大量采集陀螺仪数据,在样本足够多的情况下,就可以预测出16.66ms后你头部应有的旋转和位置,按照这个预测的数据来渲染,他管这个技术叫Timewarp。 然而问题又来了,一般VR场景很复杂,我们很难保证每次都在16.66ms内完成一次渲染,也就是我们很难保证每个应用都是60fps。那么卡神又提出一个ATW,就是异步的Timewarp。 他把VR应用的渲染管线设计成两个线程,渲染线程(生产者)和Timewarp线程(消费者),两者异步工作,生产者生产足够多的Framebuffer,消费者把生产者生产的东西做Timewarp之后贴在屏幕上。也就是说,无论你当前游戏的fps是多少,Timewarp始终被设计成保持在60fps(视刷新率而定)。 这就是ATW的核心细节,把Timewarp和产生Framebuffer分离,用高刷新率的Timewarp来换取低时延。 ATW技术在VR中应用的先驱是Oculus,一年多以前他们就在Gear VR上应用了这项技术,3月25日宣布在PC端的SDK上加入ATW的支持。 具体怎么做? …

    atcore Asked on 2017年9月20日 in 虚拟现实VR.
    • 1209 views
    • 0 answers
    • 0 votes