renderman、arnold及全局光照

时间:2023-12-13 15:42:44

走马观花看了一些实现全局光(global illumination)的文章,都是非实时电影级的。的确可以分为两个阵营,一是pixar的renderman中常用的reyes+点云,感觉pixar一路走来都是在通过各种缓存加速,不同的是缓存什么,缓存到哪里去。非常喜欢各种tricky的办法,给艺术家们充分的控制,或许他们的艺术家真的是太多了,太有创造性了,reyes流程目标是做高精度的图片,但并没有涉及多少真实感的东西,所以他们做动画感觉还是很棒的,尤其是各种动物的,因为这不需要物理上多么真实,给艺术家们足够的发挥空间、足够快、效果好就足够了。但是,渲染科幻电影,我觉得就不如arnold得心应手了,科幻片里的很多东西只需要按照物理公式算就可以了,给它采样数控制一下精度就足够了,如果用各种tricky的手段调节就各种出力不讨好了,而且人工成本比机器成本高太多,不划算。12年pixar推出多分辨率的辐射能缓存来实现渐进渲染,使得艺术家能更高效的工作,这也是业界的趋势,pixar稍微晚了一点。这不能怪它,因为reyes本身实现渐进渲染就不是那么直观和简单的事情。最近的科幻大片多用arnold渲染,也证实了我的观点。不过,据pixar说,reyes流程对他们还是很重要的,虽然他们现在有了完整的光线追踪,但是有一些特殊的场景还是无法用光线追踪渲染,需要reyes。arnold却不需要。

总结一下就是,pixar的prman(PhotoRealistic RenderMan)或者reyes(render every thing you ever saw)说的是你可以用我们的工具做出像照片一样的东西而且给你足够多的灵活性——你可以做任何你见过(其实你没见过的也能做,而且大家喜闻乐见,当然难度其实比见过的要小,毕竟你没的参照,不好乱说真不真)的东西,但是不可否认,要渲染出真实感的一张图片,需要各种调节输出各种通道各种缓存,当然,刚查了一下最近的renderman 18,好像有所改善,已经加入基于物理的材质灯光等,但是我觉得在速度以及质量综合看来仍然不是arnold的对手,虽然prman推出二十多年,但是并没有像arnold那样一直专心优化raytrace。对于我们这些非动画艺术家而言,物理的无偏的渲染器更受青睐,因为毫不费力就能出很赞的图(说的就跟我用arnold做出过很赞的图似的)。但是,我的感觉是,arnold/unbiased physically based是正途,虽然路很艰辛,但是意义要大于renderman的各种tricky的解法,更言重点说就是,renderman像是自己制造了一些问题,然后再去修补它,而对于arnold而言,只有一个问题,那就是速度,而他们也一直在做这件事。

另外,renderman因为有各种trick各种加速方法,所以出了不少论文,arnold就比较凄凉,虽然快的惊呆世人,但是看起来并没有用什么很非同寻常的加速方式,所以没多少文章,也或许是商业机密。如果没用什么高深算法而纯粹是代码上的优化而达到的速度,那它人想要追赶更是难上加难,毕竟有时间的积累。

以上只是我的一些浅见,欢迎拍砖。p.s.我对早期的renderman(如13)了解较为深刻,毕竟有破解,近期的只是粗略的看了看官网的介绍。