CG橙子精彩导航: CG橙子搜索引擎 | 博客 | 动画视频
广告|项目|培训|竞价排名  
86CG > CG教程 > 渲染 > Mental Ray > Mental Ray的Final Gathering

Mental Ray的Final Gathering

类型:整理 | 来自:86CG | 时间:2007-12-4 |  点击:
什么是final gathering?
   Final Gathering是从视图里的点开始计算的。当一级光照射到物体的某个点上,final gather就被激活,同时会有许多光线以任意角度分散到该场景里,我们可以用这些光线来计算该点周围的光能量(即色彩信息),由此可知该点的颜色。这些信息是储存在光子图里的。然后通过查阅光子图的信息并用来给光线追踪加上反射光照明的效果,这就使得每个物体本质上都成为了一个光源。
   Maya / Mental Ray的Final Gathering教程
   首先,也是最重要的,关掉Maya的默认光源。选择Maya的默认Render Globals,Windows > Rendering Editors > Render Globals(Maya软件)....,然后向下翻卷到Render Options,打开,找到Enable Default Light选项,并取消选定。这样就可以保证在你的场景里没有其他的光源了。好了,现在我们从一个简单的场景开始吧,这是一个poly平面上的polygon球体,还有一个用该poly平面复制并稍微抬高后得到的物体作为这个场景的“光源”。
   材质方面呢,我用的是一个Lambert作为这个poly平面,并将diffuse 设置为8.00,所有的半透明选项都设置为0;至于球体,我用的则是如下的设置。

   至于“光源”物体,我用了另一个朗伯材质,且所有的半透明选项(Translucency)都设置为0,漫射值(diffuse)则为1,白热(Incandescence)也为1(即全白)。好了,现在不用管这些设定值,待会儿我们再说它们。
   现在来设定final gathering,按F5键,返回Rendering菜单,选择Render > Render Using Mental Ray.打开Render Globals,就是那个写有mentalrayGlobals的标签,向下翻卷到Quality区。打开到Render Quality,选择最后那个选项。 这样就进入了mentalrayOptions1,找到final gather区域并打开它,点击Final Gather,出现如下一些选项,Final Gather Rays, Min Radius,和Max Radius.它们的当前设定分别为1000、0.000和0.000,现在我们要改变这些设定,这样才能达到我们要作的场景的要求。先将Final Gather Rays的值改为300(待会儿我们还会改动这个值的)。 Minimum和最大半径的值则按下面这个基于场景大小的运算法则来设置,一般算法是,Maximum Radius应该是场景大小(按Maya单位)的5-10%,这就要用到Maya中的测量工具了,在顶视图中,选择Create > Measure Tools > Distance Tool,并用下面的方法测量网格。

所以,从上我们可以得到场景的大小是12个单位(在非正方形景色中,以较长的那个尺寸为准),因而,从上可得,Maximum Radius的值应该是1.2。现在来计算Min Radius,Min Radius应该是Maximum Radius的10%,所以Minimum Radius的值为0.12.行了,现在我们来快速渲染一个瞧瞧!

   嗯,效果还不错,现在我们打开Mental Ray的标准Render Globals,向下翻卷,打开Final Gather选项下面的Sampling Quality,输入下面数值,Minimum Samples为-2,Max Samples为2。再重新渲染一次。


 这次渲染得到图形比上次的要好,而且边缘也比较清晰,遗憾的是,阴影看起来有点脏,要解决这个问题只需到Render Globals里,将Final Gather Rays的值改为1000,增加final gather的品质(光线越多,渲染的时间就越长),同样在Sampling Quality选项里,关掉Jitter,这样可以减少附带的问题出现,把过滤方式从Box改成Filter,就用它的默认值就行了,太大的话会使得场景看起来很模糊,关闭Rendering区里的Scanline(Scanline可以渲染场景中一些不需要光线追踪的部分),再渲染一次。

   现在可以看到我们的进展情况,图形上的斑点减少了,而且整个图像看起来也更顺眼了。在最后的这次测试渲染中,我将Final Gather Rays设置成5000束光线,这大概有点多,会使得渲染时间过长,但得到的阴影要好得多了。

技巧:
   (A)在每个物体材质里,都有一个mental ray表单,这个表单里有一些额外选项,有Irradiance和Irradiance Colour.其中最好玩的是Irradiance Colour,这个选项主要是控制物体所能接受到的“光线”,它的当前设定为pure white,表示物体是完全照亮,降低这个选项值就可以计算出场景中的物体所接受到的final gather,例如,在上面的例子中,如果将“光源”物体的尺寸加大, 即,将物体的white变换成incandescence后,场景接受的“光线”就更多,现在要消除场景中的额外光线,只需做到如下两点中的一点:要么打开材质属性,并将Mental Ray列表中的Irradiance Colour值减小,这样就使得接受到的“光线”减少,抵消了场景中多余的光线;另一个办法是,加大“光源”体的尺寸,并减小incandescence的值,这样就可以整体上减小光照效果。
   此外,此处的Photon Attributes(光子属性)都不需要改动,所以“Derive From Maya”通常都是最省心的选项了。同样地,在每个物体的属性区里,也有一个Mental Ray区域,在这个区域里,你可以将“Derives From Maya”改成你自己需要的选项,可以让一个物体发射或接受光子,或者两者皆是,也可以使用Global Illumination,将某个圆形物体设置成一个发射而不接受光线的物体。
   (B)在Mental Ray全局的属性编辑器里,有一个名为Translation的区域,打开,出现一个Export Verbosity,它的默认值是“Warning Messages”,将它改成其他的选项,就可以得到Maya Output Window(输出窗)里一些非常有用的信息,例如,将它改为“Info Message”,就可以得到有关你的场景的所有信息,这可是非常有用的,但是大多数三维艺术家都觉得最实用的还是可以让你预先知道要渲染一个场景得需要多少时间。
   (C)BSP-二元空间分割,Mental Ray就是采用BSP方法来将场景分割成各个可用的储存块,且会在处理完一个储存块后移至另一个。所以,你可以在Mental Ray Render Globals的Memory与Performace区域里找到一些选项来改变BSP树的使用方式,这里有如下三种选项。

BSP大小,BSP深度和BSP的最大存储空间。不用操心BSP的最大存储空间,BSP的大小是指在Mental Ray要处理的场景中的三角形的数目,而BSP的深度是指Mental Ray要达到这个深度时所需的最大细分次数。Size(大小)的最佳值是4,5或者6,而Depth(深度)则可以用以下三个值中的一个:如果场景中包含的几何体较为简单则用25,中等复杂 则用40,如果场景中的几何体很复杂则用55。如果深度的值超过60,就会大幅增加渲染时间。
   (D)渗色—回想一下在这篇教程开始时,我们将所有的默认光线都关闭了,这样就是得整个场景里只有“物体”光源,而不会有其他的“外来”光源影响场景,如果灯是开着的,就会使得物体显示出渗色来,意思就是,如果在一个白色的平面上放置一个黄色的盒子,你可能会注意到,黄色盒子旁边的白色平面出现了渗色,即在白色的平面上出现黄色的映光。这种效果有时是需要的,有时是多余的,对于那些希望利用这种渗色效果的人而言,我觉得还是用一个或者多个光源较好(当然这也是取决于用户和场景的要求)。看看下面这张图。

   这是一张快速渲染图,里面没有光源,只有“物体”映光。

   在这幅图里,加了一个聚光灯(强度0.5%),注意平面体上的黄色渗色。如果使用正确,这个可以使得场景中的光照非常真实。感谢阅读,希望您会觉得这是一篇有用的教程。

 

(完)
可打印版本 | 文章评论 | 我来纠错

|网友评论

    笔名:

    内容:

        

    iPad售楼系统软件

    国内最好的全景漫游软件任我游

    iHouse售楼系统软件

    谁都可以轻松开发APP(HTML5APP)

    全景视频3D视频视景360

    HTML5移动平台iOS/Android解决方案

    强大的地图引擎ZoomMap

    环物浏览器Object360

    |热点关注

    关于我们 - 版权隐私 - 友情链接 - 广告服务 - 项目合作 - 网站地图 - 联系方式

    ©Copyright by 86CG.COM, 2006-2013. All rights reserved 京ICP备06059503号