Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

作者李泽南

手机上的光线追踪,OPPO率先做到了

我们买下部手机的时候,「能不能开光追」可能是一个重要的选择标准。

说到当今电子游戏里最知名的图形渲染技术,可能非光线追踪莫属了。


不论 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 提出自己的优化需求,我们期待尽快与游戏厂商和应用开发者展开合作。

这一天应该离我们并不遥远。
工程GPUOPPO
暂无评论
暂无评论~