走马观花看了一些实现全局光(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)了解较为深刻,毕竟有破解,近期的只是粗略的看了看官网的介绍。

renderman、arnold及全局光照的更多相关文章

  1. Unity 5 中的全局光照技术详解

    貌似是某位好人翻译的 https://unity3d.com/cn/learn/tutorials/topics/graphics/unity-5-lighting-and-rendering#rd? ...

  2. SVO实时全局光照优化(里程碑MK0):Sparse Voxel Octree based Global Illumination (SVO GI)

    完全自主实现,bloat-free.再次声明,这不是UE.U3D.CE.KlayGE! 老规矩,先贴图.后面有时间再补充描述. 1. 支持多跳间接全局光照2. 支持vxao/so.vxdiff/spe ...

  3. Unity 5 中的全局光照技术详解(建议收藏)

    本文整理自Unity全球官方网站,原文:UNITY 5 - LIGHTING AND RENDERING (文章较长,请耐心阅读)简介全局光照,简称GI,是一个用来模拟光的互动和反弹等复杂行为的算法, ...

  4. 全局光照:光线追踪、路径追踪与GI技术进化编年史

    全局光照(Global Illumination,简称 GI), 作为图形学中比较酷的概念之一,是指既考虑场景中来自光源的直接光照,又考虑经过场景中其他物体反射后的间接光照的一种渲染技术. 大家常听到 ...

  5. Unity预计算全局光照的学习(速度优化,LightProbe,LPPV)

    1.基本参数与使用 1.1 常规介绍 使用预计算光照需要在Window/Lighting面板下找到预计算光照选项,保持勾选预计算光照并保证场景中有一个光照静态的物体 此时在编辑器内构建后,预计算光照开 ...

  6. Unity 5 全局光照GI与新的烘焙系统初探

    http://blog.csdn.net/sparrowfc/article/details/45650013 GI是啥 Realtime GI,实时全局光照,听上去就是一个非常高大上的词,但是越高大 ...

  7. Unity 编辑器学习(二)之 全局光照(GI)

    光影流年,花影阡陌.光与影交织的岁月教育我们,不会使用光照的程序员不是个好美术. 一.概述 点击 Window > Lighting > Settings 会弹出Lighting窗口,这个 ...

  8. 基于预计算的全局光照(Global Illumination Based On Precomputation)

    目录 基于图像的光照(Image Based Lighting,IBL) The Split Sum Approximation 过滤环境贴图 预计算BRDF积分 预计算辐射度传输(Precomput ...

  9. SVO实时全局光照:Sparse Voxel Octree based Global Illumination (SVO GI)

    功能已实现,初步集成进来,暂未进行重度优化.但GI的效果已很明显.这里特地给出了开启实时GI前后的效果对比,比对场景如下:1.只有直接光照(方向光源)的场景.2在直接光照(方向光源)基础上开启了实时G ...

随机推荐

  1. 基础算法之冒泡排序Bubble Sort

    原理 将相邻的数据两两进行比较,按照从小到大或者从大到小的顺序进行位置交换,这样一趟过去后,最大或最小的数字被交换到了最后一位,然后从头开始再次进行两两比较交换,直到倒数第二位时结束.按照此规则,若干 ...

  2. Webstorm 下的Angular2.0开发之路

    人一旦上了年纪,记忆力就变得越来越不好. 最近写了许多的博文,倒不是为了给谁看,而是方便自己来搜索,不然一下子又忘记了. 如果恰巧帮助到了你,也是我的荣幸~~~~~~~~~~~~ 废话不多说,看正题~ ...

  3. js 中使用el表达式 关键总结:在js中使用el表达式一定要使用双引号

    js 中使用el表达式 关键总结:在js中使用el表达式一定要加双引号 js控制中用到了el表达式,最开始源码如下: var selected = ${requestScope.xxxxForm.re ...

  4. 话说Spring Security权限管理(源码)

    最近项目需要用到Spring Security的权限控制,故花了点时间简单的去看了一下其权限控制相关的源码(版本为4.2). AccessDecisionManager spring security ...

  5. Missing artifact com.oracle:ojdbc14:jar:10.2.0.4.0

    下载jar,导入到maven中cmd中输入:mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc14 -Dversion=1 ...

  6. oracle dbms_JOB

    添加一个任务,怎么老是报错 [SQL] DECLARE job1 number; begin dbms_job.submit(job1,'RESTUDY_SCORE_IMPORT',sysdate,' ...

  7. Java,Android 项目导入Eclipse常见错误

    一.导入的jar包不存在: 右键工程属性查看: 导入的第三方jar包不存在: 解决方法: 删除该jar包,得到该jar包并存至本地,再导入该jar包 二.中文字符乱码: 解决方法: 右键项目属性: 修 ...

  8. It matters, In the coming year ,i will stand here.

    人在安逸中会迷失自己,直至看不到远处的光亮.在一个人迷茫的时候便需要寻找认同感,于是我来到了这里.比我更加优秀的人都在默默的努力,我怎么能允许自己在原地踏步.在这一刻我似乎又看了黑夜中的一束光. 初识 ...

  9. 如何在脚本中获取进程ID(PID)

    我想要知道运行中脚本子shell的进程id.我该如何在shell脚本中得到PID. 当我在执行shell脚本时,它会启动一个叫子shell的进程.作为主shell的子进程,子shell将shell脚本 ...

  10. Bootstrap <基础八>图片

    Bootstrap 提供了三个可对图片应用简单样式的 class: .img-rounded:添加 border-radius:6px 来获得图片圆角. .img-circle:添加 border-r ...