为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

Maya 渲染教程 PDF

2017-10-20 8页 doc 23KB 51阅读

用户头像

is_321635

暂无简介

举报
Maya 渲染教程 PDFMaya 渲染教程 PDF Maya Render概念 marswangcradle.com.tw 卫道科技 王以斌 前言 Render是3D软件最后输出结果时必经的一道手续也是最后一个相当重要的关卡如果掌控好的话可以让您在短时间内达到最佳的结果但是万一没有好好地去拿捏参数可能是赔了夫人又折兵不但平白损失了时间又获得不满意的结果。有当过兵的读者一定曾背颂过用枪时机同样地在Render里我们也有算图时机因为不同的设定会符合不同的需求这也为何Maya后来整合了Mental Ray以弥补在需求上的不足。至于这两种算图引擎到底适用在...
Maya 渲染教程 PDF
Maya 渲染教程 PDF Maya Render概念 marswangcradle.com.tw 卫道科技 王以斌 前言 Render是3D软件最后输出结果时必经的一道手续也是最后一个相当重要的关卡如果掌控好的话可以让您在短时间内达到最佳的结果但是万一没有好好地去拿捏参数可能是赔了夫人又折兵不但平白损失了时间又获得不满意的结果。有当过兵的读者一定曾背颂过用枪时机同样地在Render里我们也有算图时机因为不同的设定会符合不同的需求这也为何Maya后来整合了Mental Ray以弥补在需求上的不足。至于这两种算图引擎到底适用在什么样的场合上就让我们来探讨一下。 Shadow Light和Shadow一直是相互作用的环境因素并且对于整个气氛的营造有相当大的影响力因此我们在设定不同的场景时会搭配不同的灯光与阴影的效果。例如在室外景强烈阳光所产生的阴影效果是较为锐利的但是相对于室内景中的柔和灯光所产生的阴影却是呈现另一种风貌当此阴影离物体越远时会产生越模糊的效果。有关Shadow在Maya的产生方式我们利用下图来做解释 在产生阴影之前会在灯光处建立一张Depth Map此Depth Map会记录下不同物体和灯光之间的距离越白的颜色代表靠近灯光越黑的颜色代表远离灯光。之后测量值白色箭头会和储存深度的数值黑色箭头做比较当测量值的距离大于储存深度的数值时那么这一个点就是产生阴影的位置。 Maya Software Shadow 当Maya在计算这些深度信息如果产生了不正确的数值时就有可能会出现Self-Shadow的问题。以下图来解释 当取样值在物体表面上储存一个Dmap深度数据但是因为一个pixel所含盖的范围大于此深度数据因此会造成深度数据不正确的情况发生。如果以深度数据当作基准点来说当数据比基准点还近时则会出现白色但是如果比基准点还远的话就会出现黑色因此即使在一个平面上也会因为Self-Shadow的原因而造成类似波纹或条状的情况发生。一般解决Self-Shadow有两个重要的参数一个是Dmap Bias另一个是Use Mid Dist Damp。当我们提高Dmap Bias参数时最主要是让远于Dmap深度的点往前提前如此便能确保黑白点都比Dmap深度数值更接近灯光因此便能校正Self-Shadow的问题图4但是在使用上不可将Dmap Bias的值设的过大不然会造成阴影脱离物体表面让物体产生飘浮在空中的错误情况发生。另一个方法Use Mid Dist Damp是直接取两片表面的中心点来当做Dmap深度的基准点因此不管黑点或白点一定会比基准点还接近灯光因此也就不会有Self-Shadow的问题了。 当一个物体能产生出立体感那是因为物体有深度的关系也因为有这个深度因素才能表现出物体的阴暗面。在Maya Software Render中使用两种方式来制定阴影一种是Depth Map Shadow 另一种是Raytrace Shadow这两种阴影最大的不同点是Depth Map Shadow是在算图之前就已经产生了但是Raytrace Shadow是在算图的过程中才产生的。因此在速度上Depth Map Shadow是比Raytrace Shadow快很多但是在品质上则是以Raytrace Shadow较好。对于这两种阴影的限制我们以下就分别来做说明 Depth Map Shadow 最常使用到的参数就是Dmap Resolution其实这就是Depth Map的图档大小当Dmap Resolution数值很小时就代表将一张小图档贴在一片大的表面上因此所产生出来的阴影会造成严重的锯齿化解决方法之一就是提高Dmap Resolution的数值。但是如果场景过大迫使必须一直提高Dmap Resolution数值才能获得较佳的阴影品质此举势必会影响到算图的速度其实最快的解决方法就是点选地板将属性编辑器Render Stats字段中的Casts Shadows关闭即可在此并不需要调整任何Dmap Resolution数值。另外如果要产生柔边的阴影当Dmap Filter Size数值使用过高时也会影响到算图的效能最好的方式是降低Dmap Resolution数值再搭配低的Dmap Filter Size数值。以下图 为例 最后阴影柔边的结果并没有什么差异性但是较高数值的Dmap Resolution和Dmap Filter Size却是在算图上足足慢上四倍的时间。 Depth Map Shadow所产生的阴影柔边效果是全面性并无法产生出渐渐柔化的效果并且对于有透空贴图的物体也无法计算出有透空的阴影因此这些有特殊需求的阴影就得靠Raytrace Shadow来达成。由于Raytrace Shadow的算图时间较长除非有这四大需求才会动用到它1.要产生出有透空贴图物体的阴影2.要产生出有彩色透明的阴影3.要产生出渐渐衰减的阴影4.希望Ambient Light能产生出阴影。 有关产生彩色阴影的部份必须在材质的Transparency贴上一张彩色贴图才可以呈现。至于如何控制衰减的阴影可以藉由Light Radius和Shadow Rays这两个参数。Light Radius主要控制衰减的程度数值越大会越明显Shadow Rays主要控制阴影的品质数值越大品质越好但是相对地算图时间也会提高。 Mental Ray Shadow 在Mental Ray中同样提供了Depth Map Shadow和Raytrace Shadow至于Mental Ray所提供的这两种Shadow到底好处在那里又有那些功能是Maya Software Render所达不到的呢接下来我们就分别来做探讨。Mental Ray的Depth Map Shadow基本上的算法和Maya是类似的只不过它在产生阴影的准确度较高最明显的一个部份就是Self-Shadow的问题在Mental Ray中已经解决了Self-Shadow的问题因此并没有Self-Shadow的参数提供使用。在Motion Blur方面Maya Software render无法计算出有Motion Blur的影子这方面唯有使用Mental Ray才可以做到。以下图来看不同算法的结果 Raytrace Shadow不但在动态模糊的表现上比Depth Map Shadow还来的正确它也可以表现出有透明度物体的阴影 此物体有设透明度在Raytrace Shadow的颜色比Depth Map Shadow的颜色还淡 。有关在Volume质量光部份也唯有Mental Ray的Raytrace Shadow才能算出穿透过透明贴图的结果这部份在Maya和Mental Ray的Depth Map Shadow是无法办到的。 Light 有关在灯光方面我们可以将Maya所提供的render定义为『直接照明』将Mental Ray所提供的render定义为『间接照明』。 所谓的『直接照明』就是光线直接在物体或是场景上所产生的亮度至于『间接照明』是光线经由物体或是场景之间的反射和传递所产生的亮度 。Global Illumination就是使用到『间接照明』的技术而Caustics也就是『间接照明』的所呈现的效果之一。那什么是Caustics呢简单的说Caustics可以定义为一种聚光的效果例如光线穿透过折射的玻璃杯所呈现的聚光效果 或是金属反光在其它表面所产生的光影效果或是在泳池中的水波反射到磁砖的光影效果这些都可以称为Caustics。有一点注意的是Directional Light并不支持Caustics的算法。 Global Illumination Global Illumination和Caustics并无法经由一般的Raytrace来计算出结果Mental Ray为了解决此问题使用了一种叫Photon Map的方式来计算。同样灯光是光的来源但不是使用灯光的强度Intensity来照明而是以光子Photon来当做传播的能量我们可以想象这些光子如同上油漆的弹力球一样会在环境中一直反弹着直到能量被吸引掉或消失在无限的距离时才会终止。而这些光子在反弹过程中会将能量记录在Photon Map里以做为运算场景时所需的照明。以图为例此两张图的灯光摆设完全相同由上往下打但是在结果上却有明显的差异。以间接照明来说明因为光子打在地板反射的原因才会造成球体的下半部较为明亮另一方面在环境中并没有设定顶盖因此球体并没有来自顶盖的反射这也是造成上半部黑暗的原因。 由于Global Illumination是属于间接照明因此在呈现上并没有像直接照明那么直接通常必须经由反复地测试才可以得到满意的结果。以下就简单地来介绍一下某些重要的参数设定及步骤至于数值只是提供 参考因为整个结果会依不同的场景大小而改变。一开始将Spot Light的Intensity设为0并勾选Emit Photons至Render Globals 的mental ray将Quality 改为 PreviewGloballlum。 接下来我们分四个步骤来调整 1.调整Energy和Exponent数值Energy三个字段代表RGB数值如果数值提高代表能量加强会让反弹次数变多使整个画面变更亮。Exponent代表衰减值数值增加代表衰减越快。 2.调整光子颗粒大小以上图来看最左边那张图可以很清楚地看到一颗颗的光子的形状经由调整光子的Global Illum Radius数值可以解决此问题当数值增加到没有任何改变时我们就可以往下一个步骤前进 3.调整Global Illum Accuracy此参数最主要是提供光子之间的混合程度当数值越大溶合的程度就越好当画面已经生现较柔和的结果时我们就可以进行最后的一个步骤 4.增加Global Illum Photons的数量。有关调整四个步骤的参数值都是等一个参数调整到没什么改变时才会接下去另一个参数来调整。 Final Gather Final Gather同样也是属于间接照明的一种它可以和Global Illumination一起共享或是单独来做运算。有关Final Gather的算法它会认定于场景中的每一个物体都可以当做是一个灯光的来源因此在场景中不需要任何灯光就可以达到照明的效果。但是Final Gather和Global Illumination有一个最大的不同点Global Illumination会藉由光子在环境中重复地反射但是Final Gather只会藉由光线Ray做一次投射。因此Final Gather Ray可以将物体颜色或灯光的漫射传递到另一个物体上但是这只允许针对第一个表面对于从第二个表面就不会有反射的效果了。 Final Gather通常会使用一个半球体来当做照明的来源在半球体表面上的每个点都可以想象为直接照明的每盏灯光但是如果Final Gather都对每个点来做运算时就会如同场景中布满了灯光一样肯定会造成相当大的算图负担。因此为了增加算图的效能Final Gather会以一个区域的点来做为取样的平均值至于定义这个区域的范围大小就是使用Min Radius 和Max Radius这两个参数来决定一般Max Radius的数值可以取场景的10来做为大小Min Radius的数值则是取Max Radius的10来做为大小。有关Final Gather的使用时机有下列几种状况1.适合使用在灯光没有做大幅度改变的环境下及在一个灯光漫涞幕肪忱铩?.解决因为Global Illumination所造成影片闪烁的问题和较低光子数目的环境中。3.为了求得更好更细腻的画质。4.与Global Illumination结合使用以获得更拟真的画面。5.为了获得令人信服的阴影效果。6.为了排除阴暗角落的问题。 接下来我们用一个简单的场景来介绍Final Gather在场景中除了圆球、地板和Directional Light外另外有一个半球体来做为环境的灯光来源。在材质的设定上都以Lambert为主颜色部份将半球体设为蓝色圆球设为红色地板设为白色。首先至Render Globals 将Render Using 改为mental ray并勾选Final Gather启动其算图设定。首先我们先测试一个没有灯光的环境将Directional Light的Illuminates By Default选项取消提高半球体材质的Incandescence数值让整个场景的光源来自于半球体。有关Final Gather rays的数值会取决于最后的影像画质当数值越高所获得的画质越佳。在一般做测试时我们可以将Final Gather rays降低为100以加快算图的速度等最后确定后再调高其数值。有关要让物体颜色渗色Bleed到其它表面时可以调整其材质的Ambient Color或是Incandescence。以图为例如果我们希望红色圆球的颜色投射到地板上有两种作法一个是提高Ambient Color的明暗度V数值另一个是调整Incandescence的颜色为红色并调整其明暗度数值这两种方式最后所计算出来的结果是相同的。 接下来测试开启灯光后的环境先勾选Directional Light的Illuminates By Default选项将半球体材质的Incandescence数值设为 0让整个场景以灯光来影响照明。此时灯光所照射的角度会因为所照射到的物体而影响到最后的算图结果。以下图来解释当灯光往上打时半球体会接受到大部份的灯光因此地板会因为半球体颜色投射而呈成现蓝色在圆球部份因为灯光打在下半部因此会造成红色很强烈地投射到地板上。右边那张图显示灯光往下打现在大部份的灯光都打在地板上因此圆球下半部会因为地板投射在边缘上会呈现较为明亮的颜色在半球体部份因为获得较少的光源因此地板只有在边缘部份才看得到泛蓝的颜色。 在每个材质内的mental ray字段有一个Irradiance Color参数此参数最主要是用来控制渗色的程度以下图来做解释当降低地板的Irradiance Color时地板会因为无法接受到其它物体所投射来的颜色而变成黑色但是当Irradiance Color设为100红色时地板只会接受红色圆球所投射出来的颜色其余部份会以黑色来显示同样的当Irradiance Color设为和半球体相同的蓝色时地板只会显示出蓝色的部份至于红色圆球所投射出来的颜色则以黑色来取代。 至于红色圆球所投射出颜色的多寡则是由本身材质的Ambient Color来决定。 HDRI HDRI为高能量范围影像High Dynamic Range Image的缩写它虽然看起来和一般图档一样但是里面却大有文章其实HDRI是由不同曝光值影像所组成的影像 因此它在定义颜色范围上会比传统的影像称为LDRI低能量范围影像还来的大很多。HDRI和LDRI的最大的不同点就是它的RGB Channel数值可以是浮点值不像一般影像是以0255整数值来定义颜色因此HDRI影像可以包含比24位或是32位更高的信息。关于颜色定义方面由于HDRI并不局限于000黑色255255255白色的限制对于每个Channel的数值就算是超过255还是属于合法值也因此在表现物体的高反光亮点方面会比一般LDRI所产生的反光点还来的真实另一方面在一般看起来全黑的影像中如果以HDRI来表现依旧可以在黑暗中看到一些明亮的部份。 有人说HDRI是可以”发光”的其实这种说法并不正确正确的说法应该它是张照明贴图Lighting Texture 当它搭配Final Gather的算法之后图档上的明暗及色彩数据就如同是每盏灯光一样因此Final Gather会以这此信息来当做灯光的依据由于这些灯光是来自四面八方的也因此所投射出来的光线会更趋近于自然光。 我们用一个简单的场景来介绍HDRI与Final Gather的应用在场景中有一个地板一个戒指和一个做为照明的球体。首先产生一个Lambert在Ambient Color内使用File Texture方式贴上一张HDR的图档将Diffuse值设为0将Color设为全白最后将此材质指定给球体来当做照明。在地板部份产生一个Lambert将Color及Bump Mapping上贴上一张木纹贴图将Diffuse值设为0.15在这里不能设为0因为如果设为0时就不会反应出本体色而造成全黑的结果。对于戒指部份产生一个Blinn材质将Color设为全白Ambient Color 的V值为0.15Diffuse值设为0至于戒指上的反光亮点可以藉由HDR图档来呈现因此我们可以将产生亮点的参数Eccentricity设为0将Specular Roll Off设为1Specular Color设为全白将Reflectivity设为1。至Render Globals 将Final Gather开启将Final Gather rays设为100再执行Render后得到如下图左边的结果。如果要模拟出金属反光在木头上的Caustics效果则必须加一盏Spot Light将Intensity设为0并勾选Emit Photons至Render Globals将Caustics开启最后算图的结果如图右边在戒指内圈的地方可以很明显地看到Caustics的效果。
/
本文档为【Maya 渲染教程 PDF】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索