光线追踪往事:十年技术轮回

2019-09-24 10:05发布

十年前,光线追踪本来是英特尔对付英伟达的黑科技,结果不幸难产。十年后,光追终于应用到游戏中,却是在英伟达手里发扬光大。好像完成了一个循环,但双方的角色发生了对调。

当今游戏界被炒得最热的概念可能就是光线追踪技术了,不仅仅是PC游戏,就连次世代主机也把光线追踪作为了主要亮点之一。

光线追踪所展示出来的画面效果也确实惊艳,让我们感叹图像技术又达到了一个新的高度。

但是实际上,光线追踪并不是一个新技术,即使在游戏界也不是什么新鲜事了。10年前,光追就是游戏玩家茶余饭后的话题, 英特尔、约翰·科马克等都曾试图将这项技术引入游戏中,并预言它将是游戏的未来。而如今大力推广光线追踪的英伟达,本应是这项技术的第一个对付的商业竞争者。

1

2008年前后,英特尔和英伟达两家大厂对于电脑显卡的存在意义展开了激烈的对线。

由于《孤岛危机》这样画面精细对性能要求极高的游戏的出现,让显卡成为了电脑中的重要部件。游戏玩家愿意花更多的钱买一个更好的显卡,而不是CPU,这对英特尔是一个危险的信号。

当时的英特尔在很多场合下表示,独立显卡最终会被淘汰,未来的PC图像处理会逐渐集成到CPU中,并认为自己的CPU可以提供更好的游戏渲染。

英特尔自信的来源,是他们认为找到了能击溃英伟达,占领次世代游戏的秘密武器——光线追踪技术。

传统的显卡使用光栅式渲染技术呈现3D图像,这需要大量的手工设置,而且最终的结果只能在视觉上接近真实,但并不遵循物理规律。

光线追踪技术则是模拟光线的传播,电脑只渲染光线打到地方,因此仅需要很少的人工编程,相比于光栅式渲染简便了很多。同时光线追踪也能表现出相当真实的画面,尤其是符合物理规律的光影效果。


光线追踪技术需要大量的运算,因此更加适合CPU使用,这正是英特尔需要的武器。

2

为了进一步在游戏中推行光线追踪,英特尔在2007年招入了德国人Daniel Pohl。

Daniel Pohl 是埃尔朗根-纽伦堡大学的研究毕业生,在校期间他就一直在进行光线追踪的研究。2004年,他将实时光线追踪应用于《雷神之锤3》上。

虽然开启光线追踪后,游戏只能在512X512分辨率下,勉强得到每秒20帧的表现。但真实光影下呈现出的画面,依然让Daniel Pohl看到了图像技术的未来。

他在硕士期间又把光线追踪用在了更现代的《雷神之锤4》上。加入英特尔后,Daniel Pohl 将自己的成果和英特尔的CPU结合起来,成为了英特尔光线追踪技术的早期Demo。

光线追踪下的《雷神之锤4》表现更加惊艳,光的反射、折射,阴影的投射,都如同现实中一样,会根据场景变化实时作出真实的反映。

然而Daniel Pohl 的Demo还不够引起游戏厂商的兴趣。

按照业界大牛,《毁灭战士》的创造者,约翰·卡马克的说法,“他们没能让展示出光线追踪的核心的价值。”

“我觉得英特尔没能给出足够的吸引力,让人觉得‘哦,这比原来酷10倍,我现在就想买新主机’。”

“他们研究《雷神之锤》的代码,去展示光追带来的好处,证明它不是象牙塔里的玩具。但他们是在用上个世代的技术,去向人们展示下个世代的游戏画面。”

光线追踪加上上个技术的贴图与建模水平,呈现出一种不协调的生硬感

虽然卡马克表示自己不看好英特尔的研究路线,但对光线追踪他自己也十分感兴趣。

当时他正在着手开发他的次世代游戏引擎id Tech 6,而在他的宏伟计划中,这款跨时代的引擎的一个特殊之处就是支持光线追踪。

但他更感兴趣的是光线追踪的算法,他说利用这种技术可以来存储大量的数据,这样id Tech6不用几十GB的巨量数据,就能产生近乎无穷的多边形细节。

“我觉得我至少能展示出一些在当前时代你没见过的东西,甚至开发中的游戏都没有的东西。”

3

Daniel Pohl在英特尔的研究不但展示了光线追踪的好处,也暴露了它的问题:对电脑性能的极高需求。

如果要模拟漫反射或折射等光学的效果,需要计算大量的光线。而在动态时,由于空间构造和光影的实时改变,对计算速度的要求会更高。

但Daniel Pohl 发现,多核心对于提高光线追踪的效率有很大的帮助。如果想突破光线追踪的瓶颈,他们需要更多的运算核心。

这也是英特尔始终对光线追踪技术充满信心的原因之一,他们下一款产品,恰好符合这个需求。

2007年英特尔宣布将生产一款采用x86架构的多核心通用图形处理器(GPGPU),代号Larrabee。与普通的显卡不同,Larrabee同时拥有CPU和GPU的特性,能提供较强的通用运算能力,同样也可以进行图形渲染。

虽然Larrabee默认的图像渲染模式依然使用光栅式,但多核心、可编程的特性,让它成为了当时理论上光线追踪能力最强的显卡。很多人猜测在Larrabee的帮助下,未来的游戏也许真的能有实时的光线追踪。

2008年英特尔展示了游戏《深入敌后:雷神战争》在光线追踪引擎中的运行效果。

与之前的Demo不同,《深入敌后:雷神战争》雷神战争当时才发售不久,就可以在720P下,以可接受的帧率开启光追,这是一次新的突破。但这个演示最初并不是在PC上运行的,而是在一个装有4颗至强处理器的服务器上运行的。

2009年,英特尔把这段演示用Larrabee重新渲染了一遍,展示了船只、天空在水面的逼真反射,时不时飞过的飞行器都在水面上真实的倒映了出来,让人们对光线追踪的未来充满了无限的遐想。

然而Larrabee的发布并不顺利。自从公布后,它就一直处于跳票状态,始终披着一层神秘的面纱。

英特尔官方曾演示过超频版的Larrabee达到了每秒1T FLOPS的浮点运算能力(作为对比,2013年底发售的初版PS4的浮点运算能力是1.84T),这依然达不到当时主流显卡的标准。

英伟达CEO黄任勋更直言Larrabee只是空中楼阁:“它只是幻灯片,幻灯片上的产品都看上去很美。”

2010英特尔宣布因为Larrabee的开发没有达到预期,将不会推出商用版本。

但Larrabee的夭折,没有停止英特尔对光线追踪的探索,他们又开了新的脑洞。

既然PC的机能有限,那么就通过云游戏实现光线追踪,用大型服务器来渲染游戏,然后把图像传输到个人电脑上。

之后英特尔演示了《德军总部》的光线追踪Demo,这个Demo运行在Knights Ferry服务器平台上,然后把图像通过千兆网卡传输到笔记本上。

英特尔还尝试了通过手机、平板设备串流运行光追版《德军总部》,虽然这个概念很有前瞻性,但在当时的条件下,云游戏并不比本地光线追踪实际多少。

之后Daniel Pohl的研究逐渐进入瓶颈,在完成了《德军总部》光线追踪的相关研究后,他的工作逐渐开始向新兴的VR领域转移,也宣告了Intel光追梦到此告一段落。

也就在那段时间,卡马克离开了id Software,也投身于VR技术的研究。留下了未完成的id tech 6引擎。

就这样,光线追踪成了英特尔和卡马克都没能跨越的技术高峰,逐渐远离了大众的视野,等待下一个时间点的到来。

4

直到2018年,英伟达向全世界展示了RTX系列显卡,联合微软的DirectX光线追踪API,再一次把光线追踪技术介绍给游戏玩家,并称其将带领PC游戏进入黄金时代。

卡马克看到英伟达的光线追踪后,在推特上留下这样一句话:“暂时对于DX新的光线追踪还没有什么评价,短期内可能也不会有,但是……哎呦(扎心了)。

2019年,英伟达又联合id Software展示了RTX光线追踪如何让老游戏重获新生,这次使用的游戏恰恰就是当年英特尔选择的《雷神之锤》系列,不过是年代更早的《雷神之锤2》。在最新的光线追踪技术下,这款游戏呈现出了惊艳的画面表现,也让人们对光线追踪有了全新的认识。

有趣的是,最近英特尔也宣布,将在2020年推出Xe独立显卡,重回光线追踪的世界。

十年之间好像完成了一个循环,但双方的角色却发生了对调。

在光线追踪的竞赛中,英伟达捡起了曾经砍向自己的剑,先行者英特尔反而慢了半拍。

新技术的发展往往受到时间的制约,就像电动车、VR,其实都不是新的概念,但只有在特定时间点,那些“不切实际”的概念才真正得以推行。最终成功的人,往往是选择了恰当时机,而曾经那些疯狂想法的人们则随着时间成了历史。

但这些历史同样值得回味。因为人类登上月球的第一步,就开始于千百年前的某次仰望星空。

文章来源: https://www.toutiao.com/group/6739832153372099085/