自适应灯光(Adaptive Lights)的研发小故事

一群有着绝妙想法的天才共同协作并获得业界肯定的故事

作者 / Emanuele Lecchi
翻译 / Hammer Chen

我们足足等了十多年,才获得了最高荣誉的正式认可,但毕竟最终他还是来了,而且是以最严谨的,清楚的,明白无误的方式:请允许我荣幸地引用奥斯卡评委的评语 “因为对 V-Ray 原创性的概念,设计,以及精巧的实现,” Vlado – 个人 – 被授予了电影学院(奥斯卡)科学与技术成就奖。

从原始的概念慢慢演进,成就了 “V-Ray 这套高效的,完善的光线跟踪和全局照明渲染器”,研发团队日日夜夜辛勤工作,在紧迫的时间内,最终创作出了这个 “广泛支持各种工作流程” 的作品,同时因为不陷入小格局,始终专注于问题重点的工作态度,才使得 “广受业界的支持和采用” 成为必然。

多年来,他靠着强大的职业道德与识人能力,以及不断提高的自身技能,“为推动整个电影行业采用全光线追踪渲染技术起到了推波助澜的作用”

我早该预见到这一切的到来,因为在我职业生涯的最宝贵的岁月中,我对这样的工作态度耳濡目染,有好几次我都亲眼见到他,直到最后一刻坚还是持要把软件修到最好,或者是加入最新出现的技术,花费难以计数的时间。

以 Vlado 的个性,一听到消息,他就真诚的希望与整个团队共享这份荣耀。尽管最初原始的概念和早期的代码都是他一个人(还有 Peter)写的,V-Ray 现在已经是 – 并且早就是 – 一款由无数能工巧匠共同打造的成熟的软件,若没有 Vlado,它不可能留存至今并蓬勃发展。

对这份共同努力的肯定是我书写这篇文章的原因:与此同时的获奖,也刚好印证了我的观点。

尽管获奖(大家共同获得的!)是件伟大的事,我们还是要与我们的日常工作作斗争,对于这些,奖项其实是帮不上什么忙的。

其实,今天我在这里,是想向大家介绍一个即将大幅改变游戏规则的新技术:自适应灯光(Adaptive Lights)

我先刻意不谈任何技术细节,先集中讲讲这个 Chaos Group 独有的新灯光采样技术对我们每一个人的工作流程以及整个业界技术走向的影响。

到今天为止,对于给定场景来说,每添加一个灯光,渲染时间也会相应的线性增加,这基本上是大家的共识:一个只打了一盏灯光的场景大概会比有 10 盏灯光的场景渲染快十倍,而后者也会比有100盏灯光的场景渲染快十倍。

所以在以前,如果有谁能把一个场景的布光简化合并到最精简的情况,那他可是大大的有功。但是这样,虽然避免了渲染时间的上升,每个场景的可修改性也就相应下降了。

自适应灯光(Adaptive Lights)彻底终结了这个现象。

测试是在我们公司内部进行的,在研发阶段,测试显示这项技术下的渲染时间几乎不被灯光数量所影响,在传统的 Lighting Loop 渲染测试中表现尤其明显:一个相同的场景,分别有 10盏,100盏,,1000盏,,10000盏,或100000盏灯,渲染同一帧所花的时间几乎是一样的,而且同样都是仅仅几分钟就渲染完了,绝不会花好几个小时。

如果你要具体的数字,举个极端的例子,比如一个只有漫反射材质的室内场景,室内有 10531盏球体灯光,自适应灯光将会在结果完全相同的情况下比全灯光渲染快42倍,确切点说,42.5倍。

我已经听到你的反对声音了:你们有没有测试概率灯(Probabilistic Lights)?嗯,概率灯确实会变快,但是……

在相同噪点限制的目标下,上面那个场景使用自适应灯光(Adaptive Lights)比使用概率灯(Probabilistic Lights)要快6.5倍。

自适应灯光,从一开始研发它的目的,就是为了让你能够在场景里放置 “无限多” 的灯光,唯一的限制就是你的动画软件本身,以及内存。纠结于要把场景中的灯光简化到最少的时代已经一去不复返了:请尽情地享受想放多少灯就放多少灯的光明的未来科技!

下方是对三张测试渲染的分析,场景中有 10531 盏随机颜色随机亮度的球体灯。

因为原本这项技术是要针对在 GPU 得到更好的灯光采样而开始研发的,所以这个技术不仅加速了多灯场景的渲染速度,而且(至少目前在 GPU 上)还能够显著加快即使只有一盏灯(其实是一盏穹顶灯光…… 😉 )的场景的渲染速度,平均可加快 1/3 的速度。

我会提到 GPU 并不只是技术上的原因:这完全归功于 GPU 团队的聪明才智,他们运用侧面解决问题的能力,以及他们疯狂的努力工作,我们才能获得这个原创的想法。

而 Vlado 的直觉和数学能力解决了某个关键问题,使得这个技术可以应用于 CPU,也可以支持灯光缓存(Light Cache)。

在 Chaos Group 公司,由于工作性质的关系,我能够很幸运地一窥研发幕后,在做了长时间的忠实观众后,我发现这里的实力确实太深了:看着那些天马行空的想法,一步一步变成一个完善的工具,简直让人眼花缭乱。

大伙受到欢乐气氛的鼓舞,清爽的气息渗透到各个部门的房间,渗透到遍布整个公司楼层的小休息处,最后,这样的情绪出现在每一个人带入办公室的工作态度中:这就好像在激烈的日常事物的风暴中进入了风暴的中心一般平静,它足够平静,让人不但能够产生天马行空的想法,还能够把它变成劳动的果实:维持并推进 V-Ray 的生态系统就是我们的日常。

下面是我们的 GPU 团队:慷慨大方,勤奋努力,极为靠谱,全心全意地改进软件。

一旦这些想法(经常会产生,而且往往是绝妙的想法)产生了,他们决不会因为困难而在一开始就放弃掉这些想法,而是用其天才的头脑,以谦逊,坚定,艰辛的数日数月的劳动,将这些想法慢慢培育成一如既往的实用的工具。

这样的合作方式,为之前认为不可行的领域开辟了新的研究途径,与此同时,对前人技术的不断完善也没有停止,而且我还听说会有更多像这样颠覆性的独特的原创渲染技术正在酝酿之中。

我认为,自适应灯光(Adaptive Lights)技术,将在渲染技术发展史上留下浓墨重彩的一笔,将来我们都会记得这一天,它会成为一个分水岭,将来人们谈论起一些事情,会说这是发生在自适应灯光出现 “以前” 还是 “以后”。

我希望这回我们不用花十年就能得到业界广泛的认可,大家会认识到:这是一群 Chaos Group 的天才共同打造的奇迹。

对于耐心的读者来说,您既可以现在下载 Service Pack 5 的 Beta 2,也可以等待2017年1月下旬发布的 Service Pack。

带着有点激动的自信心,祝您新年快乐!