在3dmax5高级渲染器实例教程(一)中,介绍了光跟踪器,在这里,将对3dmax的另外一个高级渲染器进行介绍。
光能传递渲染器
光能传递渲染器是一种全局光照系统,它能在一个场景中重现从物体表面反弹的自然光线,实现更加真实和物理上精确的照明结果。
光能传递渲染器基于几何学计算光从物体表面的反弹。而几何面即三角形是光能传递计算中的最小的单位。大的表面可能需要被细分成小的三角形面而获得更精确的结果。同时,光能传递的计算质量可以随意调节,而且一旦计算完光能传递,你就可以从任何角度观察场景,而不需要反复地渲染。
在这里我就不多说了,我们先建立一个简单的室内模型。
1. 在光能传递中,单位是非常重要的。要获得精确的结果,场景中的单位是一个基础。就是说如果单位是英寸,一个100X200X96单位的房间可以被一个相当于60瓦的灯泡的光度控制灯正确照明,但是假如你的单位是米的话,相同的场景会变得非常暗。在建立模型前,我们必须定义好单位。单击Customize(自定义)│Unites Setup(单位设定),在弹出的对话框中勾选Metric,并选择Centimeters(厘米)为单位。如图01所示。
2. 在3dmax中建立一个500X900X300单位的室内环境,并在一堵墙上开一个窗户。如图02所示。注意墙与墙之间不能出现重叠的情况。
3. 在 Front视图中建立一个摄影机,并将它移动到160单位处(即1.6米高的地方)。
4. 各种光度控制灯和日光光都适用于光能传递渲染器,单击Create(创建)∣Systems(系统)∣Daylight(日光灯)按钮,在Top视图中建立一盏日光灯。如图03所示。
5. 在日光灯的修改面板中单击Position(位置)下的Setup(设定)按钮,并设置单前时间为11点35分56秒,日期是03年8月8日。如图04所示。
6. 单击Location(特定区域)下的Get Location(选择区域)按钮,在弹出的对话框中,选择Map(地图)为Asia,并在地图上单击身处的地方。如图05所示。现在场景的日光灯就是你定义的位置的太阳光了。
7. 按“M”键或者单击Rendering(渲染)∣Material Editor(材质编辑器),打开材质编辑窗口。在材质编辑窗口中,单击材质名字旁的Standard(标准)按钮,并在弹出的材质贴图对话框中选择Advanced Lighting Override(高级灯光材质)。如图06所示。
8. 在Override Material Physical Properties(材质的物理属性)下,设置Reflectance Scale(反射比例)和Color Bleed(色彩蔓延)为0.6。如图07所示。
9. 单击Base Material(基础材质)旁的Standard(标准)按钮,设置墙、地板和天花的基本材质参数。
一切制作完成,现在我们打开光能传递的对话框。
10. 按9或者单击Rendering(渲染)∣Advanced Lighting(高级灯光),在弹出的高级灯光窗口中,选择Radiosity(光能传递)渲染类型。如图08所示。
在光能传递渲染器的窗口中,第一个卷展栏是Radiosity Processing Parameters(光能传递处理参数),该卷展栏控制光能传递如何处理场景中物体之间光的相互作用。
Initial Quality(初始质量)参数:设定光能传递的质量级别。通常用40-70的数值进行测试,85-99适合最终渲染。数值越低,质量越差,但是所用的时间越长。
Refine Iterations(All Objects)(反复细化所有物体)参数:对场景中每个物体定义一个超越全局设置的细化值。一般在不需要太精确的模型里,该值可以设置为2-4。
Refine Iterations(Selected Objects)(反复细化指定物体)参数:在达到所需的质量的最初计算后,可以进行2次处理细化选择的物体。在较大的场景中,有些物体需要较高的精度,可以运用该参数,设置其细化参数。
Process Refine Iterations Stored in Object(将反复细化处理参数保存在物体里)选项:无需太多解释,勾选就好了。
Filering(滤波)参数:平均在相邻面之间的光能传递,该值越高,越多的面被平均。设置少量的滤波比不设置滤波时采用更高的初始质量设置所得到的效果更好。如图09所示。
Logarithmic Exposure Control(对数曝光控制器),单击旁边的Setup按钮。其设置和光追踪器里面有介绍,这里就不多说了。如图10所示。
Display Radiosity in Viewport(在视图中显示光能传递的结果),一般都勾选它,如果显卡不行的话还是不要勾选了。
第二栏是Radiosity Meshing Parameters(光能传递网格参数)卷展栏,可以在该栏里面几何控制场景物体的全局细分参数。光能传递以后可以在视图中看到被细分的网格物体。
Global Subdivision Settings(全局细分设定)下的Enabled(打开)一旦被勾选,3dmax就会自动细分场景中的物体。旁边的Meshing Size(网格大小)是细分时网格的大小,数值越大,细化成网格的面越少,速度就越快。反之细化成网格的面就越多,渲染的时间就越长。
除了在全局细分设定下可以设置细分时网格的大小,在物体的属性对话框中都可以设置个别物体的细分参数。
选择需要单独细分的物体,单击右键,选择Properties(属性)命令。取消勾选Use Global Subdivision Settings(使用全局细分设定),并勾选下面的Subdivide(细分)选项,设置旁边的Meshing size(网格大小)。如图11所示。
第四栏是Rendering Parameters(渲染参数)卷展栏:可以规定在渲染的过程中如何使用解决方案,并可以增加重聚的步骤。
Regather Indirect Illumination(重聚间接光)选项:勾选它可以对已经渲染好的图像进行额外的调整。重聚基于单个像素对图像采样,它能够去除光能传递没法优化的缺陷。它处理过程与光追踪非常相似,其设置几乎也是相同的,故请参见3dmax5高级渲染器实例教程(一)。
光能传递的基本参数已经介绍完了,跟着我们来渲染刚才制作的场景。
打开光能传递渲染器窗口,将Initial Quality(初始质量)设置为60;Refine Iterations(All Objects)(复细化所有物体)设置为2;Filering(滤波)设置为3;Logarithmic Exposure Control(对数曝光控制器),单击旁边的Setup按钮,设置环境颜色为白色,并设置对数曝光参数。如图12所示。
按Start按钮,开始光能传递的计算。如图13所示。
观察渲染出来的图像,四平八稳,没有一点层次感。那是因为我们并没有设置细分网格所致。
打开Radiosity Meshing Parameters(光能传递网格参数)卷展栏,勾选其下的Enable(打开),并设置旁边的Meshing Size(网格大小)为25cm。单击Reset All按钮,重设所有计算。单击Start按钮,再次开始计算光能传递。如图14所示。
这次虽然渲染的图像层次感是出现了,但是却产生了讨厌的黑斑。
打开Rendering Parameters(渲染参数)卷展栏,勾选Regather Indirect Illumination(重聚间接光)选项,设置Rays per Sample(每个采样的光线数目)为160;并设置Filter Radius(pixels)(滤光器半径)为10个像素。
单击Reset All按钮,重设所有计算。单击Start按钮,再次开始计算光能传递。如图15所示。
现在讨厌的黑斑已经消失了,提高初始质量到90就可以得到更为真实的效果了。如图16所示。