打开电视机,点播您最喜欢的流媒体服务,然后倒上一杯可乐。这个时代最重要的视觉技术已融入生活的方方面面。
在过去 15 年算力飞速增长的推动下,路径追踪已经席卷了整个视觉媒体领域。
它为电影大片带来了各种大型效果、为最令人沉浸的情节剧添加了美妙的光影效果,并将动画艺术推向新的高度。
而这还只是冰山一角。
路径追踪(Path tracing)正在迈向实时化,它将实现充满动态光影、反射和折射的逼真交互式 3D 环境。
什么是路径追踪?这个概念其实非常简单,它连接着 500 年以来的艺术和科学领域创新者。
光柵化与光线追踪之间有什么区别?
首先要了解一些术语的定义,以及现在如何使用它们创建交互式图形,这些图形能够对用户输入做出实时反应,比如在视频游戏中。
第一个术语是光栅化(rasterization),这项技术可以从单视点生成图像,从一开始就是 GPU 的核心。现代 NVIDIA GPU 每秒可以生成超过 1000 亿个光栅化像素,这使光栅化成为实时图形(如游戏)的理想选择。
光线追踪技术比光栅化更强大。它不再局限于从一个点上看到的图像,而是可以确定从许多不同的点和方向看到的图像。从 NVIDIA Turing 架构开始,NVIDIA GPU 就一直在提供能够加速这种困难计算的专用 RTX 硬件。如今,单个 GPU 每秒可以追踪数十亿条光线。
追踪所有这些光线能够比光栅化更精确地模拟光线在现实世界中的散射情况。但我们还必须回答以下问题:如何模拟光线以及如何把这项技术应用于 GPU?
什么是光线追踪?故事要从细绳开始讲起
更好地回答这个问题需要先来了解这项技术的发展过程。
NVIDIA 图形学研究副总裁 David Luebke 喜欢从 16 世纪北欧文艺复兴时期最重要的人物之一阿尔布雷希特·丢勒(Albrecht Dürer)开始讲起,丢勒使用绳子和砝码在二维表面上复制出三维图像。
丢勒一生致力于将古典和现代数学与艺术相结合,在表现力和现实主义方面取得了突破性的成就。
跟着绳子:阿尔布雷希特·丢勒在《测量论》(纽伦堡,1525年,f15)中首次描述了现在被称为“光线追踪”的技术。这项技术可以在二维表面上准确表示三维物体。
在 1525 年的《测量论》中,丢勒成为了第一个描述光线追踪概念的人。了解丢勒如何描述这个概念是理解它的最简单方法。
想一想光如何照亮周围的世界。
现在想象一下,用一根丢勒所使用的细绳从眼睛往后追踪这些光线,一直到与光线互动的物体。这就是光线追踪。
将光线追踪引入计算机图形学
Turner Whitted 在 1979 年发表的论文《用于阴影显示的改进型光照模型》点燃了光线追踪的复兴。
1969 年,在丢勒去世 400 多年后,IBM 的 Arthur Appel 展示了如何将光线追踪概念引入计算机图形学,并应用于计算可见度和阴影。
十年后,Turner Whitted 率先展示了这一概念如何捕捉反射、阴影和折射,解释了这一看似简单的概念如何使更复杂的计算机图形成为可能。这项技术在接下来的几年里迅速发展。
1984 年,卢卡斯影业的 Robert Cook、Thomas Porter 和 Loren Carpenter 详细介绍了光线追踪如何将运动模糊、景深、半影、半透明和模糊反射等许多常见的电影制作技术结合到一起。在此之前,这些技术在计算机图形中都无法实现。
Jim Kajiya 在 1986 年发表的论文《渲染方程》中不仅提出了描述光线如何在场景中移动的简练物理学方程,还概述了如何高效地应用该方程。
两年后,加州理工学院教授 Jim Kajiya 在一篇简短的七页论文《渲染方程》中通过光线追踪将计算机图形与物理学相联系,并介绍了路径追踪算法,这使得准确描绘光线在场景中的散射方式成为可能。
什么是路径追踪?
在开发路径追踪的过程中,Kajiya 从不相关的领域获得了启发——对辐射换热的研究,或者说热如何在整个环境中传播。该领域的一些概念启发他发布了描述光线如何穿过空气和从表面散射的渲染方程。
渲染方程只有寥寥几行,但却不容易解出。计算机图形场景很复杂,数十亿三角形在今天并不罕见。但由于没有办法直接解出渲染方程,Kajiya 提出了第二个关键创新。
Kajiya 证明了统计技术可以用来解出渲染方程。即使没有直接解出该方程,也有能够沿着单个光线的路径求解。如果能够沿着足够多的光线路径解出该方程,就能准确模拟场景中的照明,生成逼真的图像。
那么如何沿着射线的路径解出渲染方程?答案是光线追踪。
Kajiya 使用的统计技术被称为蒙特卡洛积分,可以追溯到计算机诞生之初的 1940 年代。开发用于路径追踪的改进型蒙特卡洛算法至今仍是未被解决的研究问题;NVIDIA 的研究人员处于该领域的最前沿,他们定期发布提高路径追踪效率的新技术。
通过结合这两个概念(使用以物理学为基础的方程描述光线在场景中的移动方式,并使用蒙特卡洛模拟帮助选择可控数量的光源返回路径),Kajiya 提出了日后成为生成逼真计算机生成图像标准的基本技术。
他的方法反映了光线在现实世界中移动时的物理规律,将由各种不同渲染技术主导的领域,转变为可以使用简单、强大的算法重现大量高度真实视觉效果的领域。
路径追踪进入电影行业
1987 年发布的路径追踪在之后的几年被视为一种巧妙的技术,同时也是当时已知的最准确方法,但它完全不实用。Kajiya 原始论文中的图像只有 256×256 像素,但却在昂贵的微型计算机上花了 7 个多小时才完成渲染,而这台计算机的性能远超大众使用的计算机。
但随着摩尔定律推动着算力的提高,这项技术变得越来越实用。摩尔定律认为芯片制造商每 18 个月就会将微处理器上的晶体管数量增加一倍,使算力成倍增长。
从 1998 年的《虫虫危机》等电影开始,光线追踪在越来越多电影中被用于增强计算机生成图像。2006 年,第一部完全采用路径追踪的电影《怪怪屋》震惊了观众。这部电影使用了 Solid Angle SL(后来被Autodesk收购)和索尼图形图像运作公司(Sony Pictures Imageworks)共同开发的 Arnold 软件渲染。
该电影上映后大受欢迎,全球总票房超过了 1.4 亿美元。它让人们看到了新一代计算机动画的可能性。随着算力的提高,越来越多的电影开始依赖这项技术,它所生成的图像往往与摄像机拍摄的图像毫无区别。
问题在于渲染单张图片仍然需要几个小时,而庞大的服务器集合,即“渲染农场”要连续运行数月来渲染图片,才能制作出一部完整的电影。因此,这项技术需要取得巨大的突破才能应用于实时图形。
路径追踪在游戏中的应用
多年前,路径追踪一直无法应用于游戏。虽然许多游戏开发者表示,会想要在路径追踪的性能可以满足实时图形需求时使用这项技术。但由于当时的性能与实时图形的要求相距甚远,路径追踪似乎无法实现。
随着 GPU 变得越来越快以及如今 RTX 硬件的普及,实时路径追踪就在眼前。就像电影在转向路径追踪之前开始融入一些光线追踪技术一样,游戏也已经开始用有限的方式使用光线追踪。
现在,越来越多的游戏都在某些方面使用了光线追踪。它们将传统的光栅化渲染技术与部分光线追踪效果相结合。
那么这里的路径追踪指的是什么?它可能指各种技术的混合。游戏开发者可以光栅化主光线,然后对场景照明进行路径追踪。
光柵化相当于从单个点投射一组光线,这组光线会在集中的的第一个事物上停止。光线追踪更进一步,可以将来自多个点的光线投射至任何方向。路径追踪模拟光的真实物理特性,将光线追踪作为更大照明模拟系统的组成部分。
这意味着场景中的所有照明均使用蒙特卡洛或其他技术随机采样,包括对物体或角色的直接照明,以及照亮房间或间接照明环境的全局照明。
仅通过一次反弹追踪光线做不到这一点,它需要通过多次反弹追踪光线,甚至可能要像 Kajiya 所描述的那样追溯光源。
一些游戏已经在这样做了,而且效果非常好。
微软已经发布了将路径追踪应用于《我的世界》中的插件。
《Quake II》这部经典的射击游戏也凭借新的插件实现了完整的路径追踪,这种类型的游戏往往是应用了高级图形技术的沙盒游戏。
显然,这个领域还有很长的路要走,游戏开发者需要知道客户拥有路径追踪游戏体验所需的算力。
游戏需要有高质量的视觉效果以及与反应迅速的游戏玩家进行互动的速度,因此是最具挑战性的视觉计算项目。
期待着这个领域的开创性技术能够延伸到数字生活的方方面面。
未来趋势
随着 GPU 性能的不断增强,路径追踪的应用顺理成章地成为了下一个趋势。
凭借 Autodesk 的 Arnold、Chaos Group 的 V-Ray 或皮克斯的 Renderman 等工具以及强大的 GPU,产品设计师和建筑师使用光线追踪在几秒钟内就能生成逼真的产品模型,这使他们能够更好地开展合作并跳过昂贵的原型设计。
随着 GPU 算力的提升,视频游戏已成为光线追踪和路径追踪的下一个前沿领域。
2018 年,NVIDIA 发布了 NVIDIA RTX。这项光线追踪技术使游戏开发者实现了实时、电影级的渲染。
NVIDIA RTX 包括在 NVIDIA Ampere 和 Turing 架构 GPU 上运行的光线追踪引擎,支持通过多种接口支持光线追踪。
NVIDIA 已经与微软合作,通过微软的全新 DirectX 光线追踪(DXR)API 实现对 RTX 的全面支持。
此后,NVIDIA 继续开发 NVIDIA RTX 技术,越来越多的开发者创造出支持实时光线追踪的游戏。
《我的世界》甚至支持实时路径追踪,将块状的沉浸式世界变成了被光影笼罩的沉浸式景观。
日益强大的硬件以及软件工具和相关技术的激增将继续推动这项技术的发展。
游戏、虚拟世界、甚至在线协作工具等数字体验将呈现如同好莱坞大片一般的电影级品质。
目前您在生活中体验到的视觉技术只代表身边世界的未来趋势之一。
编辑:黄飞
评论
查看更多