怎样评价 Arnold 渲染器?

怎样评价 Arnold 渲染器?

我发现很多人喜欢唱衰Arnold,作为一个开发了十多年渲染器的老司机出来说几句自认为公道的话:

1、Arnold是真正从学术层面也推进了渲染技术进步的伟大产品,就算Arnold没了,它研发出的算法所有渲染器都在用(是真的)

2、Arnold开创了基于物理着色(Physically Based Shading)和Path Tracing在工业界应用的全新时代,是Arnold作为先驱教育了行业和用户,否则后来的Redshift等渲染器也没得玩

3、很多人(特别是做点场景特简单的广告短片的小用户)喜欢抨击Arnold速度太慢,其实这些人根本不是Arnold的目标用户。Arnold是针对Elysium这种海量几何体和纹理,大规模制作、高投资的一线电影特效设计的渲染器,特点是通过极优化的数据存储方式(包括压缩和Quantization),有效的渲染海量的数据,当然代价就是牺牲渲染性能。

4、Arnold拥有无可比拟的易用性、稳定性、接口十分清晰,友好,特别适合于制作大型的电影特效项目。这些是它的核心竞争力之一,也是其它产品(目前)无法比拟的。现在有了GPU渲染,我估计可以在970显卡上达到志强64核心CPU的渲染速度,对于小工作室、中等规模的影视项目还是很有意义的。

5、对于Arnold的未来,资金上基本不用担心,有财大气粗的Autodesk撑腰呢。况且现在已经成了Autodesk的王牌软件(3ds Max, Maya)的内置渲染器,肯定还是会大力投入和大力发展。

6、要是问Arnold的GPU渲染为啥出得这么慢,我只能从技术上说,慢工出细活,目前只有Arnold能把GPU渲染做到所谓技术正确的程度(虽然商业上不一定正确),而且Arnold这帮人做事特别稳,发布出来的通常就是精品,不像某些其他软件公司发布功能特别快,用户拿到手没一个能用的。

7、Arnold的老板Marcos是个非常Tough的性格,这种人做啥事都能坚持到底,而且会死抠细节完美(看Arnold的API设计就知道了),既然已经坚持了十几年,我觉得再坚持十几年应该问题不大不用担心。

关于Arnold的GPU渲染支持,我记得14年在SIGGRAPH上就有Arnold的GPU渲染演示(同年Cycles的作者加入了Arnold),不知不觉4年了,我记得原来是基于OpenCL的演示,怎么现在变成OptiX了……不过Arnold支持GPU的方式和态度确实是技术正确的:

1、首先材质的支持,必须基于编译器技术,才能支持把用户编写的Shader编译到GPU可以运行的指令集上,比如NVIDIA的PTX(对于OpenCL有SPIR-V)

2、应该是一个GPU渲染开关就可以启用GPU渲染模式,而不是类似V-Ray RT完全是另外一个渲染器,这样用户可以无缝切换。开启GPU渲染后的效果应该是与CPU渲染一致的。

3、API接口层面也是兼容的,所以Arnold能够快速无缝的让GPU渲染支持所有已经支持的DCC软件的插件。甚至支持把C++或者OSL编写的Shader编译到GPU指令集。

看到过一些Arnold GPU版本的内部测试,还是值得期待一下的,相信可以改变很多人的看法。