说到当今电子游玩里最知名的图形衬着手艺,可能非光芒跟踪莫属了。
不论 Minecraft、魔兽世界还是战地,越来越多知名游玩都在加入光追结果。不过对于玩家们来说,画质和流畅度之间必要作出取舍——关闭光追很多时候都意味着帧率减半,即使是在有专门 RTX 核心的英伟达 GPU 上也是如此。
「把光追关了」是玩家们感觉画面卡顿后的前排解决方案。距离实用化已过去 3 年,光追还只是高端玩家炫耀硬件的资本。然而在 10 月 27 日的 OPPO 开发者大会上,OPPO 进行了一番手机光追的演示,一直以来硬件需求很高的画面殊效,居然已经能在手机上实行了:这是我们第一次在手机上看到如此精细的画面结果。光芒跟踪手艺还没有在 PC 和主机上广泛铺开,就又把目标转向了数以亿计的智能手机。OPPO 软件工程事业部总裁吴恒刚表示:「预计在明年上半年,我们将可以提供光芒跟踪的能力接入,面向硬件支持的手机设备。」看到这样的场面,我们不禁要问:这真是一件能实行的事吗?光芒跟踪值不值得?要想回答这些问题,还得从手艺本身说起。光芒跟踪:前所未有的殊效光芒跟踪首次以计算形式的使用可以追溯到 1968 年,又在 1980 年由 Turner Whitted 开创性的研究而被学界、业界所熟知。著名计算机科学家,英伟达前首席科学家 David Krik 说过:「以前有句玩笑话——光芒跟踪是未来的手艺,而且这个未来永远不会到来。」2019 年 5 月,顶级计算图形学机构 ACM SIGGRAPH 颁发了一项最佳博士论文奖。获奖者闫令琪博士毕业于加州大学伯克利分校,目前已是加州大学圣巴巴拉分校(UCSB)的一名助理教授。他的博士论文颁奖词是这么说的:「他的论文每章都可以自成一篇博士论文。」闫令琪博士论文的一个章节有关全局光照,其研究最终引出了如今商用化的「光芒跟踪手艺」Ray Tracing,将电子游玩的画质水平提升了一个台阶。未来已经成为了现实,随着英伟达提出的 Turing 显卡,单块 GPU 已经可以实行实时的画面光追衬着。
光芒跟踪意味着设置一个光源,随后模拟其投射结果:在自然环境中会出现反射、折射、暗影等等。人们想在虚拟世界复现真实环境,就必要找到方法实行人眼对于这些目标的直觉认知。在当前被人们广泛使用的方法中,光芒跟踪大概遵循这样的流程工作:在虚拟空间中发射一条光芒,遍历整个场景,寻找可能被光芒跟踪的物体,根据不同结果进行不同处理,随后又必要对其进行着色。在此过程中我们还必要执行递归,即回到最初的步骤,发射更多光芒,获得更多反射、暗影结果。
在 DirectX 和 Vulkan 的光芒跟踪中存在五种新着色器:光芒生成、求交、无交点、传统和任意交点着色器,以分别模拟反射、折射、透明材质等情况。简而言之,光追就是通过复杂的流程,消耗芯片的大量并行化算力,试图生成出与真实世界相近的光照结果。而随着场景的不断增大,画面复杂程度的升高,光芒跟踪的结果会愈发明显。目前有关光芒跟踪手艺的使用,大多数是 3A 游玩大作。在最新、最热门的游玩里你可以找到这个可选项,想要关闭还得更新一下 GPU 驱动。
仙剑奇侠传 7 的光芒跟踪结果。虽然很吃算力,但在众多 3A 大作展现的画面中我们可以发现,关闭光追就像关闭了新世界的大门。如何把光追塞进手机和 AI 手艺发展的轨迹类似,光芒跟踪也经历了理论的提出和完善,又在多年后后因为芯片算力的提升而被逐步实用化。然而近几年来,传统硅芯片的性能发展逐渐接近物理极限,我们再也难以通过简单使用更小晶体管的形式来承载更高的算力了。在台式电脑上难以实行的光芒跟踪,又是如何被 OPPO 使用在手机上的呢?首先,它是真实的结果,除了 OPPO 在开发者大会的现场揭示的两段 demo 视频,在开发者大会的展区中也有实机演示,光追是在目前市面上销售的量产手机上实行的。OPPO 揭示了光在光滑材质表面的「真实」反射结果,以及更为细腻的暗影:还有结果最明显的镜面反射、透明体折射等结果。PC 游玩上的光芒跟踪,在这里几乎都可以呈现出来,帧数也达到了足够高(30 帧左右):
OPPO 介绍说,OPPO 光芒跟踪是基于 Vulkan API,面向下一代移动光追硬件的手艺,目前已在移动平台上实行了原型开发。该手艺能够在硬件算力受限的情况下清晰还原现实世界中的很多细节,提升画质体验。除了游玩,光芒跟踪手艺还可以在 3D 动态壁纸、影像滤镜、AR 等领域获得使用。目前手机的图形衬着大多使用光栅化的形式,在必要表现光照的位置使用 2D 投影,虽然保证了低功耗需求,但很多时候表现结果较为有限。而全局的光芒跟踪显然是手机算力难以承载的任务,因此 OPPO 选择了「混合衬着」的形式。对于原有的衬着形式进行较小改动,并不追求对每个像素进行光追,而是着重在如物体的暗影,武器的光泽等结果明显的位置。这种形式既可以提升图像结果,也保持了轻量化。
在一些场景中,我们可以使用光栅化生成初步图像,然后利用光芒跟踪手艺打造更加逼真、动人的结果。在实行道路上,和以往英伟达、AMD 等绑定硬件的光芒跟踪手艺不同,基于 Vulkan 的开源光追手艺在业界标准上兼容了更多设备,同时也方便开发者接入。OPPO 的核心优势是具有统一的场景遍历和光芒求交运算,不仅支持安卓手机端,还支持 PC 等多种平台,短期的目标至少是联发科和高通平台全支持。
除了开发者大会上提出的光芒跟踪和异构计算,幻影平台还将包含更多功能。「选择在这个时间点做,一个很重要的原因就是因为业界终于有了标准,这就意味着不同的平台厂商会以可互相兼容的形式去推动光追的实行,」OPPO 高级算法产品经理田一真说道。不到一年时间,从研发到落地幻影平台的光芒跟踪能力来自 OPPO 美国研究院西雅图中心,在不到一年的研究过程中,OPPO 与联发科、Unity、腾讯天美工作室等展开了合作。目前 OPPO 已经与天美在使命召唤手游上完成了两个场景的手艺演示。在 OPPO 的手艺揭示之前,联发科曾于今年初提出在天玑 1200 上可以实行光芒跟踪的结果。而在 ODC 上,揭示光追 Demo 的机型是 Reno6 Pro。在 2021 年内,就有手机厂商实行了当初人们的期望。「一些游玩公司、使用开发者甚至联发科这样的芯片提供商都在做光追,但他们是从各自的角度去完成的,」田一真说道。「对于 OPPO 来说,我们可以在共同开发的过程中从游玩厂商那里获得具体需求,同时向硬件平台协调算力调用形式,最适合完成这件事情的落地。」当前在游玩制作过程中,光追管线与游玩管线差别巨大,这减少了开发者们使用新手艺的意愿。OPPO 提出的幻影平台希望通过小步的形式去改进传统管线的图形衬着能力,同时大幅降低使用难度,开发者甚至不必要知道光追内部的实行细节。基于 Vulkan 这一业界唯一光芒跟踪标准,OPPO 将向开发者们提供开源接口,并向 Unity 等流行游玩引擎提供插件,这一适用于未来手艺发展的演进,并支持多种硬件。未来对于开发者来说,光追结果可能是在游玩设计过程中调用一个接口,只需在游玩引擎中一键就可以在 OPPO 手机上关闭光追,直接优化已有场景。而对于用户来说,他们也不必要更新特定的驱动,或是下载特殊的游玩客户端就可以获得更好的光影结果。OPPO 成为了首家把光芒跟踪手艺落地到移动终端上的手机厂商,不过它目前还没有推出专用游玩手机的计划:光芒跟踪、异构计算等手艺是希望能够提供给所有用户的。人人都可用,效率足够高,是 OPPO 光追手艺的目标。预计到明年上半年,OPPO 就会通过开放使用接入的形式将这种手艺提供给开发者们。最早在 2023 年,就会出现手机端的光追使用。最后,如果我是一名原神玩家,什么时候能在游玩里关闭光追选项呢?OPPO 表示:如果米哈游期待加入这样的殊效,他们可以向 OPPO 提出自己的优化需求,我们期待尽快与游玩厂商和使用开发者展开合作。这一天应该离我们并不遥远。
原创文章,作者:机器之心,如若转载,请注明出处:https://www.iaiol.com/news/34165