Oculus去年推出的异步空间扭曲(Asynchronous Spacewarp)渲染技术使得Oculus能够建立更低“Oculus最低规格”。采用该技术之后,VR 应用只需要 45 帧每秒运行即可,其他帧由算法合成最终让应用运行达到 90 帧每秒,使得入门级VR可以在更低配置的电脑上运行。

现在,Oculus正式将他们最新的渲染技术“Stereo Shading Reprojection(立体着色二次投影)”公之于众。Oculus表示,对于着重于像素着色的场景,这种渲染方式可以节省20%以上的GPU性能。另外,最新的VR渲染技术可以轻松地添加到基于Unity的项目中,而且“集成至Unreal和其他引擎应该不难”。

VR很吃显卡一个很重要的原因就是,在VR应用中,需要为用户左右眼看到的图像各渲染一次,这就增加了对显卡的负载。而Oculus这项技术的原理就是基本原理是利用每个眼睛视图角度的相似之处,以消除冗余的渲染工作。只需要对像素渲染一次,然后把为其中一只眼睛渲染的图像投影给另一只眼睛,这样其实双眼共享了同样的渲染图像。

Oculus工程师Jian Zhang和Simon Green在Oculus开发者博客上写道:SSR利用“深度缓冲区的信息把第一只眼睛的渲染结果重新投射到第二只眼睛的帧缓冲区中。”同时,他们分享了Stereo Shading Reprojection(立体着色二次投影)的基本过程:

渲染左眼:在透明通道之前保存深度和色彩缓冲区

渲染右眼:保存右眼深度

二次投影通道:使用深度值,把左眼颜色重新投射到右眼位置,并生成像素剔除遮罩。

继续右眼的不透明和附加照明通道,填充未被像素剔除遮罩覆盖的区域中的像素。

重置像素剔除遮罩,并完成接下来位于右眼的通道。

左图显示了边缘伪影,而Conservative Reprojection Filter则用于解决这个问题。

得益于渲染性能的提高,配置相对没那么强大的硬件可以更轻松地渲染场景,或者相同的目标硬件可以运行更复杂的图形和游戏。

Oculus表示,他们计划很快发布演示Stereo Shading Reprojection(立体着色二次投影)的Unity示例代码,更多的开发者将能够接触到这个福利哟。

(下载iPhone或Android应用“经理人分享”,一个只为职业精英人群提供优质知识服务的分享平台。不做单纯的资讯推送,致力于成为你的私人智库。)