mental ray - 3 - outdoor scenes & men 当物体在曝露在白天的户外的话,它们主要可能受到两种光照的影响,即蓝色的天光和金黄色的太阳光(天光是由于阳光穿过空气的过程中被气流多次折射并且被空气中的细微悬浮物漫放射所形成的),阳光可以通过简单的光源来模拟,天光可以通过一个包围场景的巨大球体来模拟,不过我们怎样让这个巨大的球体来对物体产生照明效果呢?方法就是利用 final gather 算法,并且让球体的材质带有一定的自发光。 稍后我们可以看到这种方法的效果。某些情况下,也许我们只用 final gather 就足以照亮我们的场景,但如果场景中有些部分不能够被天光和阳光直接照射到的话,只单独使用 final gather 也许会有问题。 mr 的 final gather 和其他一些同样拥有全局照明能力的渲染器相比有个缺点,那就是你不能设置场景中 final gather 光线的强度(译注: fg 的强度和材质的属性有关,但你不能单独设置 fg 的强度),由于这个原因,我们必须借助于 global illumination (译注:这里说必须太夸张了,为了速度着想,很多情况下我们可以用补光或补负灯光的方法)。
我们应该怎样让我们创建的球体变成光源呢?解决办法就是 final gathering ,按照前面几课学到的知识,进入 renderglobals(mentalray) > quality ,点击 renderquality 旁边的小按钮创建 mentalrayoptions1 ,展开 mentalrayoptions1 的 final gather 栏并且勾选 final gather ,为了能够快速的调节和预览,将 final gather rays 降低为 100 并且渲染场景。渲染后你将会看到天光所产生的效果了(译注:你渲染的结果可能会比这张图亮得多,前面我已经提到过,这是由于现在场景中没有创建任何灯光,故 maya 的默认灯光会参与渲染,导致结果过亮,为了排除 maya 默认灯光的影响,你可以创建一盏强度为 0 的灯光,在稍后创建了阳光的光源后就可以把它删除或隐藏了)。
接下来,我们创建太阳光, to do this ,创建一盏 spotlight 。你也许会问为什么不使用和太阳光更为相似的 directional light ?我这样做的目的是因为 directional light 不能够用于计算 global illumination ,但我们这里要用到 gi ,所以我们必须找到另外一个解决方法,那就是使用 spotlight (译注: directional light 是能够用于计算 gi 的,不知是不是作者搞错了)。由于我们使用的是 spotlight ,故我们应该将其放置在离寺庙模型很远的地方以使它的照明特点更接近于 directional light 。
刚才渲染所得到的结果看上去不能令人满意,我们需要将影响 final gather 品质的相关数值调得再高一些,不过我们稍候再调节,现在,回想一下我之前说过的关于 fg 的缺点 ——mr 的 final gather 和其他一些同样拥有全局照明能力的渲染器相比有个缺点,那就是你不能设置场景中 final gather 光线的强度,这个缺点在我们刚才渲染的那种图中可以看到,寺庙内部的区域的照明不够强,这使得画面看上去不太真实,这也是我们为什么需要 global illumination 帮助的原因。 to setup the global illumination ,打开 spotlight 的属性编辑器并且在 mental ray > caustics and global illumination 栏下勾选 emit photons 选项,并且,在 render globals (mentalray) > mentalrayoptions1 > caustics/global illumination 栏勾选 global illum 选项,之后,我们来做一下测试渲染,你会发现现在的渲染结果和没有打开 gi 前没有多大的区别,这是因为 global illumination 的强度不够所造成的,为了让 gi 的效果更明亮一些,在 spotlight 的属性编辑器并且把 exponent 的数值调为 1.6 ,之后渲染,如图所示