有成语言,生不逢时,反过来说,你为什么成功,你得生的逢时。Arnold为什么成功,因为它填补了一个空白,具体的时间段是2011左右,在那个时候,mental ray依旧很渣;RenderMan,还是高高在上,没几个人愿意用。 于是乎,在这个时间段,Arnold的出现一下子填补了一个巨大的空缺,就是MR的GI系统非常狗屎,RM的GI非常难用,Arnold的GI非常好用,正如上面所说,参数少的多,极大的解放了用户,让真正方便易用的GI进入了CG生产——MR的GI,看看这么多年做的Image-base Lighting还有Physical-based XXX,还有Photon Mapping,还有什么Irradiance Particle,都是一堆什么样的垃圾, 不好用不好调;RenderMan,那个GI, 无论是Point-based还是PBR,都不好用,还得需要很有经验的艺术家和TD,需要辅助开发,价高质次。这也是目前的一个趋势,大量的工作室在裁Lighting TD,由于工具的发展极大的减小了对人力素质的需求,一帮爷爷还得供着。 回到软件本身,受制于架构,已经不可能有速度上的提升,可以说只会越来越慢。其纹理系统是基于OIIO的,性能比较渣,而对于生产,纹理的性能极大的影响渲染速度。哪怕未来有了OSL,问题还是无法解决,SPI自己拥有OSL版本的Arnold比用DSO的慢了一倍,更别说未来当我们需要有4K分辨率的片子的时候,渲染时间将是一个遥遥无期的噩梦。Arnold以DSO为Shading System,这个有巨大的风险,一旦API改了,你所写的代码,很大程度得重新编译重新撸,兼容性有问题。还有一个非常致命的缺陷,Arnold处理Caustics是无力的,因为只是PT,不是BDPT,不知未来是否会做VCM,但是从这一点上,已经可以预见其未来。还有一个现在没有今后也不会解决的问题,就是Per Light AOV。未来一定是Physical-based Composition的天下,由于GI的存在,传统的Diffuse/Specular其实已经没用了,因为一切都是在互相影响,这个时候你需要从Light Path解决这个问题,但是由于目前架构如此,不可能更改了,所以这个功能也永远不可能实现。