像素密度提升33%,Quest Pro动态注视点渲染原理详解

hi188 | 编辑

在Connect 2022上,Meta发布了Quest Pro,并首次在VR中引入动态注视点渲染(ETFR)功能,这是一种新型图形优化技术,特点是以用户注视点为中心,动态调节VR屏幕的清晰度(注视点中心最清晰、像素密度高,周围边缘清晰度低,像素密度低),好处是在节省GPU运算量的同时,也保持了足够清晰的VR观感。

像素密度提升33%,Quest Pro动态注视点渲染原理详解

自ETFR功能推出后,陆续有多款VR游戏支持该功能,比如《Vertical Robot》、《Red Matter 2》等等。据悉,《Red Matter 2》由Vertical Robot开发,该作登陆Quest Pro后,像素密度比之前提升了33%(等同于视觉中心的像素数量增加了77%),文字清晰度、光影和色彩表现足够优秀,突破了Quest头显的图形极限。

Vertical Robot指出:在《Red Matter 2》中激活ETFR功能很简单,随后只需要考虑如何提升VR游戏的像素密度,以及测试效果。结果发现,该作在Quest Pro上画质非常清晰,真正提升了游戏体验。

什么是ETFR

我们知道,Quest头显支持固定注视点渲染(FFR),虽然也是在视觉中心渲染高分辨率,在周边渲染低分辨率画面,但视觉中心的位置基于你转头的方向,而不会跟随注视点移动而实时变化。

相比之下,ETFR基于实时眼球追踪技术,清晰区域跟随眼球运动,因此可以进一步缩小高分辨率区域,比FFR节省更多GPU算力。

像素密度提升33%,Quest Pro动态注视点渲染原理详解
开启Offset
ETFR是怎么实现对VR画面动态渲染的呢?原来,Meta为Unity和Unreal引擎开发了专门的Vulkan扩展插件:Tile Offset(分块补偿),该插件可指定像素补偿值,并设定注视点贴图(也就是视觉中心和余光区域的比例),这个注视点贴图支持重复使用、平滑运动,可以根据注视点变化,进一步调整图像清晰度。Tile Offset还有一个好处,就是避免了图像分辨率每次更新时可能产生的闪烁问题。
像素密度提升33%,Quest Pro动态注视点渲染原理详解
关闭Offset

OpenXR API

Meta指出,Quest正在全面支持OpenXR API,因此ETFR功能也仅支持OpenXR标准。因此UE4开发者需要在引擎中选择OpenXR OVRPlugin插件,才能接入ETFR API(由FFR所使用的框架XR_FB_foveation扩展而来,现在是一个基于OpenXR的API)。
ETFR API的特点是,可在Unity、Unreal的Quest集成工具(v49版开始)后台调用API,开发者无需处理细节。不管是原生VR游戏,还是移植VR游戏,都可以在游戏引擎中开启ETFR功能。

优化延迟

不管是眼球追踪还是注视点渲染,这些过程都具有一定延迟,分别在多个步骤中产生,比如摄像头读取、眼球追踪、渲染线程、GPU渲染、显示等过程。
像素密度提升33%,Quest Pro动态注视点渲染原理详解
Meta为了降低ETFR渲染管道的延迟(从注视点运动到显示屏响应的时间),将相机传感器和处理器的刷新率设置为和显示屏相同,并且和渲染管道完全同步,此外,还抵消了眼球追踪相机的数据捕捉时间,从而缩短从捕捉到眼球信息到输出注视点贴图的时间。
经过测试,在UE4应用中运行ETFR的端到端延迟大约在46到57毫秒之间,具体数据根据当前的渲染负载变化。值得注意的是,ETFR还支持预测眼球运动,Meta测试了多种眼球运动,均获得不错的视觉体验。

有哪些局限?

尽管ETFR可以有效提升VR图像质量,但不一定适合所有类型的内容。Meta指出,如果VR应用使用大量复杂的材质,或是渲染分辨率很高,那么使用ETFR的效果会很好,可以将给定渲染通道的片段着色次数减少(此类应用通常受到像素限制)。然而,如果VR应用受到顶点限制(vertex),那么ETFR的作用不大。
此外,ETFR目前仅应用于眼睛缓冲区(主层),如果使用额外的合成器层,那么ETFR也无法优化渲染、合成这些涂层的GPU成本。也就是说,它只能改善眼睛缓冲区的渲染成本。
像素密度提升33%,Quest Pro动态注视点渲染原理详解
Meta建议,开发者应该根据VR应用类型去使用ETFR,并确保测试效果稳定。ETFR也存在和FFR一样的缺点,比如低像素密度的外围区域可能产生闪烁,尤其是在渲染高对比度、复杂的结合形状时,因此开发者需要尽可能扩大中心清晰区域的范围,更好的平衡性能和视觉质量。

进一步优化GPU

注视点渲染功能节省了部分GPU算力,这些算力可进一步提升中心区域的清晰度。Meta宣称,这样可以将渲染分辨率提升至1872x2048(像素数量提升至111%),而中心视觉区域的PPD可达15.5,整体效果要比FFR更好。
像素密度提升33%,Quest Pro动态注视点渲染原理详解
不过,ETFR能节省多少GPU算力还取决于应用内容,因此需要开发者经过测试来验证最佳参数组合,确保余光区域没有明显视觉伪影。
总之,ETFR的主要用途是减少VR渲染所需的像素数量,并尽可能平衡性能和视觉质量,提升中心视觉的PPD,以及优化图形复杂性、分辨率、MSAA(多重采样抗锯齿)等级、注视点区域范围等方面。该功能可作为FFR等图形/性能优化工具的一个补充,根据VR应用的类型和需求来选择是否开启。此外,也可以在游戏主菜单、游戏场景分别独立开启/关闭ETFR。
参考:
https://developer.oculus.com/blog/save-gpu-with-eye-tracked-foveated-rendering/

原文始发于微信公众号(青亭网):像素密度提升33%,Quest Pro动态注视点渲染原理详解

艾邦建有AR/VR产业链微信群,目前有HTC、PICO、OPPO、亮亮视野、光粒科技、影创、创维、佳视、歌尔、立讯精密、多哚(纳立多)、欣旺达、耐德佳,联创电子、至格科技、灵犀微光、舜宇光学、广景视睿、珑璟光电、京东方、海信视像、科煦智能、阿科玛、金发科技、思立可、新安天玉、四方超轻、大族激光、发那科、承熹机电等加入,也欢迎大家长按下方图片识别二维码加入微信群:
Document Download
Welcome to join by clicking hereAR/VR DirectoryCurrently, there are more than 3000 members, including companies such as GoerTek, HTC, OPPO, Skyworth, PICO, ByteDance, Black Shark, Lenovo, Nreal, Lynx, Luxon, Lingxi MicroLight, Luxshare Precision, Leading Ideal, OFILM, Huaqin, Wentai, Luxshare, Lumus, Sisvel, and Shunyu, among others. Click on the keywords below for filtering.
en_USEnglish