| 天地 厅城 |
| http://finger88.3322.org |
| 第4章 材质与灯光 学习目的: 学习提示: 材质与灯光是CG中不可缺少的一个重要环节,它的好坏直接决定整个成品的视觉效果。好的灯光与材质可达到点目传神、推波助澜的作用,相反,即使有绝妙的模型与动画,弦目的特效,也会让作品大打折扣,索然无味。 好的作品来源于生活,同样的,无论作品的风格如何,材质灯光均源于对真实生活的理解,不仅仅只是对软件技术本身的理解。材质灯光是感性的东西多于理性的东西,功夫在画外,随时注意观察现实对材质灯光水平的提高有很大的帮助。 本部分的内容以实际制作入手,逐步领略与掌握材质和灯光的制作。 (a) 在MAYA的渲染模块中, (b) (c) 模块选择器内选择Rendering,切换到渲染模式(或者按快捷键F5) 可以通过快捷键“T”,切换到目标控制状态 (d) 如果点击循环索引手柄,可以产生不同的操作手柄来控制聚光灯的效果: (e) 第一次点击循环索引手柄,可以调整灯光枢轴手柄。枢轴手柄就相当于一个基点,光源控制手柄和目标控制手柄相当于杠杆的两端,任何聚光灯的枢轴移动,都是基于这三者的配合,枢轴手柄的位置决定了光源控制手柄和目标控制手柄的移动范围。如图4-1所示。 图4-1 第两次点击循环索引手柄,可以调整灯光圆锥角的大小(可以在Channel Box中的Cone Angle中进行调节): (f) 第三次点击循环索引手柄,调整灯光半影(可以在Channel Box中的Penumbra Angle中进行调节),它是用来调节灯光柱在靠近边缘处是如何衰减的:如图4-2所示。 图4-2 (g) 第四次点击循环索引手柄,显示灯光的衰减范围和衰减率,第五次点击是利用调整手柄调整灯光的衰减范围和衰减率:如图4-3所示。 图4-3 创建灯光后,我们需要对灯光进行定位,也就是要摆放灯光在场景中的位置或是照明方向。灯光有三种常用的定位方法: 1、灯光可以象Maya中的其它类型物体一样进行坐标的变换操作。按键盘上的“W”键(或点击左侧快捷命令栏的Move Tool图标),来移动灯光;按键盘上的“E”键(或点击左侧快捷命令栏的Rotate tool图标),来旋转灯光;按键盘上的“R”键(或点击左侧快捷命令栏的Scale tool图标),来缩放灯光的的外观大小。 2、使用“灯光操纵器”我们可以进一步交互地定位灯光。选中聚光灯,按键盘上的“T”键(或点击左侧快捷命令栏的Show Manipulator Tool图标),聚光灯附近会多出一个图标。同时聚光灯的操纵器变为两部分,这两部分称作“关注点和原点”(Center of interest/Origin),关注点也常被称作称作“目标点”。操纵器的原点部分,可以改变灯光的位置;关注点位置可以改变灯光的方向(所有的灯光都包括此选项)。再按一次“W”键(或是“E”“R”),恢复到原先的控制状态。如图4-4所示。 图4-4 3、通过使用“Look Through Selected”命令可以使我们更直观的确定灯光的照射,方向和位置。该命令位于操作窗口左上角的命令菜单中。 如图4-5所示。 图4-5 选中场景中的聚光灯,点击panels>Look Through Selected命令,则当前视图切换成从灯光的角度观察物体的模式,可以通过与普通视图的操作同样的方法操作灯光模式的视图,该视图在变换的同时,相应的灯光也在改变在场景中的位置和方向。通过使用该命令,可以大大方便我们对灯光的定位。如图4-6所示。 图4-6 (一) 灯光类型 (h) 在Create-Lights命令下我们可以看到,6种灯光的类型。如图4-7所示。 ¬ 图4-7 (i) 它们是Ambient Light环境灯;Directional Light定向灯;Point Light泛光灯;Spot Light聚光灯;Area Light区域灯;Volume Light体积光。 Point light(点光源) 点光源是被使用的最普通的光源。光从一个点光源射向四面八方,所以光线是不平行的,光线相汇点是在灯所在的地方。它模拟一个挂在空间里的无遮蔽的电灯泡。点光源可以投射阴影。如图4-8所示。 图4-7 点光源投射阴影的形状如下,注意它的形状是向外发散的。如图4-8所示。 图4-8 Directional Light(平行光源) 远光灯是用来模拟一个非常明亮,非常遥远的光源。所有的光线都是平行的。虽然太阳是一个点光源。可是因为它离我们的距离是如此的遥远,以至于太阳光到达地球后实际上是没有角度的,所以我们用平行光源来模拟太阳光。要注意的是,平行光没有衰减属性。平行光可以投射阴影。如图4-4所示。 平行光投射的阴影如图所示,因为平行光的光线都是平行的,所以它投射的阴影也是平行的,这是它的一大特征。如图4-4所示。 Spot Light(聚光灯) 聚光灯是具有方向性的灯,所有的光线从一个点并以你定义的圆锥形状向外扩散。可通过使用Cone Angle(锥角)滑块的方法,从顶点开始以度为单位来度量锥体。聚光灯是所有灯光中参数最复杂的灯光。通过调节它的参数可以产生很多类型的照明效果。 Cone Angle 控制光束扩散的程度,通常采用缺省值40度就够了. 不要把Cone Angle设置太大,否则阴影会出现问题. Penumbra Angle 该值为正时,外部矩形区域边缘模糊不清;该值为负时,内部矩形区域边缘模糊,边缘轮廓不清. 如图4-4所示。 聚光灯投射阴影的形状如下:如图4-4所示。 Area Light (区域光) 区域光是Maya灯光中比较特殊的一种类型。和其它的灯光不同的是,区域光是一种二维的面积光源。 它的亮度不仅和强度相关,还和它的面积大小直接相关。通过Maya的变换工具可以改变它的大小和方向。 区域光可以模拟诸如窗户射入的光线等情况。而且区域光的计算是以物理为基础的。它没有设置衰减选项的必要。 区域光也可以投射阴影。但是如果使用Depth Map Shadow算法来计算区域光的阴影,它的阴影和其它的灯光是没有什么两样。要想得到真实的区域光阴影,必须使用光影追踪算法。如图4-4所示。 下图是通过光影追踪计算得到的区域光阴影,注意随着距离变远,其阴影变得越来越虚。这是区域光的阴影特点。但是这种高质量的阴影是以大量的计算时间为代价的。如图4-4所示。 Ambient Light(环境光) 顾名思义,环境光能够从各个方向军均匀的照射场景中的所有物体。环境光具有两种相矛盾的属性。它的一部分光是向各个方向照亮物体的(象一个无穷大的球的内表面发出的光),而另一部分光是从光源的位置发出的(象一个点光源)。通过在属性编辑器中设置环境光的Ambient Shade值的大小将这两个相反的参数结合起来。如果Ambient Shade的值大小为1时,环境光就完全成了一个点光源。 用一个环境光可以模仿方向光的联合(如太阳和灯),将点光源和漫射光结合起来。如图4-4所示。 环境光也可以投射阴影,但只有光影追踪算法来计算阴影供你使用。 Volume light (体积光) 它是一种可以控制光线照射范围的光,操作很灵活,可以手动控制衰减的效果。相对其他几种灯光来说比较特殊,它的具体参数如下: Volume Light(体积光) Volume Light(体积光)除了在Attributes菜单中增加了一个Light Shape参数外,还补充了两大项特有的参数Color Range(颜色范围)部分和penumbra(半影)部分。如图4-4所示。 volume Light(体积光)属性菜单。如图4-4所示。 volume Light(体积光)属性菜单的Color Range(颜色范围)部分和penumbra(半影)部分 Light Shape 体积光提供了四种体积形状,分别是“Box、Sphere、Cylinder、Cone”,不同的体积形状,决定了不同的体积光照射范围。如图4-4所示。 Light Shape参数部分 如图4-4所示。 体积光的四种体积形状 Color Range(颜色范围)部分 该部分参数用于控制灯光照明区域从中心到边缘的颜色变化。可以在右侧的颜色控制区域内手动控制。在该区域内,鼠标单击任一位置会生成一个新控制点。颜色区域上边的圆点确定了控制点的位置,可以左右拖动,同时该圆点也显示了对应控制点的颜色。颜色区域下边的叉形符号点击可删除对应的控制点。如图4-4所示。 颜色控制区域 Selected Position 用于设定控制点的准确位置。 Selected Color 用于设定控制点的颜色,点击颜色选择框可以弹出颜色选择面板。 Interpolation 用于设定控制点间的颜色过渡的渐变方式,提供了“None、Linear、smooth、Spline”四种渐变方式。如图4-4所示。 1、2、3、4依次为“None、Linear、smooth、Spline”渐变方式 如图4-4所示。 利用Color Range(颜色范围)参数创建的彩色光环 Volume Light Dir 该选项用于控制体积光在其照明区域内(体积内部)的照明方向,提供了“Outward、Inward、Down Axis”三种方向供选择。Outward是模拟一个带有衰减的点光源;Inward是表现一种内部照明的的效果;Down Axis是模拟一种带有衰减的平行光。如图4-4所示。 Outward模式照明效果 如图4-4所示。 Down Axis模式照明效果 如图4-4所示。 Inward模式照明效果 如图4-4所示。 ARC 用于控制体积光照射区域(体积)在Y轴上的张开角度。默认是360度。如图4-4所示。 ARC角度值为30度 Cone End Radius 该选项只有在Light Shape属性为Cone时(即体积光的体积形状为锥形时)才有效,是用于控制圆锥的顶角半径的参数。默认值为0,当该值不为0时,圆锥变成圆台。如图4-4所示。 体积形状为圆台的体积光 penumbra(半影) 此参数只有在Light Shape属性为Cylinder和Cone时(即体积光的体积形状为圆柱形或圆锥形时)才有效,是用于控制体积光在其照明范区域内,从光源中心到四周的衰减效果。可以在右侧的坡度条内手动设置其衰减值,常用于表现特殊效果。坡度条的使用与Color Range属性中提到的颜色条的使用方法相同,不再赘述。如图4-4所示。 利用penumbra部分参数调制的特殊照明效果 Selected Position:用于设定控制点的准确位置。 Selected Value:用于设定控制点所在位置的衰减值。 Interpolation:用于设定控制点间衰减值的过渡方式,提供了“None、Linear、smooth、Spline”四种过渡方式。 (二) 灯光的基本属性: 在属性编辑面板中,包括了该灯光的所有属性参数。在spotLightShape1标签栏下,我们可以调整灯光的各种属性和参数。我们观察该标签栏下的参数面板,参数被分成了八大部分(比Maya4.5版本增加了两项),见图。我们常用到的是“Spot Light Attributes(聚光灯属性)”、“Light Effects(灯光特效)”、“Shadows(阴影)”和“Extra Attributes(扩展属性)”这几部分参数。 1 Spot Light Attributes(聚光灯属性) 点击展开Spot Light Attribute卷展栏,这里提供了灯光的基本属性。如图4-4所示。 Type :灯光的类型,可通过该选项,把当前灯光改变为其它类型的灯光。点击该参数右侧的向下的三角箭头,打开下拉菜单。在下拉菜单中,我们可以找到前边所提到的六种类型的灯光,选中其中的一种,当前灯光就改变为你选中的类型,如图4-4所示。 Color :控制灯光的颜色,默认值是白色,见图。 点击颜色区域,会弹出Color Chooser窗口,在窗口中可以有多种方式选择需要的颜色,见图。在颜色区域的右侧,是范围控制滑条,该滑条控制当前颜色的明度。最右侧是贴图按钮,点击该按钮会弹出材质创建面板“Create Render Node”,在该面板中,可以为灯光的颜色属性指定一种材质纹理,灯光会对该纹理进行投影。如图4-4所示。 Maya灯光的所有属性只要右侧有贴图按钮的就都可以进行贴图操作,可以通过贴图来控制该属性,有关这一点后面不再赘述。 Intensity : 控制灯光的强度(亮度)。值为零时,灯光不产生照明效果。右侧的范围滑条的默认范围是0~10,在输入栏中直接输入数值,可以定义大于10和小于0的值。如图4-4所示。 当灯光的强度定义为负数时,可以产生吸光灯的效果,可以用于消除其他灯光产生的热点或耀斑。 灯光的四种衰减方式:No Decay(无衰减)、Linear线性衰减、Quadratic(二次方衰减)、Cubic(立方衰减),我们常用到的是一次衰减和二次方衰减。此外,该值对小于一个单位的距离没有影响。默认值为No Decay。如图4-4所示。 灯光在场景中如图位置 如图4-4所示。 由左向右依次为,相同条件下的灯光在 Decay Rate 参数分别为 No Decay、Linear、Quadratic、Cubic时的渲染结果 如图4-4所示。 Cone Angle :聚光灯的的锥角角度,控制聚光灯光束扩散的程度,单位为“度”。该参数是聚光灯特有的属性,有效范围是0.006~179.994度。 Penumbra Angle :控制聚光灯的锥角边缘在半径方向上的衰减程度。在聚光灯的锥角边缘处,在半径方向上的一定距离内,将光强以线性方式衰减为0,单位为“度”。 Dropoff : 控制灯光强度从中心到聚光灯边缘减弱的速率。见图。该参数有效范围0~无穷,右侧滑块的默认范围是0~255。可以在输入框种直接输入数值,一般值都控 制在0~50之间。注意,值为1或更小值时,效果都是相同的。 其它类型灯光的属性 Ambient Light(环境光)比聚光灯补充了一个特有参数:Ambient Shade,该参数是 用于控制环境光是趋向于各个方向均匀照亮物体的,还是趋向于象一个点光源一样从一个点发射光线。如果Ambient Shade的值大小为1时,环境光就完全成了一个点光源。 Ambient Light(环境光)、Directional Light(平行光)、Point Light(泛光灯)、Area Light(面积光)只是比聚光灯少了一些属性参数,其保留下来的属性参数功能与聚光 灯的相同。 Shadows(灯光阴影) 真实世界中光与影是密不可分的,物体有光源照射就要产生阴影。阴影是CG创作中 用于物体表现最重要的手段之一,有光有影才会使场景和物体产生空间感、体积感和质量感。Maya中提供了两种阴影生成方式:Depth Map Shadows(深度贴图阴影)和Ray Trace Shadows(光线追踪阴影)。 Depth Map Shadows(深度贴图阴影):这种阴影生成方式是Maya在渲染时,生成一个深度贴图文件,该文件纪录了投射阴影的光源到场景中被照射物体表面之间的距离等信息。根据这个文件来确定物体表面的位置前后,从而对后面的表面投射阴影。这种阴生成方式特点是渲染速度快,生成的阴影相对比较软,边缘柔和,但是不如Ray Trace Shadows(光线追踪阴影)真实。 Ray Trace Shadows(光线追踪阴影):这种阴影生成方式是比较真实的跟踪计算光线的传播路线,从而确定如何和在哪里投射阴影的一种方法。这种方法的特点是计算量大,渲染速度慢,但是生成的阴影比Depth Map Shadows(深度贴图阴影)更真实,阴影比较硬,边缘清晰。想要表现物体的反射和折射效果时,要使用Ray Trace Shadows(光线追踪阴影)才能表现出真实的效果。 如图4-4所示。 Maya中创建的灯光默认状态下是没有打开阴影选项的,不投射阴影,这是考虑到渲染速度的原因。我们要使灯光投射阴影,需要在选中灯光的属性编辑面板中手动打开阴影选项,即选择Depth Map Shadows(深度贴图阴影)或是Ray Trace Shadows(光线追踪阴影)方式。对同一盏灯光,这两种阴影的生成方式只能选择一种,当选择了一种时,另一种会自动关闭。 要注意的是,在我们使用了Ray Trace Shadows(光线追踪阴影)方式时,还需要在Maya菜单栏中Windows>Rendering Editors>Render Globals(渲染全局设置)面板中找到Raytracing Quality选项栏,勾选打开Raytracing选项,从而启动渲染的光线追踪计算功能,否则是渲染不出Ray Trace Shadows(光线追踪阴影)效果的。如图4-4所示。 此外,Ambient Light(环境光)只支持Ray Trace Shadows(光线追踪阴影),没有Depth Map Shadows(深度贴图阴影)的选项。 Depth Map Shadow Attributes(深度贴度阴影属性): Use Depth Map Shadows:勾选该选项后,Maya在渲染时会产生深度贴图阴影。同时, 下边的深度贴图阴影的属性参数被激活。 左侧为Dmap Resolution值为512时生成的阴影,右侧为Dmap Resolution值为2048时生成的阴影。如图4-4所示。 Dmap Resolution:用于控制生成的深度贴图文件的大小。例如:512像素(默认值)就会生成一个512 X 512像素的深度贴图文件。该值越大,生成的阴影就越清晰,但是计算量就会越大,渲染的速度也会越慢。Dmap是Depth Map的缩写。 Use Mid Dist Dmap:如果不勾选,maya会为深度贴图中每个像素计算从灯光到最近投射曲面间的距离,作为判断另一个表面是否处在这个表面的阴影中的依据。如果勾选,灯光会计算最近的投射曲面间的距离,再计算到下一个最近投射曲面间的距离,然后取平均值,作为判断另一个表面是否处在这个表面的阴影中的依据。如图4-4所示。 Use Dmap Auto Focus:勾选后,Maya会自动缩放创建的深度贴图填充灯光照明区域。如果不勾选,可以手动调整深度贴图。默认勾选。 Dmap Focus/Dmap Width Focus:用于手动缩放深度贴图文件的大小。聚光灯、点光源等灯光类型此参数名称为Dmap Focus,平行光的此参数名称为Dmap Width Focus。因为Maya创建的深度贴图文件使用的是绝对分辨率,所以减小深度贴图的尺寸能有效增加深度贴图的分辨率,而不增加渲染时间。默认状态下勾选Use Dmap Auto Focus选项,让Maya自动缩放深度贴图文件。 Use Light Position:此参数仅应用于平行光,控制平行光是否在图标前后都产生照明和阴影效果。如果勾选则平行光仅在图标前面产生照明和阴影效果;如果不勾选对图标的两侧都发生作用。默认为不勾选。 Dmap Filter Size:用于控制深度贴图阴影边缘的模糊程度。值越大,则阴影边缘的模糊程度越高。 Dmap Bisa:用于控制深度贴图阴影偏移投影物体的程度。该值在某些特殊情况下用来微调阴影和投影物体的相对位置关系。一般使用默认值。 Fog Shadow Intensity:该参数是用来控制灯光雾的阴影强度的,该值越大,灯光雾的阴影效果就越强。(有关灯光雾效果请参考“灯光特效”部分) Fog Shadow Samples:控制灯光雾效果的阴影采样值,用来改善灯光雾的阴影的颗粒现象。该值越高,灯光雾的阴影越细腻,但是相应的计算量也会增加,渲染速度变慢。 Disk Based Dmaps:该属性和其下的参数用于设置Maya重复使用深度贴图信息文件,合理的设置这部分参数可以大大提高Maya的渲染效率。Maya允许我们将灯光的深度贴图保存到磁盘中,在以后的渲染中可以直接调用这个文件,不必再次计算深度贴图文件,加快渲染速度。该文件被保存在预定的“工程项目”下的depth目录中。 Off:每次渲染时都计算深度贴图文件。不读取磁盘上保存的深度贴图文件,也不保存新生成的深度贴图文件。 Overwrite Existing Dmap(s):每次渲染时重新计算深度贴图文件,并且把该文件保存到磁盘上,如果磁盘上已存在深度贴图文件,则覆盖原文件。 Reuse Existing Dmap(s):渲染时先检查磁盘上是否有保存的深度贴图文件。如果有就使用该文件,如果没有就新计算一个深度贴图文件,并保存到磁盘上。 Dmap Name:自定义深度贴图文件的文件名。 Dmap Scene Name:将场景文件名添加到生成的深度贴图文件名中。 Dmap Light Name:将灯光名添加到生成的深度贴图文件名中。 Dmap Frame Ext:有动画时,如果勾选该选项,Maya会保存每一帧的深度贴图并且把帧数添加到深度贴图的文件名中;如果不勾选,则整个动画保存为一个深度贴图文件。 Dmap Use Macro:Maya运行一些宏命令,来更新从磁盘中读出的深度贴图。该参数只有在Disk Based Dmaps选项为Reuse Existing Dmap(s)时才被激活。 Use Only Single Dmap:该选项只应用于聚光灯。勾选时,Maya会在渲染时为聚光灯只生成一个深度贴图文件。但是,如果,聚光灯的cone angle锥角角度过大(大于90度),深度贴图的Dmap Resolution值可能会不够用,阴影的边缘就会出现锯齿。这时候如果取消该选项的勾选,Maya会为聚光灯创建多个深度贴图文件,即分别在每一个轴向上创建深度贴图文件。 Raytrace Shadow Attributes(光线追踪阴影属性): Use Ray Trace Shadows:勾选该选项后,Maya在渲染时会产生光线追踪阴影。同时,下边的光线追踪阴影的属性参数被激活。 Light Radius:该参数用于控制光线追踪生成的阴影边缘的模糊程度。该值越大,阴影的边缘就越模糊,但是颗粒现象越明显,可通过调整Shadow Rays参数来改善颗粒现象,生成柔和细腻的阴影边缘。要注意的是,在平行光中该参数名称为Light Angle,功能相同。在面积光中没有该参数。如图4-4所示。 产生有颗粒的阴影边缘 Shadow Rays:该参数用于控制光线追踪生成的阴影边缘的细腻程度,改善由Light Radius参数生成的颗粒现象。该值越大,阴影的边缘就越细腻,但是计算量相应增加,渲染速度变慢。如图4-4所示。 Ray Depth Limit:用于限制生成光线跟踪阴影时光线进行反射或是折射计算的次数。默认为最小次数1次。要注意的是,在Render Globals(渲染全局设置)面板中的Raytracing Quality选项栏中的Shadows参数,该参数也是用于控制生成光线追踪阴影时的反射或折射计算次数。Maya在渲染时会比较这两个值,然后取较小的那个值作为控制。此外,当这个值为1时,透明物体后边的阴影不会被显示出来,至少为3时才会显示出透明物体后边的阴影。 Light Effects(灯光特效): 我们除了可以控制灯光的基本照明属性外,还可以给灯光添加一些特殊效果。Maya给我们提供了Light Fog(灯光雾)、Light Glow(灯光辉光)、Barn Doors(光栅)、Decay Regions(衰减区域)四种特效。但是,并不是所有类型的灯光都可以添加这四种特效,下面我们来一一说明。如图4-4所示。 灯光属性编辑面板中的特效部分 Light Fog(灯光雾): 灯光雾是在灯光的照明范围内添加一种云雾效果。灯光雾只能应用于点光源、聚光灯和体积光。点光源的灯光雾是球形的,聚光灯的灯光雾是锥形的,体积光的灯光雾效果是由它的体积形状决定的。如图4-4所示。 Light Fog:创建灯光雾效果。点击Light Fog参数右侧的贴图按钮,Maya就会给灯光添加一个雾节点,也就创建了一个灯光雾效果,该节点的名称显示在中间的名称栏中。 Fog Type(雾类型):该参数只在点光源的属性编辑面板中出现,是用来设置灯光雾的三种不同浓度衰减方式。Normal是雾的浓度不随着距离变化;Linear是雾的浓度随着距离的增加呈线性衰减;如果设置为Exponential,则灯光雾的浓度随距离的平方成反比衰减。如图4-4所示。 从左向右依次是Fog Type选项为Normal、Linear、Exponential时的效果 Fog Radius(雾半径):此参数也只在点光源的属性编辑面板中出现,控制灯光雾球状体积的大小。 Fog Spread(雾扩散):此参数只在聚光灯的属性编辑面板中出现,是用来控制雾在横断面半径方向上的衰减。如图4-4所示。 从左向右依次是Fog Spread(雾扩散)参数值为2、1、0.5时的效果 Fog Intensity(雾强度):是用来控制雾强度的参数。 我们可以点击Light Fog参数右侧的“进入下游节点”按钮(在原先贴图按钮的位置)进入到灯光雾的节点属性面板中,进一步调整灯光雾的效果。如图4-4所示。 从左向右依次是Fog Intensity(雾强度)参数值为2、1.5、1时的效果 我们可以进入灯光雾节点的属性面板中进一步设置灯光雾的属性参数。点击灯光属性面板中Light Fog参数右侧的进入下游节点图标,即进入灯光雾的属性参数面板。如图4-4所示。 点击Light Fog右侧的 按钮(进入下游节点按钮)如图4-4所示。如图4-4所示。 Color(颜色):设置灯光雾效果的颜色。默认色为纯白色。 灯光雾效果的实际颜色,同时受到灯光颜色和雾颜色的影响。 Density(密度):控制灯光雾的密度,雾的密度越大,视觉效果越亮。 Color Based Transparency(颜色基本透明):控制雾中或雾后的物体的模糊程效果。勾选后,处在雾中或是雾后的物体的模糊程度同时受Color(颜色)和Density(密度)的影响。默认改选项勾选。 Fast Drop Off(衰减):控制雾中或雾后的物体的模糊程效果。勾选后,雾中或雾后的各物体会受不同程度的模糊,模糊的程度同时受Density值和物体距摄像机的距离的影响(也就是受物体和摄像机之间雾的多少影响);如果不勾选,雾中或雾后的物体产生同样程度的模糊,模糊的程度受Density值影响。 灯光雾的阴影 灯光雾的阴影可以对处在雾中的物体产生阴影效果。灯光雾的阴影参数并不是在灯光特效参数部分中,而是在产生雾效果灯光的阴影参数部分。我们在灯光的属性编辑面板中找到Shadows参数栏部分,勾选Use Depth Map Shadows选项,使用深度贴图阴影。在深度贴图阴影部分的参数中的Fog Shadow Intensity(雾阴影强度)和Fog Shadow Samples(雾阴影采样值)两个参数,就是用来控制灯光雾的阴影效果的。 Fog Shadow Samples(雾阴影采样值):用来控制灯光雾生成的阴影效果的颗粒度。这个值越大,产生的阴影就越细腻,但是计算量也越大,渲染速度也就越慢。 建立灯光特效后,Light Glow参数右侧的贴图按钮变成“进入下游节点”按钮。点击该按钮,进入opticalFX1节点的属性编辑面板,在这里我们可以设置辉光的属性。如图4-4所示。 Light Glow(辉光)效果 Glow(辉光)效果加上Halo(光晕)效果 Glow(辉光)效果加上Lens Flare(镜头光斑)效果 Optical FX Attributes(光学节点属性): 这一部分参数控制辉光、光晕和镜头光斑的视觉效果。如图4-4所示。 Optical FX Attributes(光学节点属性)参数部分 Active:控制打或关闭灯光光学特效。默认状态下是勾选的,即打开灯光光学特效。 Lens Flare:控制打开或关闭镜头光斑效果。默认状态下没有勾选,勾选后应用镜头光斑效果,并且激活下边的Lens Flare Attributes(镜头光斑属性)部分参数。 Glow Type:辉光类型。maya提供了五种辉光效果,通过右侧的下拉菜单可以选择辉光的类型。 None:不显示辉光效果。 Linear:辉光从灯光中心向四周呈线性衰减。 Exponential:辉光从灯光中心向四周呈指数衰减。 Ball:辉光从灯光中心在指定的的距离内迅速衰减。衰减距离由Glow Spread参数指定。 Lens Flare:模拟灯光照射多个摄像机镜头的效果。 Rim Halo:在辉光周围生成一圈圆环状的的光晕。环的大小由Halo Spread参数控制。如图4-4所示。 Rim Halo Ball Ball Linear Lens Flare Halo Type:光晕类型。maya提供了五种光晕效果,通过右侧的下拉菜单可以选择光晕的类型。(为了突出效果,下面的示例中我们在辉光的基础上混合了光晕效果。辉光设置为黄色、line类型衰减,光晕设置为红色。) None:不显示光晕效果。 Linear:光晕从灯光中心向四周呈线性衰减。 Exponential:光晕从灯光中心向四周呈指数衰减。 Ball:光晕从灯光中心在指定的的距离内迅速衰减。衰减距离由Glow Spread参数指定。 Lens Flare:模拟灯光照射多个摄像机镜头的效果。 Rim Halo:在辉光周围生成一圈圆环状的的光晕。环的大小由Halo Spread参数控制。如图4-4所示。 None Ball Linear Lens Flare Exponential Rim Halo Glow Attributes(辉光属性):这部分参数用来控制辉光效果。 Glow Color:辉光颜色。用来设置辉光的颜色,默认为白色。单击颜色区域,弹出“颜色选择面板”。 Glow Intensity:辉光强度。用来控制辉光的亮度。增加亮度时,辉光的大小也随之增加。该参数可设为负值,负值时将从其它辉光中吸光。 Glow Spread:控制辉光相对于镜头的大小。 Glow Noise:控制辉光的噪波的长度。辉光的这种噪波是一种二维噪波,它以光源为中心发射,一般是指向摄像机。它会创建一种在光源和辉光的周围烟雾缭绕的效果。如图4-4所示。 Glow Noise(噪波)效果 Glow Radial Noise:让辉光随机扩散。表现为辉光的光芒长短不一,实现一种直视明亮的光源时,随机的刺眼的效果。 Glow Star Level:模拟摄像机的星状过滤器的效果。表现为辉光的光芒和中心的光晕的比例改变,及辉光光芒的粗细. 如图4-4所示。 Glow Star Level参数值为4时的效果 Glow Star Level参数值为1.5时的效果 Glow Star Level参数值为0时的效果 Halo Attributes(光晕属性): Halo Color:设置光晕的颜色。可以单击颜色区域,打开颜色选择常口。 如图4-4所示。 Glow Opacity参数值为0时的效果 Glow Opacity参数值为10时的效果 Halo Intensity:控制光晕的强度。该参数值越大,光晕的亮度越强,外观也会增大。 Halo Spread:控制光晕的大小。 如图4-4所示。 Halo Color参数设置为蓝色时的效果 Lens Flare Attributes(镜头光斑属性): Lens Flare部分参数只有在勾选Optical FX Attributes中的Len Flare后才会被激活。 Flare Color:控制镜头光斑光圈的颜色。可以单击颜色区域,打开颜色选择常口。 注意,实际效果中光圈颜色并不是唯一的,而是以所设定的颜色为主要色,在颜色表上向两端过渡的一系列颜色。 Flare Intensity:控制镜头光斑的强度。该参数值越大,镜头光斑越明亮,越耀眼。 Flare Num Circles:控制镜头光斑中光圈的数量,值域为0~无穷大。该参数越大计算量越大,渲染速度越慢。 如图4-4所示。 Flare Color参数设定为黄色时的效果 Flare Min Size:在镜头光斑效果中,光圈的大小并不是一样的。Maya在一个给定的范围内随机产生各个光圈的大小。Flare Min Size参数用来确定这个给定范围最小值。如图4-4所示。 如图4-4所示。Flare Intensity参数值为2时的效果 如图4-4所示。 如图4-4所示。 Flare Intensity参数值为4时的效果 Flare Max Size:确定光圈大小范围的最大值。 Hexagon Flare:产生六边形的光斑。 Flare Col Spread:镜头光斑的个别光圈会随机产生颜色,Flare Col Spread参数用来控制这个随机产生的颜色在色域表中的范围。如果光斑的颜色为灰色系,此参数不起作用。 Flare Focus:控制镜头光斑的光圈清晰度,值越大越清晰,值域为0~1。 勾选Hexagon Flare参数后,得到的六边形光斑效果 Flare Vertical:用于控制光斑相对于镜头在竖直方向的延伸方向。 Flare Horizontal:用于控制光斑相对于镜头在水平方向的延伸方向。 Flare Length:用于控制光斑相对于镜头的长度和密度。 Noise Attributes(噪波属性): Noise Uscale:调节辉光在U坐标方向上的比例。 Noise Vscale:调节辉光在V坐标方向上的比例。 Noise Uoffset:调节辉光在U坐标方向上的偏移。 Noise Voffset:调节辉光在V坐标方向上的偏移。 Noise Threshold:噪波的终止值。 数字光学特技 Maya有一个光学效果节点(叫做OptiF/X),通过它可以为点光,面光和聚光产生辉光,光晕和镜头闪光等特技.灯光特技在模仿不同的摄像机滤镜,星光,蜡烛,火焰或是大爆炸时是很有用的.光源必须在摄像机视图里面,并且所有效果都是后期处理过程,意思是它们在所有常规渲染完成后才有作用. 聚光灯: 聚光灯有很多特有的属性,包括Cone Angle(全影角)、Penumbra Angle(半影角)、 Drop Off这三个属性。 图7-2.24 Cone Angle(全影角)控制光束的扩散程度。其缺省值为40度。Penumbra Angle(半影角)则是指从聚光灯光束的边缘到光线强度线性衰减至0位置的角度。 例如,如果一盏射灯的Cone Angle为40度,Penumbra Angle为10度,则其有效张角为50度,射灯的光线强度从40度到50度线性衰减至0。假如它的Cone Angle为40度,而Penumbra Angle为-10度。这时其有效张角为40度,射灯的光线强度从30度到40度线性衰减至0。 Drop Off产生从锥角的中心至边缘的衰减,下图是Drop Off取不同值时的效果。 (三)灯光设置技巧------三点式照明法 虽然照明的方法有很多种,但最基础的照明方法被称为三点式照明。 作为经典的布光方法,三角形照明又被称为三点式照明,它一般由以下三种光源组成:分别为主光源(Key Light),辅光源(Fill Light),背光源(Back Light)。 主光源:基本的光,也通常是最亮的光。让观看者清楚地了解明显的光源方向,它提供了场景主要的照明效果。并且担负了投射主要阴影的作用。在室外的场景中,主光源所代表的也许是日光,在室内场景中则是窗户或门照进来的光源等。 辅光源:平衡主光源的效果,照亮主光没有照到得黑色区域,控制场景中最亮的区域和最暗的区域间的对比度。 背光源:帮助物体从背景中凸显出来。最好的例子是,在音乐MV中,利用彩色光源,侧光源及对比光源,使歌手从其背景中凸显出来。 有趣的是,三点照明有时也包含了第四盏灯光背景光源(Background Light)。您也可以将它想象成一组光源,它们通常比主光源与補光源的组合要来得暗一些。主光源、補光源及背光源是以主题或物体为主要考量,而背景光源则与整个场景的环境有关。 如果场景较大时,单独的一个三角形照明无法提供有效的照明,这时,需要采取一种变通的办法,将场景划分为不同的区段,每个区段再采用三角照明法,这种照明的方法称之为区段照明。 以上是两种最基本的照明方法。当然,在实际的情况中,场景的复杂程度往往要求你采取更复杂的照明设计。当以上两种方法还不能满足要求时,我们可以使用一个自由的照明方案来产生正确的气氛。比如使用强光灯来照亮关键的区域和对象,让观众对所强调的事物发生兴趣。 总结:一灯光来照亮物体的黑暗侧,通常从侧面照射并强度较低,这种灯光叫做填充光(Fill light),因为它是以光线充满表面的黑暗阴影部分.通常原则是:如果主光照是暖色调,那么填充光应该使用冷色调,它有利于把前景人物和背景区分开来. 提示:一种好的放置灯光的方法就是选择该灯光,然后在建模窗口中选择Panels-Look Through Selected. (四)灯光的连接技巧 当灯光照射到物体的表面上时,我们就说灯光和物体连接了。 当然,在真实的世界中,不会存在灯光的连接问题。而在计算机中,为了达到我们所需要的效果,我们往往希望某一盏灯光,只照亮场景中特定的几个物体,而除掉我们不希望它照亮的部分。这时,我们就会面对灯光的连接。 所有的灯光都有一个缺省项:Illuminated By Default(按照缺省照明)。这个选项是指灯光是否按照缺省的状况照明所有的物体。如果不勾选此项,则灯光不照亮任何物体,除非人工将它连接到某个物体上。如图4-4所示。 图7-2.20 在渲染模式下通过Lights菜单可以进行灯光的连接和断开。你有两种方法进行灯光的连个和断开。 方法一:选择灯光和你要连接(或断开)的物体。在Lights菜单下选择Make Light Links建立灯光和物体的连接。选择Break Light Links断开灯光和物体的连接。如图4-4所示。 图7-2.21 方法二:使用Relationship Editor,既可以以物体为中心将灯光连接到物体上,也可以以灯光为中心的模式将物体连接到灯光上去。 在Lights菜单下选择Light Linking打开Relationship Editor。你可以选择以灯光为中心或者以物体为中心。如图4-4所示。 图7-2.22 下图是使用Relationship Editor将物体连接到灯光上的例子: 如图4-4所示 |
| Reflection行绘制镜像的笔触,X、Y与Texture & Lighting 纹理: 纹理通常可以分为贴图纹理和程序纹理 程序纹理一般又可以分为两种:2D纹理、3D纹理、层纹理和环境纹理 2D纹理和3D纹理.绝大多数3D软件包的商业版中都有一些自带的程序纹理. (一)2D纹理贴图 1、2D纹理贴图属性及贴付原理 2D程序纹理与2D绘画文件很相似.例如,由对象的几何纹理坐标(UV)确定,2D程序纹理常用于创建布料,不规则碎片和棋盘图案等. 2、2D纹理贴图坐标定位器 在一个Shading网络中,2D贴图的位置是由Place2dTexture节点定义的。2D贴图的位置既能够直接基于一个物体表面的UV坐标,也可以基于一个投影节点(Projection Node)。2D贴图的属性让你能够调节纹理是如何被重复、定位和旋转的。 图7-5.28 纹理的定位(Positioning The Texture): 当你把一个纹理放在一个表面上时,纹理被放在一个纹理框架中,这个框架能够被定义大小、定位和旋转,带动放置在其中的纹理定义大小、定位和旋转。它定位的大小也决定了它在物体表面的UV空间中所占位置的大小。 Coverage决定了文里覆盖表面区域的百分率,Translate Frame和Rotate Frame在uv方向使表面纹理变形.这些属性不要和UV Repeat、offset以及Rotate属性相混淆,这些属性取决于在覆盖区域纹理的贴图的方法. 定位相关的参数详解如下: 重复(Wrap)、交错(Stagger)和镜像(Mirror): 当你想进一步控制纹理位置的状态时,你可以选择重复(Wrap)、交错(Stagger)和镜像(Mirror)。 重复(Wrap): Wrap U或者Wrap V控制纹理是否在U方向或者V方向重复(Repeat),或者两个方向都有重复。 图7-5.30 交错(Stagger): 交错控制一个重复排列纹理,让它每隔一行就产生偏移。在我们第一课的练习中,我们已经使用过它。一个格子纹理在打开交错后,变成了砖墙的纹理。 图7-5.31 镜像(Mirror): 当纹理在U方向或者V方向的重复(Repeat)值大于一时才可以使用此项。它有助于消除重复纹理在接缝处的马赛克现象。 3、 2D纹理贴图三种贴付方式: ----Normal常规投射方式 (a) 常规纹理贴图又称UV纹理贴图。它是将纹理根据物体表面的UV分布来赋予三维纹理的。也就是说,被赋予纹理贴图的三维模型的网络的疏密和走向将会影响纹理产生的尺寸和方向的变化。 (b) (c) 我们拿一个Cheker纹理为例,看一看常规纹理贴图的方式: (d) 我们在Create Bar-Create Texture中点击Cheker纹理,注意,此时要将投射方式改为Normal,节点网络如下: (e) 其中一: (f) 它是环境纹理节点。环境纹理节点用于模拟表面的纹理外型。该节点可能会被几个阴影组共同使用,并且影响到其表面纹理的体现。点击纹理节点,其属性编辑栏便会呈现出来 (g) 其实不同的材质,其属性编辑器中的内容是不一样的。但都是求大同存小异。它们对纹理的色彩属性进行调节。如基础色彩的调节、色彩平衡度、色彩过滤和添加特殊效果等。 (h) 其二: (i) (j) 二维纹理排列节点组。在几何图形的UV空间排列纹理图形时,是在二维空间中进行绘制的,该节点用于定义UV空间中纹理的布置和方向。它又被称做UV纹理贴图坐标器。 (k) 它的主要作用是设定纹理贴图在UV方向上的重复、旋转、噪波等纹理定位的。在上述的手部贴图中,就是利用常规贴图,并将Cheker值改为:RepeatUV=10.这样就产生网络较密的效果。 ----As projection 投射方式 (l) 这种贴图方式就象投影机投影图像一样,在三维空间投射出二维图像来。这种贴图方式是通过不同的贴图坐标2D纹理投影在模型物体的表面上。 (m) 我们将投射方式改为As Projection.点击一种纹理,其节点网络中包括一个Projection节点,我们可以选择投影类型,还包括一个Place2Dtexture节点,它用来定义文件纹理在自身投影上的布置。Place3dtexture是平面投影图标在三维空间中的布置。一个纹理的贴付效果,取决这两项的调节。如下: (n) 双击Projection,弹出的对话框中,我们可以选择不同的映射纹理贴图坐标: As stencil标签贴图方式 (o) 这种纹理贴图方式在应用中不像常规纹理贴图方式和映射纹理贴图方式那样广泛。它的主要作用在于使某特定图像作为2D纹理并将它贴于物体表面的特定区域,或通过MASK透明遮罩的方式隐藏标签内容。 (p) Stencil贴图可以使我们遮蔽文件或色彩键,去除纹理的某个部分,这种贴图技术经常用于标签。它的节点网络包括一个Stencil节点用来定义遮罩区,还包括两个Place2Dtexture节点一个用于放置纹理,另一个用于建立模板。 (q) 我们在涉及到商品外包装时,会时常用到这一投影方式,我们可以指定投影区域,将商品标签进行定点投射。模板纹理可以让我们使用一个影像文件来作为表面纹理。而且它可以控制MASK透明遮罩通道,甚至可以对影像文件中的颜色进行抠像。 (r) MASK透明遮罩通道控制了模板纹理的透明度和纹理的哪些部分在物体的表面上是可见的。它有两种MASK透明遮罩通道:File Mask文件遮罩和Chrosa Key Masks颜色遮罩。File Mask文件遮罩使用一个纹理或影像来作为遮罩,从而设置模板纹理中哪些区域是透明的;而Chrosa Key Masks颜色遮罩是不需要遮罩文件的,通过调节模板纹理的HSV Color Key(颜色透出)属性,我们可以使某种颜色(或某一范围的颜色)变的可见或不可见。 (s) 遮罩中白色部分,会隐藏材质的纹理或表面颜色; (t) 遮罩中的黑色部分是透明的,因此可以看到材质的纹理或表面颜色; (u) 遮罩灰色的区域是半透明的,因此我们可以看到遮罩和材质纹理或表面颜色。 (v) 下图是使用了一个File Mask文件遮罩(Checker纹理)做为透明通道遮罩,原有色彩上产生的透明效果: 4、文件纹理 文件纹理是指能够贴图到材质属性的位图。再你准备运用一个文件纹理,你必须注意它要被指定的表面的尺寸和形状,同时也 要注意这个位图是否会重复使用。 有很多创建文件纹理的方法。你可以自己绘制它们,扫描图像或者使用数字相机拍摄的照片。你会经常使用一个图像编辑程序用来调整图像的色彩平衡、尺寸等,最后把它存成Maya认同的TIFF或者IFF格式。 确定纹理的尺寸: 在你创造一个纹理后,你必须考虑表面的形状。例如,如果它是又长又扁,你在制作贴图时也必须考虑这些因素。为了测量表面的尺寸,你可以使用Maya的测量(Measure)工具。测量的结果将有助于你设置纹理的特性。然后,你就可以把纹理转化为一个四方的图像,这有助于产生最好的渲染结果。 5、NURBS物体上的2D纹理: 一个2D纹理能够直接在NURBS物体上面定位。这是因为NURBS物体在建立时已经有了自建的UV坐标系统。在理想的情况下建立的表面模型能够被正确的贴图。但是,大多数情况下物体表面的UV坐标会存在重叠,表面的法线会指向错误的方向,UV坐标的原点也不在你所期望的地方。在很多情况下,你必须重建表面以得到正确的贴图。 (二) 3D纹理贴图 1、3D纹理贴图原理 3D程序纹理稍微复杂一些,可以将其想象为用精细纹理贴在地球表面上,3D程序纹理主要有岩石,木头和云彩等,它们具有忽略多边形及NURBS曲面的UV信息的能力. 包括12种3D材质。你可能经常会碰到含有三维纹理的变形物体。当你碰到这种情况时,你会注意到纹理并不会自动适配变形物体的表面。因为我们建立的3D Icon并不足以保证纹理会随着物体一起变形。 在这种情况下,你有两种选择:建立一个纹理参考物体或者转换为文件纹理 转换为文件纹理: 3D纹理或2D纹理就象真实物体一样放置,用户可以在世界各空间使之变形,同时也可以进行修剪.通常在渲染时,3D纹理比2D纹理花费的时间长,用户可以将3D纹理转换为2D纹理,(Edit/Convert Material to File Texture命令即可),但是在转换时可能会丢失一些品质。 Convert Material to File Texture功能将某些材质或纹理转换成一个图像文件,用户可以调整该图像的大小,可以在命令选项窗口打开Anti-aliasing,图像将被放置在当前工作目录下,可以选制材质节点,2D或3D纹理,或转换投影。如果选择了Shanding Group节点,这灯光信息也可以复制到图像里面。 建立一个纹理参考物体: 由于3D纹理放置本质上的原因,当带有纹理的表面时,改表面看起来如该文里游动后的形状,可以选择Shading/Create Texture Object(创建参考物体)来防止这种现象的发生。 2、3D纹理贴图坐标定位器 3D Texture Placement 当你在Maya中建立一个3D Texture,在一个物体上投射一个纹理,或者建立一个环境贴图纹理时,场景中就自动建立了一个 3D Texture Placement的图标,以协调当前纹理的大小,缩放和位置。在一个被动画或者缩放的物体上,你在一些关键的步骤 中必须确保物体上的纹理能够保持一致的位置。你也可以通过一个3D Texture Placement来将一个二维纹理投射到物体上。 (三) 环境纹理: 在Maya中,有五种不同的环境纹理可以作为贴图赋予材质节点的反射颜色属性。你也可以将它们贴到一个贴图平面上作为背景使用。每当你建立一个环境纹理节点时,就有一个Place3dTexture节点被放置在场景的原点处。通过仔细调节环境纹理的定位、方向和尺寸,能够摹仿反射的结果。不同的纹理需要不同的变换信息和方法。在某些场合中,需要仔细调节图标的尺寸,以使它环绕物体产生反射的效果,而在另一些场合中,图标的方向才是调节的重点。 下面的表格列出了环境贴图能够影响物体反射时其图标的变换参数,一些例子中,只有当环境贴图旋转时才能产生效果。 Move Rotate Scale Chrome Yes Yes Yes Sky Yes Yes No Ball No Yes No Cube Yes Yes Yes Sphere No Yes No (四) 层纹理 这个节点类似于Layer Shader节点,它与材质无关,操作起来更直接,而且有更多中合成的方式,其方式与Photoshop软件中层与层的叠加方式很相似,主要是颜色的运算,而且还提供了Alpha通道,以便进行遮色及图像的屏蔽. 如果在层纹理的面板中只含有两个层,那么排在前面的就是前景,而后面的则称为背景层 那么在以下的模式里:黑=0;白=1; None:就是前景的颜色,与背景无关 Over:是Maya默认的属性,前景纹理叠加在背景上,但是保留背景的高光和阴影部分 In:背景纹理切入前景的Alpha Out:与In相反,前景Alpha切出背景 Add:前景颜色+背景颜色,一般情况下可以使图像变得更亮 Subtract:背景颜色减去前景颜色,此时要考虑好前后关系,如果遇到黑色—白色,最终结果还是黑色,换言之0-1=0,而不等于-1。 Multiply:背景色*前景色,一般情况下可以使图像变暗 Difference:实际上是计算前景与背景的补色关系 Lighten:选择前景和背景中颜色较亮的部分作为最终结果 Darken:选择前景和背景中颜色较暗的部分作为最终结果 Saturate:是使用被景色的明度、色调及混色色的饱和度作为最终结果,无饱和度(指灰色)时为背景色。 Desaturate: Illuminate:被景色的色调、饱和度及混合色的明度作为最终结果。 (五) 纹理常用属性 纹理的Color Gain和Color Offset属性主要用于控制纹理的色彩和亮度. Color Gain是调节会影响中间色度区域和高亮区域中的亮度,但该值对图像中阴影部位的亮度的影响比较小。 Color Offset的值会均匀地影响高亮区域,中间色度区域以及阴影区域,包括图像中的白色和黑色的像素点。 Default Color属性是指未被文里覆盖的那部分表面的颜色. Alpha Gain属性调整Alpha通道并用于凹凸和偏移效果。 在Effect区域,许多纹理有Fliter、Filter Offset和Invert属性。 Invert设置用于反色纹理的颜色和色调,(可以将白色变为黑色,反之为白色),他还可以反转Alpha通道,把凸变凹,把凹边凸。 Filter和Filter Offset属性时纹理变得有些模糊,这在文里太尖锐或易混淆时很有作用。 Filter Offset基本上是添加一个固定值到Filter属性,通常很小的值就可以纠正任何过多的尖锐。 对于3D纹理,在Effect区域有三个额外属性:Wrap、Local和Blend。 Wrap属性在默认状态下是打开的,使得纹理覆盖整个物体表面。 Blend属性将缺省颜色(Default Color)和纹理颜色混合起来,但是只有在Wrap关闭时起作用. Local属性,在默认状态下,3D纹理为全局应用,这意味着当以中文里给分配给三个表面时,那些表面或得纹理不同的部分。当Local属性打开时,纹理只是对局部起作用,因此三个表面就有同样的纹理放置。 对于NURBS物体,在Attribute Editor的Texture Map栏,有一个Fix Texture Wrap设置可以很好的将贴图环绕在NURBS表面上 编辑UV 〖教学目的〗: 清楚UV的概念、熟练操作Maya的UV Texture Editor、能熟练编辑角色UV 一、UV概念 UV主要是针对多边形与细分表面的一个元素,同时又是确定2D纹理的坐标点。它控制纹理在模型上的对应关系,这里的纹理主要是指2D的纹理。模型上的每个UV直接依附于模型上的每个顶点,位于某个UV的像素点将被放置在模型上这个UV所依附的顶点之上。 图03-001 UV点依附于3D空间中的顶点 因此,可以说UV坐标是用于放置象文件贴图这类的2D纹理在三维空间中的模型上X、Y和Z轴向的坐标位置。 图03-002 UV坐标在模型表面上的放置 如果说UV在模型上的表述如上,则在2D纹理贴图上的表示则是:U—(相对)—(应于)X;V—(相对)—(应于)Y。即U就相当于X,也就是贴图的水平方向。V相当于Y,也就是贴图UV平面的垂直方向,如图03-003所示。 图03-003 UV在纹理上的对应关系 二、NURBS的UV UV作为一个元素而言是polygon与subdiv所特有的,虽然NURBS也有用于纹理放置的UV,但与前两种还是有一些差别的。 在NURBS中,UV是自始自终都存在,不像多边形需要创建或编辑,它具有NURBS面片内置的、不可以进行编辑的特性。如果纹理在NURBS面片上放置的话,可看作NURBS面片的UV充满纹理的0~1空间。 如果说UV的可编辑性是多边形的一个优点的话,那么UV的均匀延展、完整和不重叠性是NURBS的自身UV的一个优点。 NURBS的UV虽然是默认存在的,但它也类似多边形的UV依附于顶点一样受模型表面分布的影响。如图1.2_001中,因为模型的Isoparms的分布不均匀,造成默认的UV分布不均,直接影响了依赖着落UV的纹理贴图分布。 图03-004 NURBS的Isoparms对UV的影响 针对这种情况,可以打开NURBS模型的属性编辑器,在Texture Map栏中打开Fix Texture Warp选项,可以对纹理的不均匀分布进行修正。 图03-005 对NURBS的UV纹理的适配 图03-006 适配之后的UV在U向与V向都平均分布 三、多边形UV的编辑 如前所述,多边形不像NURBS具有可以用于指定表面上点的固有的2D坐标,这样一来,2D纹理可能在多边形表面不知如何去定位与放置,唯一的解决方法是进行UV映射,达到这个目的是通过在UV Texture Editor中移动、编辑、旋转等一系列方法让纹理在表面的放置有不同的放置。如果这个多边形表面没有UV的信息存在,就会在视窗中显示灰色透明斜条纹状的(有时也显示为彩色透明斜条纹状)。UV编辑是在完成建模之后要对模型指定纹理之前进行。 图03-007 没有UV时透明斜多纹显示 多边形有它与subdivision不同的、特有的映射与编辑的操作。许多的映射操作功能都放置在Polygons→ Texture菜单中。要建立一个适配模型最好的UVs,可能需要几次的UV 映射、多次反复的UV编辑,直到你觉得比较好为止。 多边形的UV可以在多边形创建的时候就产生也可以在建立之后进行编辑。Maya默认的状态下是创建多边形几何体就可以创建默认的UV。 通常我们对UV的操作都是在多边形模型完成之后、对模型进行贴纹理之前进行的。 图03-008 Maya创建标准体时的默认UV选项 1、UV检测纹理 图03-009 用于检测UV的纹理贴图 UV编辑的最终目的是为使用2D纹理服务的,如果在编辑纹理的时候就给予一个标准的2D纹理用于检验UV的正确与否,将有利于UV编辑的快速与准确。 Maya本身也有一个在映射UV时就会自动建立的类似功能的材质网络,它使用的是Maya的程序纹理checker。我们一般情况不使用这个纹理,而是使用自己制作的03-009示文件纹理,这是因为Maya对程序纹理的最好硬件显示是Highest(256×256),其它的硬件显示纹理在视窗中不清晰,所示,而如果使用最高硬件纹理显示,在编辑UV过程中的纹理可能在视窗中不能及时更新,同时不如自定义纹理有特定的像素更方UVs的分布。 在Maya中关闭使用自动纹理; Maya在进行UV映射时,会自动为映射部分创建带有棋盘格程序纹理的材质,如果不需要这个材质使用自定义纹理的材质可在Edit Polygons → Texture → Assign Shader to Each Projection,关闭这个选项。 使用自定义的自动文件纹理; 可以建立一个带自定义文件纹理的shader,并把shader命名为defaultPolygonShader,则每次使用Assign Shader to Each Projection时就会自动对映射的部分使用自已建立的纹理。 2、UV编辑的基本原则 最佳的UV排布是取决于要使用的纹理的类型以及模型要使用的场合、故事版中的分镜头等,同时多边形的UV编辑也因制作人设定纹理不同而不同,虽然各有各法,但一些基本原则还是要必须遵循的。下面我们讨论这些基本的准则,给将来的具体应用一个参照。 1). UVs(使用相同纹理)避免重叠与交迭; 图03-010 重叠交迭造成的像素拉伸 另外,重叠的UV在Maya当中还会造成bump的不正确,稍后我们还会讨论到。 2). 尽可能划分少的UV块; 保持UVs的完整是针对制作纹理来说的,少的UV块可以避免大量材质接缝的处理。 3). UV的接缝摆放位置应遵循摄像机注意不到以及不易觉察的部位如头后侧部、臂与腿的内侧,或放置在结构或材质像素变化较大的变化与生活; 4). 保持UVs(相同纹理)保持在0~1纹理平面内; 数字0到1的范围内为纹理空间,这个空间在UV Texture Editor中是无限重复的,如果UV超出这个空间,会使用相同的纹理,如UV坐标为(1.5, 0)的点与UV坐标为(0.5,0)点的使用的像素相同,所以超出这个空间的纹理在模型表面上是重复的,这也属于一种间接的UV重叠。 图03-011 保持UVs在2D纹理的平面内 5). 尽可能利用0~1纹理平面空间。 为什么要最大可能地利用纹理空间?这是因为纹理是根据UV来在模型表面上进行分布,同时这个贴图会参与渲染,如果你制作了一个纹理,当没有很好的利用纹理空间的话,就会造成实际使用纹理的像素会比这个值小。如图1.3_014所示,在图示中,纹理像素假设为10241024,实际使用像素则不会大于320×320,造成实际贴图分辨率不够。 图03-012 纹理空间的利用 3、UV的基本映射 开始排布UV之前,首先做的工作是指定UV的基本映射,这部分的工作是必要的但不是必须的。在一个没有UV的模型上即使不使用这些基本映射,也可以把模型的UV编辑好。Maya只有四种基本映射:平面、圆柱、球形和自动映射。如果用惯3dsmax的话,可能会认为这些映射类型远远不够应付复杂的几何模型。但它作为对多边形UV编辑的前期工作,使用适当的映射方式,可节省更多的安排UV的时间。给模型一个UV映射之后,通常还需要做进一步的UV编辑,这也是我们把基本映射称为预映射的原因。 映射相当于把一个纹理像幻灯机一样投射到模型表面,不同映射类型就等于不同投射投射灯。 图03-013 映射(平面) 图03-014 圆柱与球形映射方式 1). 平面映射 Edit Polygons > Texture > Planar Mapping 选项: Smart Fit 自动适配选择的范围框。默认的是选择Automatically Fit the Projection Manipulator选项,让映射的操纵器自动适配选择的模型(无论是一个还是多个或模型的面)。 Fit to Best Plane:对映射操纵器旋转来适配选择的物体,主要是针对模型的一部分面(接近平面分布)进行UV映射。 Fit to Bounding Box:映射操纵器根据在Mapping Direction区域选择的方向来适配模型的范围框(bounding box),这个选项主要针对整个或多个模型以及多数的选择面中使用。 Mapping Direction: 针对用于选择映射的方向,只有使用Fit to Bounding Box时,这个选项才会被激活。通常可以使用X、Y或Z轴向来进行UV的映射,也可以使用camera,即根据当前的视图的方向来映射UVs。 图03-015 平面映射选项 Insert Before Deformers 图03-016 变形动画与UV映射关系 当多边形模型应用了变形时,这个选项是被相关联的。如果关闭,变形被动画,通过改变顶点的位置纹理的放置被变形影响,导致纹理“飘移”。如果打开这个选项,Maya会把 映射UV的操作放置在变形动画之前,如图3-016示,在左边为打开这个选项的结果,右边为关闭这个选项的结果,很明显就可以看出右边的纹理在飘移。 Image Center 用来确定映射的UVs的中心在0~1纹理空间中的坐标。改变这个值相当于把映射的纹理在表面的位置改变。如图03-017示。左图为默认的(0.5 ,0.5)的值,UVs的中心的坐标也为(0.5,0.5),右边的值为(0.6,0.6),UVs的中心的坐标为(0.6,0.6)。 图03_017 Image Center Image Rotation 以Image Center为中心旋转UVs,下图为旋转设置为30度的效果。 Image Scale 以Image Center为中心UV向(纹理的XY方向)缩放UVs,下图为Image Scale值为(0.5,0.5)的结果。 图03-017 Image Rotation 与Image Scale Create New UV Set 用于创建放置当前建立的UVs的新UVSet,而不使用模型默认的map1的UVSet。 激活这个选项之后可在UV Set Name栏中设置UVSet的名称。 如果不激活Smart Fit选项,就可以自己设置映射的中心、旋转、缩放。此时有以下选项可以使用: Projection Center Projection Rotation Projection Horizontal Sweep Projection Height 2). 圆柱、球形映射 Edit Polygons > Texture > Cylindrical Mapping 、Spherical Mapping 使用圆柱或球形映射之后,如果模型的原因造成UV的U向有严重的拉伸,如图03-023示,此时可在完成UV映射之后,在channel box中把RotateY的值改为非零的数如0.001,就可以改善。 图03-019 圆柱与球映射常见问题 在进行上面三种映射之后,可以在Channel Box或属性编辑器中修改这些相关参数,或使用操纵手柄进行交互式调节这些参数。 3). 映射操纵器与操纵手柄 映射操纵器是用来给模型映射UV之后对映射进行交互调节的一个工具,使用这个工具时,Maya会自动切换到Show Manipulator Tool 。 图03-020 UV映射操纵手柄 图03-021 操纵手柄的位移、旋转与缩放 图03-022 操纵手柄的旋转轴 圆柱映射与球形映射的操纵手柄使用方法与平面映射的使用方法近似。 4). 自动映射 自动映射是向模型同时映射多个面来寻找每个面UV的最佳放置。它会在纹理空间内创建多个UV片,但UV片之间的大小比例相近,如果想要再完整一些的UV,可以对其进行缝合。 它的映射可以从4到12个面的映射,如下图示。 图03-023 自动映射的包裹平面 图03-024 自动映射的选项 Planes:选择映射平面的数量。 Optimize:用于选择映射之后的UV是倾向于少的拉伸还是少的UV片数。 Less Distortion:对模型任何的面都产生最好的映射,所以UV扭曲比较少,但会产生更多的UV独立片数。 Fewer Pieces:可产生较大的UV片或较少的面片数。 Layout:用于设定映射出来的UV片在纹理空间中的放置的位置。 Along U :沿着纹理空间的U向放置,如下左图。 图03-025 layout的不同设置 Into Square:放置映射的UV到0~1纹理空间的内部。 Scale:设置映射的UV片在纹理空间的缩放。 None:没有缩放; Uniform:等比例缩放映射的UVs以适配0~1的纹理空间。 Stretch to Square:非等比缩放UVs以在U向与V向适配纹理0~1的UV向。 图03-026 None、Uniform与Stretch to Square Spacing Presets:用于设置每个UV片之前的间距的一些预设好的值。 Maya沿着每个UV块周围都会设定一个距离值。如果UV块之间放置的太近,处于不同块的UVs可能共有一个相同的像素,这样一来,当使用3D Paint Tool或Deepaint3D来绘制纹理时,两块之间的纹理就会相互影响。 图03-027 两块UV之间的UVs共用贴图像素 为防止这种情况,可以用这些预设的值来确保在各个UV块之间至少有一个像素的距离。选择纹理贴图相应尺寸的一个预设。如果不清楚贴图的尺寸,选择一个能在UV空间中相邻块之间产生较大距离的小一些的图,(因为小尺寸的的图在缩放到相同的空间内,它的像素要比大尺寸的图要大得多。) Percentage Space:可以被预设的值自动定义,也可以手动的定义块与块之间的距离(为贴图像素尺寸的百分比)。 4、编辑UV 在Maya中编辑UV主要是使用UV Texture Editor窗口,它专门用于UV的排列与编辑。使用UV Texture Editor,可在菜单Windows> UV Texture Editor打开。 图03-028 UV Texture Editor窗口 UV Texture Editor有自己的窗口菜单与工具条,工具条实现的功能大部分都能在菜单中找到。作为一个视图窗口,它与三维视图窗口的视图操作方法也完全相同。 在使用UV Texture Editor之前,我们先了解如何UV的选择与其它多边形元素的切换。 1). UVs的选择以及相应的转换; 在三维视图窗口或在UV Texture Editor中按住右键,在弹出的菜单中选择UV,如图示。 图03-029 在视图与Texture Editor窗口选择UV元素 因为在三维视图窗口中,UV是不可操作的元素,它只能被选择,所以如果使用位移、旋转或缩放工具时,会出现Warning: Some items cannot be moved/ rotated/scaled in the 3D view.的警告信息。如果要使用选择的元素切换到其它元素,比如把选择的面转换为这些面所包含的UV,在三维视图窗口或UV Texture Editor窗口中Ctrl加上鼠标右键 ,可在多边形的所有元素之间进行切换。 图03-030 在视图与Texture Edito窗口切换多边形元素 对于多边形的元素的切换命令在Maya主菜单或UV Texture Editor窗口菜单中都可以找到。 Maya主菜单: Edit Polygons>Selection>Convert Selection to Faces、Convert Selection to Edges、Convert Selection to Vertices、Convert Selection to UVs、Convert Selection to Vertex Faces 图03-031 主菜单中的切换项 UV Texture Editor窗口菜单: Select> Select Shell、Select Shell Border、Convert Selection to Faces、Convert Selection to Edges、Convert Selection to Vertices、Convert Selection to UVs 图03-032 UV Texture Editor窗口中的切换项 另外从UV Texture Editor窗口菜单Select> Select Contained Faces、Select Connected Faces中可以设置从选择的UVs或边切换到连接的面或包括的面。 这里需要说明的是select shell是用于选择整个的UV块(所有连接在一起的UV叫一个UV块),可以根据某个UV块上的个别的UVs来选择这个UVs所在UV块。Select Shell Border,与Select Shell不同的是它选择的是这个块上位于边界上的UVs。 图03-033 UV块与UV边界的快速选择 2). 窗口界面与可编辑元素显示控制; a) 网格Grid; View> √ Grid 图03-034 网格的显示控制选项 b) 纹理贴图; Image> Image Range ; 设定纹理贴图在UV Texture Ediotr中的显示范围。在UV Texture Editor中的纹理空间中,纹理贴图是按0~1 的纹理空间大小无限重复的。 图03-035 纹理贴图显示范围设定对话框 Image> Display Image; 用于设定在UV Texture Editor中是否显示纹理贴图,如果UVs需要对齐特定的纹理,就需要打开这个选项。 Image> √ Display Unfitered; 打开用来显示精确的纹理像素的边界,如果关闭纹理显示状态为各个像素平滑过渡。 Image> √ Display RGB Channels; 显示纹理贴图的彩色通道。 Image> √ Display Alpha Channel; 显示纹理贴图的alpha通道。 Image> √ Use Image Ratio; 这个选项针对纹理贴图为非正方形使用的,打开可以显示真实纹理的图像长宽比。 图03-036 关闭选项不使用纹理贴图的长宽比 图03-037 使用纹理贴图的长宽比 Image> √ Pixel Snap; 打开可以让UV点捕捉纹理贴图的单个像素中心。 Image> Selected Images ; 如果模型使用了多个材质纹理,可以通过这个选项来选择纹理,Maya默认是可以自动把纹理贴图的显示切换到选择元素所使用的纹理贴图。 c) 可编辑元素的显示控制(隔离显示与选择); View Contained Faces; 显示选择的元素(顶点/边/UV点)所包含的面。 View Connected Faces; 显示选择的元素(顶点/边/UV点)所连接的面。 View Faces of Selected Images; 显示选择纹理贴图所用的UVs。如果模型使用了一个以上的材质与纹理,就可以针对不同的材质与纹理再使用这个选项进行按材质的隔离显示。 C)1. 让使用多个纹理材质的模型保持在Select by object type的模式,然后使用UV Texture Editor窗口菜单Image>Selected Images 从列表中选择要进行隔离选择显示的纹理。 C)2. 窗口菜单View>View Faces of Selected Images; 此时,在UV Texture Editor窗口中仅可以看到这个纹理所在材质所使用的UVs。 Isolate Select 为了在UV Texture Editor里编辑UV过程中,不被暂时不需编辑的UV或被其它纹理所使用的UV影响以及选择一些不必要编辑的UV,可以把这些UV隐藏。 View Set; 开始隔离显示与选择 Add Selected; 添加选择的到隔离选择显示 Remove Selected; 从显示中移除选择 Remove All; 全部移除,不显示任何元素 具体操作: i. 如果以前已经有了隔离显示,点击工具条上的 Remove all按钮或View>Isolate Select>Remove All; ii. 选择要隔离的UVs(或其它元素); iii. 点击工具条上的 View Set按钮或View>Isolate Select>View Set,进行隔离显示。如果显示的不是想得到的选择的UVs,还要点击 Remove all按钮或View>Isolate Select>Remove All;; iv. 如果没有任何显示,点击 Add Select按钮或View>Isolate Select>Add Select。 v. 如果显示了多余的面,使用 Remove Select按钮或View>Isolate Select>Add Select。 d) 工具条; 工具条列出了常用的工具与命令,要打开与关闭工具条的显示,可以使用UV Texture Editor窗口菜单的View→ √ Toolbar; 3). 工具条所对应的相应的命令与功能;☆ 图标 对应或类似命令 功能 操作 元素 Maya主菜单、Editor窗口菜单 反转 与 旋转 Edit Polygons>Texture>Flip UVs Polygons>Flip UVs 水平(U向)翻转选择的UVs Face UVs 垂直(V向)翻转选择的UVs Edit Polygons> Texture> Rotate UVs Polygons>Rotate UVs 逆时针45°旋转选择的UVs Face Edge UVs Vertex 顺时针45°旋转选择的UVs 移动 与 缝合 Edit Polygons>Texture>Cut UVs Polygons>Cut UVs 沿选择的边切开UVs Face/Edge/UVs /Vertex Edit Polygons>Texture>Sew UVs Polygons>Sew UVs 沿选择的边或UVs缝合 Edge/UVs Edit Polygons> Texture>Layout UVs Polygons>Layout UVs 重新排布选择的UVs Face/Edge/UVs /Vertex Edit Polygons>Texture>Move and Sew UVs Polygons>Move and Sew UVs 移动缝合选择的UVs Face/Edge/UVs /Vertex —— 沿选择的边所连接的UV点切开UVs Face/UVs Edit Polygons>Texture>Cycle UVs Polygons>Cycle UVs 旋转UV的坐标值但保持UV拓扑不变 Face 对齐与 松驰 Edit Polygons>Texture>Align UVs Polygons> Align UVs U向对齐选择UVs的最小坐标值 UVs U向对齐选择UVs的最大坐标值 V向对齐选择UVs的最小坐标值 V向对齐选择UVs的最大坐标值 Edit Polygons>Texture>Grid UVs Polygons>Grid UVs 移动UVs对齐网络 Edit Polygons>Texture>Relax UVs Polygons>Relax UVs 对选择的UVs进行松驰的操作 隔离选择 View>Isolate Select>view Set 打开隔离选择模式 Face Edge /UVs /Vertex View>Isolate Select>Add Selected 添加隔离的选择元素 View>Isolate Select>Remove Selected 去除所有的隔离选择 View>Isolate Select>Remove All 减去隔离选择的元素 纹理/网格/与边界的显示 Image>Display Image 显示纹理贴图 ———— Image>Use Image Ratio 使用纹理贴图的比例 View>Grid 是否显示网格 Display>Custom Polygon Display Selected>Texture Borders 显示选择物体纹理边界 Image>Pixel Snap UV捕捉纹理贴图的像素点 Image>Unfiltered Image 显示的纹理贴图是否进行模糊过滤 Image>Display RGB Channels 显示纹理贴图的RGB彩色通道 Image>Display Alpha Channels 显示纹理贴图的alpha通道 粘贴 与 复制 Face /UVs 复制UVs坐标 粘贴UVs坐标 粘贴UV坐标的U值到选择的UVs 粘贴UV坐标的V值到选择的UVs 设定复制粘贴是在UVs上还是在UV面上 坐标 控制 显示选择UVs的坐标,输出一个值可改变UV坐标到输入的值 当移动UVs点时,在工具条上的坐标显示并不能及时更新,使用这个按钮可以更新UVs的新坐标值 4). UVs的编辑。 a) 剪切、缝合、合并与删除UVs; UV的编辑大部分都是移动、剪切与缝合UVs的重复性的工作。 在三维空间中,每个顶点只会有一个三维坐标,无论这个顶点是否与其它顶点共面,但在UV坐标空间,这个顶点可能有1到无数个UV坐标,如下图示选择的顶点在三维空间中只有一个坐标,在UV空间却有6个UV坐标。在UV Texture Editor中可以通过剪切与缝合去决定它的坐标是1个还是6个。 图03-038 同一顶点在世界坐标系中的坐标与UVW坐标系中的坐标 剪切UVs; Edit Polygons>Texture>Cut UVs; 或在UV Texture Editor中Polygons>Cut UVs;或工具条上 按钮。 缝合UVs; Edit Polygons>Texture>Sew UVs/Move and Sew UVs; 或在UV Texture Editor中:Polygons>Sew UVs/Move and Sew UVs;或工具条上 或 按钮。 Sew UVs与Move and Sew UVs都是沿着选择的边进行缝合,区别是Move and Sew UVs会移动其中一块靠向别外一块并进行UVs的缝合。使用Limit Piece Size的选项可以缝合指定数量的面片,也可以缝合后在channel box中调整缝合数量,这个数量是指将要被缝合的块中包含的面片数量,假设一个UV块与另名一个UV块移动缝合,其中一个块包含5个面,只有Number of Faces的设置≥5时,这两块才能被缝合在一起。 合并与删除UVs; Edit Polygons>Texture>Merge UVs; 或在UV Texture Editor中 Polygons>Merge UVs; 与缝合UV工具类似,但有一个控制距离(UV Texture Editor中的距离)的缝合选项。 Edit Polygons>Texture>Delete UVs; 或在UV Texture Editor中Polygons> Delete UVs; 从模型上删除选择的UVs。操作之后,模型在选择的部分就没有了UV信息(假设只有默认的UV Sets:map1),之后还需要重新赋予UVs的信息。 b) UVs的放置; 使用这部分的功能能大大提高UV编辑的工作效率,减少重复性的UVs操作步骤。 对齐UVs; Edit Polygons>Texture>Delete UVs; 或在UV Texture Editor中Polygons> Delete UVs;或工具条中的对齐工具 设置选项可以对UVs实现选择的UVs在 UV向最大与最小对齐。 Edit Polygons>Texture> Grid UVs; 或在UV Texture Editor中Polygons>Grid UVs;或工具条中的对齐网格工具 。 图03-039 Grid UVs选项 使用这个工具可以让选择的UVs去对齐纹理贴图的实际像素,纹理贴图的大小由Map Size Presets来控制,至于是对齐像素的边缘还是像素的中收,可以由Move UVs to的单选项来控制。 旋转、反转UVs; Flip UVs可以控制选择的UV水平或垂直反转,反转的轴心可以设置为选择的自动中心Local或都0~1纹理边界的轴为轴心。 注意:使用工具栏中的反转UVs会把所有选择的面的UVs切开。 Rotate UVs与在UV Texture Editor中使用旋转工具 作用相同,优点是可以参数化精确旋转。 Cycle UVs类似于反转与旋转,但有本质的不同,如下图示ABCD对四个点所组成的面进行Cycle UVs的操作。(为了方便观察,把操作之后分离出来的UVs缩小了一些。) 图03-040 使用cycle UVs之前的UVs 图03-041 使用cycle UVs之后的UVs 从图示可以看出,使用这个命令并没有改变UV分布的形状,只是逆时针相互替换了UVs的坐标。 Best Plane Texturing Tool; 这个工具常用于针对比较平的多个面进行平面的映射。 使用方法: i. 点击Polygons> Best Plane Texturing Tool; ii. 在3D视窗中点击想要映射的面,注意不要选择了一些不必要的顶点; iii. 选择完之后,按 确定; iv. 然后紧接着选择用于定位平面的顶点(选择数量必须达到3个以上),按 确定; 图03-042 先选择要映射的面 图03-043 选择用于定位平面的顶点 图03-044 最终结果 处理UV边界与松驰UVs; i. Map UV Border; 对选择的UV块的整个边界进行正方形或圆形的处理。选项如图1-049,Border Target Shape用于设置映射成方形的还是圆形的边,Preserve Shape Detail用于控制与映射之前的边的混合,如图1-50。 图03-045 Map UV Border选项 图03-046 UV边的映射效果 ii. Straighten UV Border; 对选择的UV块的边界进行拉直处理,其操作也只影响边界上的UVs。如下左图,可以框选拉伸部位的UVs,使用Straighten UV Border,使用之后再用Relax UVs工具配合修整非边界的UVs。 图03-047 使用Straighten UV Border矫正扭曲交迭的边 图03-048 Straighten UV Border选项 Curvature用于定义边的形状,负的值会向内收,正的值向外推,如果是0,则把选择的边界强行拉为直线; Preserve Length Ratio:用来确定边上每个UVs之间的距离,如果为1则保持原来的距离,如果为0则平均各个边个UVs之间的距离。在图1_051中,这个值就被设置为0,让它和其它的UVs一样平均分布。 Blend Original Shape:用于混合拉直前的边的形状,1为完全使用原始的形状即不拉直,0为完全不使用把边拉直。 Fill Gaps in Selection:用于对某些没有选择或无法选择造成漏选的边界的UVs的拉直的影响效果如下图左中有3个边界的UVs没有选择,就可以激活这个选项,把UV Gap Tolerance设为3或更高,应用后的效果与这3个UVs选择后的效果完全相同。 图03-049 忽略边界UVs选择的拉直操作 iii. Relax UVs; 一般配合Map UV border以及Straighten UV Border进行使用,对一些场景或道具等有比较均匀的结构线的物体适用。 Edge Weights用来设置UV Relax是如何影响边,Uniform是使所有的边具有同样的长度,World Space是尽力保持world空间的边的角度(服从定住边界的约束)。 在实际制作中,对于结构复杂而拓扑又比较均匀的模型可以使用Relax,否则效果适得其反。 图03-050 Relax UVs的选项 实际应用举例: 如图1_055示的非标准形状模型,对它进行UV编辑时,使用任意的基本映射都会产生拉伸,根据模型的拓扑分布以及形体变化都比较均匀的特点,一个快捷的方法是使用Map UV Border。 a) 打开UV_relax.mb场景文件,给这个模型一个平面的映射; 图03-051 形状复杂但网络均匀的模型(左)应用平面映射(右) b) 切开两条边作为纹理贴图的接缝边(四个边界); b)1、 先各选择一个需要横向与纵向切开的边; b)2、 使用Edit Polygons> Selection> Select Contiguous Edges选择一整行和一整列的边; b)3、 使用Polygons> Cut UVs; b)4、 打开Display> Custom Polygon Display ,设置Highlight栏为Texture Borders显示纹理边。 c) 选择作为纹理贴图左下角原点的UVs,使用Map UV Border,参数设置为正方形(使用默认设置),映射结果如图1-058: 图03-052 选择用于UVs边界的边(左)映射UVs边(右) d) 选择所有的UVs,使用Relax UVs,参数设置选择Pin Unselected UVs,反复应用直到UVs平整为止,如图1-059。 e) 对于没有成直线的边可以使用Straighten UV Borde命令把边拉直,然后旋转再拉直,拉直的选项全设为0,如图1-060示,最终效果如图1-061。 图03-053 Relax使UVs松驰(左)Straighten UV Border Options设置(右) 图03-054 范例操作的最终结果 UVs的排版与分布; i. Normalize UVs; 用于对选择的UVs规格化到0~1纹理空间。注意不对能多个物体同时使用这个命令。如果使用Each face separately选项,则这个命令与Unitize UVs相同。如果保持UVs的U向与V向的比例,选择Preserve Aspect Ratio。 ii. Unitize UVs; 对选择的UVs进行单一化操作,所谓的单一化是指把每个面都充满纹理的0~1空间,有些类似max的面贴图方式。 iii. Layout UVs; 对选择的UVs进行排版,可防止重叠UVs的情况出现。 实际应用举例: 我们还以上面的模型为例: *1、 .打开文件,为把UV调入到UV Texture Editor中,给这个模型任意类型的基本映射UV; *2、 .选择所有的面,使用Unitize UVs,使用默认参数,结果是所有的面都充满0~1纹理空间; *3、 .切换到边选择模式,按以前的方法选择两条边作为纹理贴图的四个边,在UV Texture Editor窗口中按住shift键框选所有的边,这步操作的结果是把除了纹理边外的所有的边全部选择。 *4、 .使用polygons> Move and Sew UVs;展开程度与如图1-61中完全相同; *5、 因为现在的UV没有处在纹理的0~1空间,使用Normalize UVs,规格化UVs到0~1纹理空间。 c) UVs,的复制与粘贴; 窗口菜单Polygons>Copy UVs与Paste UVs,可以复制粘贴某个面的UV坐标信息到另一个面。这两个功能只能单个面对单个面的方式来进行UVs坐标的复制。 另外,使用Edit Polygons> Clipboard Actions> Copy以及Paste也可以对UVs的信息进行复制与粘贴,不同的是这个命令是连同材质的信息一起复制与粘贴的。 d) UV的快照; 图03-055 UV Snapshot窗口 UV Snapshot用于把纹理0~1范围内的UV产生一个图像映像,用于绘制纹理时候的一个参考。这里设置的时候要注意Color Value的值最好保持为白色,建议使用TGA或IFF等带有Alpha通道的图像格式,当在Photoshop中去背景时比较容易。 5). UV Sets; 用于不同纹理在一个模型上使用不同分布(套)的UV。UV Sets具体的编辑与使用,在稍后会做详细介绍。 6). 与多边形UV的编辑有关的多边形显示选项。 为了帮助UV的编辑,可以自定义多边形物体的显示方式,在菜单Display>Custom Polygon Display 打开如上图所示的设置窗口。 6)1、 Highlight→ Texture Borders; 在3D视图的模型表面上与UV Texture Editor中显示纹理接缝边。 6)2、 Show Item Numbers→ UVs; 7). 在UV Texture Editor窗口中显示UVs的数量(编号),如图1.3_039所示。 图03-056 自定义多边形的显示选项 Texture Coordinates→ UV/UV Topology; 使用这个显示可以在三维视窗的模型上与UV Texture Editor中显示UV(UV选项)与每个面的独立的UV(UV Topology选项),这样就可以单独选择某个面的UVs,而不会选择到其它面上的UVs。显示UV Topology时,在Editor中选择UVs时会有一个绿色的线指示选择的是哪一个面的UVs。 图03-057 多边形的UV Topology显示选项 四、Subdivision细分面的UV编辑 1. 预映射UV; 它的映射UV只有两种映射,Planar Mapping与Automatic Mapping,在Subdiv Surfaces>Texture菜单下。选项与多边形映射类似,只是因为细分模型没有的多重的纹理贴图,所以没有UV Sets的选项。 1). Planar Mapping; a) 在Standard模式中,为细分面选择Display Level。映射要求选择面,所以应该选择包含了要映射的面的Display Level。例如,要映射整个曲面,请选择Display Level 0,这样才能在整个曲面上选择面。 b) 在模型中选择所有或部分面。 如果不选中面,将不产生任何映射。请注意,Maya不会自动更改面元素的模式,当进行多边形操作映射时,该操作才会执行。 c) 在菜单中选择Subdiv Surfaces>Textrure>Planar Mapping命令或使用选项窗口。 2). Automatic Mapping; 与多边形相同。 3). Layout UVs; 与多边形相同。 2. 在Polygon Proxy模式编辑UV; 编辑UV可以在多边形代理(Polygon Proxy)或者标准(Standard)模式。使用多边形代理模式,可以有更多编辑功能。然而,因为UVs最终是要应用到底层的Sbudiv面上,所以UV可能显示有些扭曲,特别是在进一步细分区域更加明显。在Standard模式(默认)编辑UVs能确保最好的纹理的最终显示。 1). 切换到Polygon Proxy模式(在Subdivision面上 右键拖动选择Polygon)。 图03-058 模式的切换 2). 打开属性编辑器并点击polyToSubdiv标签; 3). 设置UVs; 如上图中的三个设置选项: 如果使用Standard模式的UVs,选择Keep Subd UVs,这样与代理的切换不会更改UVs的分布; 当在多边形代理模式编辑UVs时,选择Inherit UVs From Poly,编辑好UVs、退出代理模式时,UVs会复制到Subd面上; 如果面上根本没有UVs,选择No UVs On Subd。它会从表面上移除任何存在的UVs,此时这个subdv的模型没有UV的任何信息。 图03-059 设置polyToSubdiv的UVs选项 4). 使用多边形代理模式编辑UV,编辑UVs的方法同多边形模型UVs的编辑。 3. 在Standard模式编辑UV; 在standard模式下编辑UV时,首先要把PolyToSubdiv设置为Inherit UVs From Poly,以防止误操作覆盖细分面的UVs。在这个模型下就可以使用Subdiv Surfaces>Texture下的基本映射,以及在Texture Editor中的Subdivs菜单下的一些工具,其操作方法也与多边形操作相同。 使用UV Texture Editor编辑UVs 1). 在Editor窗口中显示纹理接缝边; Display>Subdiv Surface Components> UV以及UV Borders(Texture Editor);打开这两个选项可以在3D窗口与Editor窗口中显示UVs与纹理接缝边。 2). 剪切与缝合UVs; Subdivs>Cut UVs以及Move and Sew UVs; 3). UV Snapshot; Sbudivs>UV Snapshot…;使用方法同polygons的UV Snapshot,但不可以使用polygons,如果这样,它只输出多边形代理的UVs。 四、多重纹理贴图(UV Sets的使用); 许多时候模型需要针对不同的纹理使用不同的UV,在Maya中实现它是使用的UV Sets,在3dsmax中使用的是map channel来实现。 当你为一个模型分配了UV与绘制纹理之后还想为这个模型给一个从上至下的渐变,同时这个渐变不能使用为纹理贴图使用的UV(大多数情况下都不可以使用,因为均匀的渐变无法在Photoshop中根据UV的各个不同块去准确的绘制)时,可以使用多重纹理映射的方法,也就是使用UV Sets。 图03-060 UV Sets的应用 如果针对于一个比较大的场景,同时在动画中,摄像机的镜头使用从很远处推移与拉近物体很近的一个地方,而使模型的材质在不同的帧中不是使用像素过大就是过小而造成纹理闪烁或模糊,这时就可以让不同的精度纹理贴图配合摄像机镜头使用不同大小的UVs,不同纹理之间的过渡使用蒙版(mask),这种不同的UVs就是依赖UV Sets来实现。 图03-061 大场景的UV Sets使用示例 I. 关于Maya的UV Sets; Maya的多边形物体有一个名为map1的默认UV Sets,所有的2D纹理贴图默认的全部使用这个UV Set。不同的UV Set中的UV编辑方法与默认的map1中编辑方法完全相同。 查看以及UV Sets之间的切换: 第一种方法:在场景中的模型上按住鼠标右键,在弹出菜单的UV Sets下的列表中选择想要切换的UV Sets。 图03-062 UV Sets在3D窗口切换 (左)Texture Editor切换(右) 第二种方法:在UV Texture Editor中,选择窗口菜单Image> UV Sets>从列表中选择需要的UV Sets。 第三种方法:选择主菜单Window> Relationship Editor> UV Linking> UV-Centric,打开UV Linking的关系编辑器,在窗口左边的列表中点击需要切换的UV Sets。 图03-063 在UV Linking中切换UV Sets 第四种方法:主菜单Edit Polygons> Texture> Set Current UV Set…或Texture Editor窗口中Polygons>Set Current UV Set…,输入要切换的UV Set的名称,就可以切换到指定的UV Set。 图03-064 Set Current UV Set窗口 UV Sets的具体使用: 1). UV Sets的创建 ; a) 如果要同UV映射一起创建UV Sets,可以在如图03_065的映射选项中激活Create New UV Set选项并可以在文本区命名UV Sets的名称; 图03_065 在映射中创建UV Sets b) 在UV Texture Editor中创建并命名新的UV Sets; UV Texture Editor> Polygons> Create Empty UV Set ; 主菜单中创建UV Sets; Modeling>Edit Polygons> Texture> Create Empty UV Set ; c) 在UV Linking的窗口中创建新的UV Sets; Window> Relationship Editor> UV Linking> UV-Centric; 图03-066 在UV Linking中创建新的UV Sets d) 其它创建方法; 在Edit Polygons>Texture> Create UVs Based On Camera以及Unitize、Copy UVs to UV Set中都可以创建新的UV Sets,但最常用的方法是前两种a)与b)的方法。 2). UV Sets的复制与删除; a) 删除多余的UV Sets 在主菜单Edit Polygons> Texture> Delete Current UV Set以及Texture Editor窗口中Polygons> Delete Current UV Set(使用这两个命令需要把要删除的UV Sets切换为当前的UV Sets)都可以删除UV Set(如果需要重新命名UV Set,也可以在前述方法中进行),但最快捷方便并且可以多个UV Sets同时删除时,还需要在UV Linking窗口中进行操作,在这个窗口中可以一次选择多个UV Sets点击Edit菜单中的Remove UV Set。 图03-067 在UV Linking中删除多个UV Sets b) UV Sets的复制。 UV Sets的复制使用主菜单Edit Polygons> Texture> Copy UVs to UV Set或Texture Editor窗口中Polygons> Copy UVs to UV Set。 图03-068 UV Sets的复制命令 针对整个UV Set的复制覆盖与复制到新建; 在物体选择模式 下,选择复制命令可以把当前的UV Set复制并覆盖一个已有的UV Set或新建一个相同UVs的UV Set。 UV Set中部分UVs的复制覆盖与复制到新建; 在当前的UV Set下,选择部分的UVs或面,使用上述复制命令可能把当前选择的UVs坐标及块复制并覆盖其它已有的UV Set中的UVs的坐标或新建一个具有与当前选择UVs相同的新的UV Set。 3). UV Sets的联接; 在这里我们只介绍最常见的连接方法,其它的连接方法在介绍UV Chooser的Utility节点是会具体的谈到。 当模型具有一个以上的UV Sets的使用的时候就要去进行UV Sets的连接,让Maya知道2D纹理贴图使用的是哪一个UV Sets。最基本的连接方法是使用关系连接编辑器Relationship Editor。 打开连接窗口: Window> Relationship Editor> UV Linking> Texture-Centric或UV-Centric; 图03-069 UV Set的连接窗口 先点击左边的UV Set名称(在Texture –centric UV linking中是2D者纹理的名称)再点击右栏的纹理名称(在Texture –centric UV linking中是UV Set名称)。 这样连接之后,2D纹理贴图就会使用指定的UV Set来进行工作了。 六、实例制作:编辑多边形角色的UVs; 图03-070 进行编辑UVs的模型 1. 打开场景文件,根据参考彩色设定稿或者自己的安排来计划UVs的分布; 根据设定或自己的材质分块的安排可以大致地把UVs的分布情形确定下来,以这个模型为例,可以使用5至6个材质:皮肤(包括头部)、头发、上衣、裤子、鞋子、皮带。至于材质分配的多少,实际的生产中还要根据故事版以及分镜头来确定,不至于浪费与不足、特别是针对场景材质的制作,对于质感与材料相同的部分尽量保持单个材质来完成。 图03-071 根据设定分配材质 2. 建立显示层设定面的选择模式; 1). 创建如下图示的5个图层分别放置模型不同的部分,这样做的目的是方便管理与显示,互不干扰。 图03-072 建立不同的图层 2). Display> Custom Polygon Display ,打开设置多边形显示设置窗口,设置Texture Borders打开。 3. 赋予检测文件纹理; 1). 打开Window> Hypershade…,在Hypershade中的Create All Nodes工具条中建立一个新的Lambert材质,并重命名为girl_lambert; 2). 在3D视窗中选择所有的模型,并在Hypershade中的girl_lambert材质上用右击,在弹出的菜单中选择Assign Material To Selection,这样,这个材质就被赋予了场景当中的所有的物体; 图03-073 指定材质到物体 3). 打开girl_lambert属性编辑器,在Common Material Attributes栏中Color后边的 上单击; 图03-074 为材质颜色贴图 4). 在出现的Create Render Node窗口的Textures标签下选择File按钮 ; 5). 在Hypershade窗口的工作区中双击刚才生成的File1的文件纹理节点,打开其属性编辑器; 6). 在File1节点的属性编辑器中的File Attributes栏中点击Image Name后边的 按钮打开Open文件贴图的窗口,在这个窗口中找到用于测试的纹理,如:UVtest.jpg文件。 7). 在3D视窗中按数字键6或视窗菜单Shading> Hardware Texturing打开视窗的硬件纹理显示; 8). 如果有必要,设置输入到File1的放置节点的参数改变贴图在表面上的重复: 在Hypershade窗口中,双击place2dTexture1打开其属性编辑器窗口,设置Repeat UV为需要重复的数,如4。 4. 编辑UV; 1). 编辑头部的UV; a) 给整个头部映射一个圆柱形映射,在channel box中把Projection Horizontal Swee更改为360度的映射。 b) 打开UV Texture Editor窗口,选择头部的UVs沿V向缩放,让棋盘格在视窗中的显示为正方形,方便观察; 图03-075 编辑头部的UVs c) 现在可以看到,因为圆柱映射的盲区是在轴向两端的部位,所以头部与下巴部分产生了UV的拉伸,同时这两个部分没有其它物体遮挡,所以现在我们要调整这部分的UVs,让它更合理一些; 图03-076 映射盲区 i. 选择头顶部UVs扭曲部位的面,如图1-074所示,Edit Polygons>Texture>Planar Mapping ,设置映射方向Mapping Direction为Y Axis或者设置映射为Fit to Best Plane。 ii. 缩放刚映射的UVs,观察棋盘格纹理,让其大小与其它部位的UVs的大小一致如图1-074; 图03-077 处理头顶部的UVs iii. 在Texture Editor窗口中,选择靠近前额部位的UV边,使用Move and Sew UVs工具把选择的UVs再缝合在一起,减少这一部分的纹理接缝边; 图03-078 处理头顶部的UVs iv. 下巴部分使用移动工具(也可以使用平面映射),移动UVs,减少扭曲的情形。 d) 把有重叠UVs的部位的UVs切出来; i. 选择耳部、脸颊旁边征垂下的头发口腔等根部的边,切开,如图03-079示; II. 选择切开的部位,分别使用平面和圆柱(或自动映射)重新对切开的部位映射,如果为了防止重叠不好编辑除使用隔离选择之外,可先把这部分的UVs拖到空白的区域; iii. 使用切开与缝合,移动等工具调整切开部位以及眼眼内部的UVs点如图。 图03-080 头部的UV编辑结果 2). 编辑身体与服装部分的UV; a) 根据1的方法编辑身体与服装的UV,先给整个模型一个平面映射; b) 在Texture Editor窗口中,选择原先设定的材质要界把UVs切成不同的UVs 块; 图03-081 编辑身体部分的UVs c) 先编辑上衣,把其它无关的UVs移动到别的区域,选择上衣所有的面,映射一个圆柱坐标,旋转映射,把材质接缝放在腋下部位,之后把领口与袖子与其它部分与切开; 图03-082 编辑上半身服装部分的UVs d) 选择上衣胸口以上的部分,给一个圆柱映射(在texture editor中更容易选择); 图03-083 编辑上半身服装肩部UVs e) 先选择胸前部的接缝边,进行Move and Sew工具缝合,如果两块大小不同,调整大小; f) 选择肩最上部的一条水平结构线,切开,并对切开的后背肩部的UVs旋转90度,与后背的部位缝合,如果大小不一致,调整UVs; g) 针对一些较小拉伸部位局部调整UVs,最终结果如图1-081左图示; h) 对袖子进行圆柱映射,把纹理接缝放在腋下,针对领口的结构比较均匀的特点部分我们使用范例中Unitize UVs的用法对领口使用Unitize UVs,把接缝部位放在后背处或一侧,局部调整拉伸的UVs; 图03-084 编辑上半身服装UVs结果 i) 编辑身体其它部位的UVs。 3). 编辑其它细琐道具部分的UVs。 5. 排布UV,分材质制作定位前做准备。 UV全部编辑平展以后,接下来的工作就是为输出定位、绘制纹理贴图来做准备了,按照先前划分材质的方法把用于各个材质纹理的UVs使用Normalize UVs适配到纹理的0~1空间。 在排布UVs的过程中,要保证纹理贴图的合理性: 1). 纹理贴图的像素最大可能的应用; 2). 纹理贴图要尽量保持为正方形,对于一些长筒状的模型,如果为了保证贴图分辨的话,要切开多段平行放置在0~1纹理空间,这样做的具体原因在讲述文件纹理贴图时会详细说明; 6. 为了方便观察,同一个模型使用不同纹理的UVs放置在不同的0~1纹理空间,但最终用于纹理绘制时,就要求是全部放置在默认的0~1纹理工作空间,以确保在输出到PhotoShop时可以有UVs线作为参考以及在可以在模型表面上绘制。 图03-085 UV编辑的最终效果 七、多边形UV的转换与传递; 两个多边形模型之间进行UV传递很重要,在生产制作中可以让材质与Setup同步进行而不相互交叉影响制作周期。 Maya自带的对UV进行传递的命令是Transfer命令,可以在Polygons>Transfer 中打开这个命令; 图03-086 Maya的UV传递 它是通过把一个源模型的整个UV Set转换到另外一个目标模型之上,如果目标模型没有UV Set则建立和源模型相同的UV Set及UVs,如果目标模型有UV Sets,则被源模型替换,它产生的节点的行为是作用在绑定之前的模型之上,所以不存在UV游移的问题,在大规模的制作中可以使用插件或脚本对这一过程包括材质的传递进行方便生产流程的简化。 传递UV的具体方法: 1. 先选择源模型物体,再选择目标模型物体,使用Polygons>transfer命令; 图03-087 材质模型与Setup模型之间的UV传递 2. 设置只转换UV Sets; 3. 传递之后在目标模型的历史增加一个PolyTransfer节点。 在进行传递时模型之前要注意的事项: 1. 两个模型之间面数要绝对相同; 2. 两个模型之间的顶点顺序要相同; 要检查两个模型之间的面数是否相同,打开Display>Heads Up Display>Poly Count; 要检查两个模型之间的顶点顺序,可以打开模型的顶点数字显示: Display>Custom Polygon Display >Show Item Number>Numbers; 第一种情况UV Sets根本不会传递,而第二种情况会传递但UV块的分布相同,但每个面上的UVs坐标是颠倒的,并且每条连接的边都是切开不连接的(打开Custom Polygon Display>Highlight>Texture Borders可以观察),如图所示。 图03-088 错误的UV传递 第二节 绘制纹理贴图 〖教学目的〗: 清楚贴图图纹理的定位制作过程,从角色制作引伸到场景道具的贴图制作。 在UV全部编辑完成之后就可以着手准备进行纹理绘制部分了,在进行绘理制作之前有一个很重要的步骤就是在模型表面进行绘理的定位,特别是没有可参考的UVs的网格NURBS的模型,如果需要绘制一些特定的纹理如角色的五官、唇线、眉毛、发际线、服装上的Logo等都要进行定位。 一、 绘理定位; 1. 确定纹理贴图大小; 纹理贴图大小的确定主要是根据故事版来确定,场景更是这样,什么地方需要大分辨率的文件贴图,什么地方不需要,都要根据故事版分镜头来确定。对于角色与道具来说,不是太依赖于分镜头,所有的纹理贴图按最近镜头来制作。一般是先确定头面部需要丰富表情部分的贴图大小,然后其它部位大致按实体的大小对贴图大小类推。 2. Maya中定位; 在Maya中定位主要是通过3D Paint Tool工具来完成,使用3D Paint Tool工具在Rendering模块>Texturing >3D Paint Tool ;3D Paint Tool的使用如下: 1). 选择绘制纹理的模型,Texturing >3D Paint Tool 打开工具使用对话框; 2). 在Tool Settings的Display栏中设置Show Wireframe显示模型的网格; 图03-089 显示模型网格 3). 指定纹理尺寸; 先在Attribute to paint选项后选择要绘制的纹理使用类型以及Image Format中选择文件贴图格式。如果是模型使用了多重的材质与纹理,这个模型使用的所有纹理的尺寸将相同。 图03-090 指定纹理贴图 在按下Assign/Edit Texture按钮的同时,会在当前的Project的目录中增加一个名为3dPaintTextures的文件夹,专门用于存放3D paint tool所绘制出来的纹理。 如果多个模型使用了一个材质,如多个NURBS面片组成的角色模型,Assign Texture会创建一个Switch节点,让赋予这个材质的不同的物体使用不同的贴图。 如图paint工具在模型表面显示的为×号,则表明不可绘画,需要指定纹理。 图03-091 画笔不可用时的显示 如果是在已经有纹理贴图的表面上绘制纹理: a) 文件纹理:生成一个原纹理文件的拷贝放到3dPaintTextures文件夹中,并自动把文件纹理的像素大小更改为2的幂次方的值,如2106×460的贴图会更改为2048×512的像素尺寸,并把文件纹理的路径指向这里; b) 程序纹理:不支持,出现non-file texture的警告,需要转成文件纹理贴图,具体方法后面介绍。 注意:当贴图大于512时,贴图越大,绘制时更新就越慢。 4). 在Flood栏中点击color指定一个用于背景的颜色,点击Flood Paint; 图03-092 指定绘画纹理的背景颜色 5). 在Color栏设定绘画颜色与透明度; 图03-093 指定画笔的颜色 6). 在Brush栏中对画笔进行设定; Radius(U)、Radius(L)用于设置画笔的大小,如果是压杆笔,这两个值用来设置最大与最小的笔刷大小,如果没有只设置Radius(U)值就可以。也可以在视窗中按B键+鼠标中键拖动画笔调节画笔的大小。 图03-094 设置画笔 图03-095 旋转笔触 7). 在File Texture栏中点击Save Textures保存绘制的贴图; 8). 屏幕绘画映射模式; 使用Stroke栏下的Screen Projection时,画笔的位置不爱纹理接缝的影响,按照屏幕上的方向绘画,笔触与屏幕平行,如果关闭则使用物体表面方向来绘画,笔触是平行与绘画的表面的,如图示,一般来说,如果绘制纹理接缝位置、NURBS面片接合处、NURBS参数不均匀造成纹理拉伸的位置。 Z为镜像的轴。 Stamp Spacing用来设置笔触之间的间距,如图示。 图03-096 Screen Painting 图03-097 笔触形状 图03-098 笔触深度与间距 9). 在定位完成后,如果要在Photoshop中进一步绘制纹理,把UV Snapshot保存的UV快照与定位时绘制的贴图合并一个图像文件中作为参考。 3. Deepaint3D中定位; Deepaint3D是一个独立的绘理绘制软件,它提供了可与Maya、SoftImage、LightWave 3D、3dsMax与PhotoShop等交换数据的插件。使用之前要安装Deepanit3D与Maya以及PhotoShop之间相互转换的插件。 1). 加载Deepaint插件; 打开Maya插件管理器: Window>Settings/Preferences>Plug-in Manager… 在Plug-in Manager窗口中勾选RightHemisphere.mll,在Maya的主菜单出现Right Hemisphere菜单。 图03-099 加载插件与Right Hemisphere菜单项 2). 菜单的使用; a) Material Splitter; 用于输出到DeepPanit3D之前分配shader与纹理贴图;在这个对话框中可以选择材质并分配贴图到指定的属性通道。贴图大小与文件格式在Bitmaps(Optional)中设置,同时点击各个不同属性通道Details下的Assign Shading Switch可以为不同的物体在相同的材质下指定不同的纹理贴图,当模型切换到DeepPaint3D之后,使用这些相同材质不同纹理的物体会自动使用不同材质与不同的纹理。 使用这个对话框在导出模型之前设置的优点在于对纹理贴图的名称自动规范的命名,它的命名规则是:材质名.物体形节点名.属性通道名.文件格式,如:girl_head_lambert. girl_head.Color.tga 。 图03-100 Right Hemisphere Material Splitter b) Deep UV; i. Map all with DeepUV; 输出场景中所有的模型到DeepUV中调整UVs; ii. Map Selected with DeepUV; 输出选择的模型到DeepUV中调整UVs; iii. Launch DeepUV; 切换到DeepUV程序界面,如果没有打开DeepUV,则打开程序; 使用DeepUV的Maya的基本工作流程 i. 选择想要编辑UV的模型; ii. 选择Edit->Delete By Type->History (用于以防导回maya时模型有构造历史); iii. 从RightHemisphere菜单选择Map selected with DeepUV; iv. 如果DeepUV没有运行它将会启动(如果还没有启动,要先运行DeepUV,然后点击Map Selected with DeepUV),文件也将会加载入DeepUV中; v. 在DeepUV中编辑好UV后,点击DeepUV主菜单File->Export->Send UV Update; 图03-101 DeepUV输出 vi. UVs会在maya中立即更新; vii. Maya的Subdivision类型的模型导入DeepPaint3D调节UV暂不支持,不久应该可以。 c) DeepPaint3D; i. Map all with DeepPaint3D; 输出场景中所有的模型到DeepPaint3D中绘制纹理贴图; ii. Map Selected with DeepPaint3D; 输出选择的模型到DeepPaint3D中绘制纹理贴图,这个命令当对于输出多边形模型时,可以输出整个的多边形物体也可以选择一部分的面输出到DeepPaint3D中绘制纹理; iii. Launch DeepPaint3D; 切换到DeepPaint3D程序界面,如果没有打开DeepPaint3D,则打开程序; iv. 针对NURBS物体,在输入到DeepPaint3D之前,会根据命令Modify > Cnvert > NRBS to Polygons的设置把NURBS转换为Polygons,之后才输出到DeepPaint3D中;对于Subdivision类型的模型,每个面会增加级别到3倍的面数。 d) 输入与更新; Update File Textures 在Maya中重新加载使用的文件纹理贴图;当在DeepUV中根据调节的UV重新分配了贴图的像素,可用它在Maya中更新纹理。 如果是需要更新在DeepPaint3D绘制的纹理,使用DeepPaint3D主菜单File>Export>3D Application命令或工具栏上的send Material to 3D Application按钮。 图03-102 纹理输出到三维程序 如果这个纹理贴图是在Deepanti3D内部指定而不是从Maya当中导入,当使用上面的输出到3D程序这个命令时,会出现Save All Maps对话框设置,并在Maya中连接这个贴图到相应的属性。默认设置是把纹理贴图保存到Maya当前的project目录的sourceimages文件夹下面。 图03-103 DeepPaint3D输出未保存纹理选项 Import UV’s UpdateMaterials e) Establish Connection; 有些版本的插件存在这个命令。如果当导入DeepPaint3D与DeepUV之后关闭了Maya,之后当重新打开Maya时用空个与DeepUV和DeepPaint3D重新建立连接。 3). DeepPaint3D的定位; 在导入DeePaint3D之前,如果是多边形的模型需要在至少smooth一级的基础上导入定位,这是因为考虑到最终的模型的近镜头需要smooth,而多边形在smooth上后因三维空间中的顶点的插补与UV空间的插补算法不同造成UV拉移,拉移的程度取决于模型表面拓扑的疏密程序(至于详细以及更多的解决方法以后介绍)。定位过程如下: a) 在Maya中选择已经赋予材质并进行了smooth的模型使用菜单Right Hemisphere> Paint selected with DeepUV; 图03-104 导出模型到DeepPaint3D b) 系统调出DeepPaint3D程序以及加载窗口,点击OK打开,可以打开后再设置也可以在这里设置; 图03-105 DeepPaint3D导入选项 c) 设置贴图; 在要定位的表面单击,会自动切换到这个表面使用的材质。如果没有纹理贴图,则会弹出没有贴图的结话框,如下图示。 图03-106 无贴图表面警告 在右侧的Command Panel面板中打开Elements面板,在Layers标签下点击C B G S O 以下的空白方块,在弹出的Add New Channel面板中选择一种贴图类型。 C B G S O的含义是指颜色贴图Color、凹凸贴图Bump、自发光Glow(Incandescence)、高光Shine(Specular Color)以及透明度Opacity(Transparency)(括号中为相对应Maya的属性通道)。 Add New Channel的三个选项: Nothing:点击会出现设置贴图大小的对话框来设置贴图X与Y方向的像素大小。 An Image:为属性通道指定一个贴图,点击弹出Open贴图的对话框; 注意:当为属性通道设置一个大小的贴图之后,如果再去除这个贴图或为其它通道指定一个贴图时,会把当前要打开的图像大小根据原贴图大小更改图像尺寸。如果是替换同一属性通道,可以先用Nothing设置一个与要打开图像尺寸相同的贴图,删除之后再调入要打开的图像或者在Material标签下双击相应的材质球,重新设定X Size与Y Size的值。 Color:类似Nothing,不同的是可以为贴图指定一个背景颜色。 图03-107 设置贴图 d) 打开Brush&Painting Setting面板,设置画笔开始绘画; 图03-108 画笔设置 在Brush&Paint设置面板中可以设置画笔大小、形状、间距、透明、渐隐、画布与材质等。如果只设置画笔大小,可以按住 左键在工作窗口中上下拖动(向上为加大,向下为减小),如果设置画笔的透明度,可以按住 左键在工作窗口中左右拖动(向左为透明度趋向0%,向右为趋向100%),更改画笔的第宽比使用 左键上下拖动,旋转画笔使用 左键左右拖动,如果需要画笔在表面上放置的预览,按住 左键在表面上单击。 定位时的绘制只是画出一些特定的、方便在PhotoShop中进一步绘制观察的一些线条等,如果不在PhotoShop中进一步绘制,也可在DeepPaint3D中不用定位,直接完成纹理贴图的制作。 图03-109 定位之后的模型 注:在绘制同心圆时,可以按住shift画正圆、ctrl定心圆心、alt沿最早开始点旋转,其它几何图形亦相同。 e) 绘制完成之后,点击File>Export>Material→Photoshop或在工具栏中点击输出到Photoshop按钮。 图03-110 输出按钮 当需要从Photoshop中导回DeepPaint3D时,不要在Photoshop中更改图层的顺序、名称、添加与删除图层等,否则导回DeepPaint3D的结果不正确。 4). 使用屏幕映射方式定位或绘制贴图; 屏幕映射方式(Projection Paint)用来解决材质接缝与UV扭曲部位的纹理制作。它是使用屏幕坐标作为模型的一个临时的UV坐标,然后把映射时的纹理转换到模型的UV坐标上,如果某个通道有多个层则映射的纹理会叠加到最顶的层上。 a) 映射选项; File>Preferences>Projection Paint或工具栏中映射选项按钮。 图03-111 映射相关按钮与映射的选项 Start in projection mode:开启DeepPaint3D后自动进入映射绘画模式; Paint only visible pixels:仅在模型可见的面上绘制纹理(忽略背面); Pan and zoom without projecting:如果勾选,在映射过程中移动与缩放视图时不进行映射; Projection bleed:用于给出类似MipMapping、纹理贴图的Filtering和JPEG的抗锯齿的结果。值越高映射操作越慢。 Lock paint layer size:用于指定映射的屏幕大小以及锁定这个值,它一般用于需要映射比屏幕像素尺寸大的图像时可以设置比屏幕尺寸大的映射像素尺寸。 Projection material channels:映射的通道,在字母上点击可以激活映射的通道。 Warnings: Inconsistent opacities:用于多个不同透明度的材质映射时不作为一个临时的透明层; Inconsistent channels:用于使用了不同类型通道的不同材质,在映射时不作为一个临时的映射绘画层。 Projection not undo-able:映射操作将不能被撤消。 Only 2nd layer will be projected:来自映射材质的图层被添加或删除。只有在Projection material channels栏下的Reference层(称为第二层)才被映射,之前建立的临时的所有映射层都被合并到这个层中。 b) 为防止在映射之后可以撤消映射产生的像素,在每次映射之前先建立一个新的图层与先前绘制的像素隔开; c) 在映射模式中,图章工具Clone(s) 不可用。 5). 在绘画过程的网格显示; 在视窗中模型上右击,在弹出菜单中选择Display wire frame可以显示模型的网格。 图03-112 辅助网格的显示 在Command Panel面板>Setting(F8) >Scene 标签下的wireframe Options可以进一步设置网格的显示方式(1-显示所有边、2-显示纹理接缝边、3、显示一定角度的边)。 图03-113 网格的三种显示方式 6). 多UV Sets的UV编辑与定位; Deep3D不支持多个UV Channel以及UV Set,只认当前的UV Set。当需要对多个UV Sets的其中一个进行定位时,需要在Maya中用3D Paint tool定位或将这个UV Set切换为当前的UV Set导入Deep3D中定位。 编辑单独的UVSet i. 要映射一个不同的UVSet,从Maya的window菜单当中选择UV Texture Editor窗口。 ii. 选择要映射的模型,选择Edit->Delete By Type->History 。 iii. 在UV Texture Editor窗口中的Image>UV Sets菜单选择编辑的UV Sets。 iv. 可以在maya中重复这个步骤切换其它模型的默认UVSet。 v. 所有模型设置好当前的UV Sets后从RightHemisphere菜单选择map Selected with DeepUV 命令。 vi. 文件将会加载入DeepUV中。 vii. 在DeepUV中编辑UV。 viii. 点击File->Export->Send UV Update。 ix. 选择的单个的uvsets将会在maya当中更新。 在Deepaint3D中多UV Sets定位与绘制的方法与DeepUV方法相同。 二、 绘制纹理; 当定位完成之后就可以导入Photoshop中开始绘制纹理贴图。在绘制纹理贴图时,如果是追求真实的效果就需要多利用现实生活中的真实的纹理与自然的肌理,经过修饰变成适合自己模型所需要的贴图。 1. 设置Photoshop的颜色管理; 在Photoshop中按Ctrl+Shift+K或编辑(Edit)>颜色管理(Color Setting)打开颜色管理设置窗口,在设置后面选择:色彩管理关闭(Color Management Off),防止绘画颜色与实际颜色有很大的差别。 2. 绘制纹理贴图; 通常绘制的贴图有三种类型:颜色Color、凹凸Bump、高光Specular,其它的还有自发光贴图Incandescence、透明贴图Transparency(或蒙版Mask)、漫反射贴图Diffuse以及Glow发光贴图等等。在绘制贴图的过程中要注意各个通道之前的衔接,如角色面部的一条皱纹,在颜色上可能表现为深色,在制作Bump时因为凹下在贴图的相应部位也应为深色,同时高光贴图上因不具有高光也相应为深色。 在绘制过程中,对于一些特定的纹理如皱纹,污渍等进行分层绘画,并命名各个图层,以备在制作其它属性通道贴图时方便使用与修改。 角色纹理绘制示例; 图03-114 Photoshop中的分层 图03-115 原始素材 图03-116 最终贴图 图03-117 纹理做脏、旧效果 在制作角色皮肤的时候,不但要表达生物的自然的表面肌理,更重要的是还要表达生物如生的质感,所以在颜色、凹凸、高光控制之外,还有必要控制表面的漫反射、些许的自发光、肌肤的半透明等方面的体现。 图03-118角色皮肤的三个基本贴图 图03-119 使用基本贴图的角色效果 3. 处理材质接缝; 在Photoshop、DepPaint3D或Maya中大致绘制纹理后,最后的纹理处理就是去除对材质的接缝,一般消除接缝是在DeepPaint3D中使用clone工具或Projection Paint模式,也可以在Maya中使用3D Paint tool的clone笔,使材质接缝处的像素大致相同来去除接缝。如果是针对场景大面积的使用重复纹理的话,还需要在Photoshop中制作无缝纹理。 4. 实例制作:角色纹理的定位与制作; 1). 打开编辑好UVs的模型:polygirl_l_tx_001.mb; 2). 选择Right Hemisphere>Paint all with DeepPaint3D,将所有模型导入到DeepPaint3D中; 3). 在DeepPaint3D中检查法线与面,把不正确显示的面更改; 在本例中因眼睛是在Maya中镜像复制的NURBS球体,所以其面是不可见的。在模型右眼的位置单右鼠标右键,在弹出菜单中选项Object Properties命令,在Object Property设置窗口中点击F lip Normals(一些情况下需要点击Flip Faces)。 图03-120 更改不正确模型显示 图03-121 Object Properties选项 图03-122 更正之后的显示 4). 为每个材质设置Color贴图; a) 在头部点击,然后在Layers标签C字母下点击空白按钮,在出现的对话框中选择None并设置贴图大小为1024×1204; b) 上衣、裤子,皮肤、鞋子的的贴图均设置为1024×1024; 5). 设置合适的画笔大小,逐个为每个材质所对应的模型部位定位,定位结果如下图,保存文件为polygirl.dp3文件; 图03-123 定位 6). 逐个导入Photoshop中开始制作纹理贴图; 7). 制作无缝纹理; a) 打开如下图的素材纹理; 图03-124 用于制作服装的素材 b) 使用滤镜(Filter)>偏移(Offset),设置水平与垂直偏移为图像大小的一半,本例中各偏移512; 图03-125 偏移之后图中央的接缝 c) 复制一部分纹理到接缝处,使用像皮擦 除上下两边的像素,必要时使用画笔 与橡皮图章 修补明显变化的接缝像素; 图03-126 处理接缝 d) 使用相同方法去除垂直的接缝; e) 再使用偏移滤镜检查接缝,如果有再处理。 f) 把素材缩小尺寸至256×256,用于制作角色裤子的重复纹理。 8). 制作裤子纹理示范: a) 在DeepPaint3D中点击裤子部分的模型以切换到裤子的材质,点击工具栏中Export Material to Photoshop 按钮; b) 在Photoshop中另存导入的文件为girl_body_pant.psd; c) 把前面制作的无缝纹理定义为图案,编辑(Edit)>定义图案(Define Pattern),命名为cloth; d) 打开girl_body_pant.psd文件,使用编辑(Edit)>填充(Fill),在对话框中,内容(Contents)栏使用(Use)选项设置为图案(Pattern),并在自定图案(Custom Pattern)找到刚才定义的图案,其它选项使用默认的选项填充; e) 根据定位线使用加亮 与加深 工具开始制作服装的裁剪缝合线、折边与褶皱等; f) 使用路径描出缝纫的边线,增加标签、商标、金属扣等细节,并根据颜色图制作bump贴图,根据金属扣制作高光贴图; 图03-127 裤子的文件贴图 g) 如果有材质接缝,贴入DeepPaint3D中去除接缝,并在Maya中赋给相应的属性。 图03-128 裤子最终渲染效果 h) 裤子的渲染效果如上图03-128; 9). 制作其它部位材质如图。 图03-129 最终效果 |
| 第八章 勾边和卡通特效 在物体表面勾勒出的轮廓线,被用在卡通动画来提供视觉信号来区别物体和强调它们的外形、照明和空间关系。勾边渲染在mental ray渲染软件中作为标准的色彩渲染的补充。它通过在渲染期间判定在什么时间什么地方如何放置边缘曲线, 然后,进行后期处理,基于这个结果描绘边线。这些绘画可以在渲染色彩图像的上面,或于间隔色彩帧缓存内(如果只要求有所勾的边线),或是生成一个PostScript文件。勾边渲染的所有的阶段都可以用shader编程控制。 8.1 标准的勾边生成 勾边渲染需要四个步骤,每一步用一个shader完成: 1.contour store shader在参数块里定义或在Render Global Settings窗口里连接,被调用来完成每一图像的取样。判定何处要勾边,勾边的线自身,及其基于的信息存储在它里面。通常包括色彩,深度,法线矢量,还有其它的信息。 图8-1-01 2.mental ray随时会比较两个取样,它调用contour contrast shader,它也放在参数块里或在Render Global Settings窗口里连接,有为计算这两个取样值,而被contour store shader收集的信息。contour contrast shader决定这两部分信息是否有足够的差异来在中间生成线条。 3.如果contour contrast shader需要线条,material里的contour shader就被调用来决定色彩,宽度,以及这线条在两点之间的其它属性。然后mental ray再连接这两个边缘上的点成为线段,每条线段有两个端点。每个端点有一个坐标和色彩,宽度,深度,标签,运动矢量,及法线矢量。这一段被存储在一个特设的线段表里,放在帧缓存一个独立的部分里。 4.在渲染完成之后,contour output shader被调用。它会访问所有的勾边线段并将它们绘制到帧缓存的色彩里,也可能会先将它清空,或是生成一个PostScript文件。 所有四种类型的shader都可由用户编程生成。所有的范例都会在contour.so shader库里,它随mental ray分发给用户。contour.mi文件包含有contour.so文件的说明。 生成勾边特效,下面的步骤是必需的: 1.添加一个contour store shader语句到参数块,或在Render Global Settings窗口里连接。 2.添加一个contour contrast shader语句到参数块,或在Render Global Settings窗口里连接。 3.添加一个contour shader语句到所有的要勾边的物体的material。 4.添加一个output语句,或连接一个contour output shader到相机的定义里。 5.在参数块里(或在Render Global Settings窗口里)使用取样值samples 0 2(或类似的)语句,设定oversampling范围到足够高,以避免勾边相交处的精度问题。最大取样值,2或3一般就足够了。 前三种类型的shader形成了一个整体的匹配设置。例如,他们必须在被contour store shader存储的信息类型上完全相符,他们才能精确的转译。 8.2 外轮廓勾边 勾边的位置和形态是很重要的,位置取决于contour contrast shader在参数块里的选择选项和参数的设置,形态取决于material里的contour shader的选择选项和参数的设置。 contour.so (或contour.dll)shader库包含一对相互匹配的contour store shader (contour_store_function)和contour contrast shader(contour_contrast_function_levels)。后者有多样化的shader参数,可以用来生成不同的多种特效,本章会一一介绍。这两个shader,就象mental ray所使用的所有类型的shader一样,可以重新编写成自定义的shader,来生成其它种类的勾边特效——例如:以物体的标记区分,在同一场景的不同物体上,混合不同的勾边特效。 第一个例子使用contour_contrast_function_levels在物体的外边缘,深度变大(Z坐标的delta值)的地方,来选择性的勾边。 读者可以找到光盘上的\chapter8_project\scenes\目录下的contour_outline.mb场景文件。我们可以看到,场景中有一只瓶子。直接进行渲染可以得到下图左边的图像,将contour_composite shader与persp相机节点断开之后渲染,可以得到下图右边的右边的结果。 如果只想要勾边的线,而不要其它的色彩,读者可以用contour_only shader来取代contour_composite shader,这样生成的图象就只有勾边线。 图8-2-01 contour_contrast_function_levels的参数指定了勾边的线在深度(Z delta)大于2.0的时候使用zdelta参数。ndelta参数放置勾边线段在高曲率的地方,这里设为到180度就关闭曲线勾边。勾边也通过设置max_level参数到1,限制不同的第一光线;外轮廓勾边将不显示场景里其它物体的反射或折射外边缘。 图8-2-02 在material里的contour_shader_simple contour shader只有两个参数:color参数选择轮廓线的RGBA色彩,with参数以渲染图像的宽度(X向分辨率)的百分比设定轮廓线的宽度。宽度被以百分比的形式给出,以确定勾边的线随相机设定里图像的分辨率的变化而改变。指定勾边线的色彩为RGBA值,有一个大于0的alpha成分(第四个数),是很重要的。值为1是完全不透明的边线,这是最好的情况。小于1的值可以生成半透明的边缘。 图8-2-03 8.3 PostScript输出 有时,我们并不需要实际的图像色彩,而是需要的PostScript图样。PostScript输出对于大型的线型图纸印刷是非常有用的。计算“布景”用复杂的相机运动和透视计算,但角色仍可用手绘。艺术家画这些角色需要印出背景,以便使他们画的精确匹配场景中其余的东西。PostScript比起手工拼贴的方法更有效率也更快。 我们可以更改相机的contour_composite shader为contour_ps shader。打开光盘上的\chapter8_project\scenes\目录下的contour_ps文件,照下图进行设置: 图8-3-01 在调用勾边输出shader contour_ps之前,没有图像绘制出来。contour_ps shader在内存里产生了一个PostScript文件。paper_size参数,从下面的表中选择图纸的正确格式。 数字 图纸格式 0 信函 1 executive 2 legal 3-6 DIN A3,A4,A5,A6 7-9 DIN B4,B5,B6 10 11×17 A型的纸,边缘有5%空白;打印机也不会打印到纸的边缘。scale参数缩放打印输出;1.0是不缩放。paper_transform参数允许进行打印机的倾斜补偿,用x+b*y和d*y的x(横向)和y(竖向)。如果忽略或设为0和1,如这个范例,没有使用倾斜坐标。 contour_ps输出shader也有两个布尔参数: title,可激活在PostScript文件里的标题线; landscape,可以旋转输出90度。 file_name指定输出勾边线的PostScript文件名。渲染之后,生成的文件存放在\chapter8_project\mentalRay\目录下,可以用Adobe photoshop打开。如下图: 图8-3-02 8.4 Edge边缘勾边 通过改变前面contour_outline.mb场景文件里contour_contrast_function_levels contour contrast shader的参数,勾边就改变为沿着物体内部边缘。参数块改变为如下: 图8-4-01 较小的zdelta值可以让生成的物体,线穿过物体的前面。较小的ndelta参数会在尖锐的边缘上生成勾边线,在表面方向改变大于60度的地方被勾边。渲染结果如下图: 图8-4-02 8.5 反射和折射的勾边 contour_contrast_function_levels shader的max_level参数,可以控制是否在这个或其它物体的的反射部分的边缘处勾边,或是在环绕物体的可见的最前面的一个的表面的后方。这是通过让shader考虑一个不同的情况,即将跟踪的深度来对照。如果max_level参数设为1,只有第一光线(在一个假定的像素上,从相机到最前面的物体)被计算;如果增加到2,首先考虑反射和折射;更大的值也包含有反射和折射。 打开光盘\chapter8_project\scenes\目录下的contour_trace.mb场景文件。可以看到,我们用透明的玻璃材质取代了原来的Mib_illum_blinn material shader,并且添加了高对比度的地面。光影跟踪的最大次数也设为2 2 4。线宽加粗为0.5。contour_contrast_function_levels shader的Max_level参数设为4。 图8-5-01 渲染的结果如下,我们可以清晰的看到环绕反射和折射部分的勾边线。 图8-5-02 8.6 可变宽度的勾边 前面例子所有的勾边线宽度都是不变的。卡通动画通常需要可变的边线宽度,以生成自然的外观:勾边可能在阴影的地方变宽,接近相机或环绕被勾边物体的较暗的部分。 material说明里的contour shader负责所有这些特效。就是说不同的物体,或同一物体的不同部分,可以使用不同的处理方法,来控制边线的宽度和色彩。我们可以用contour_shader_withfromecolor或contour shader contour_shader_widthfromlight来分别根据表面的色彩或朝向光源的关系,改变边线的宽度。 我们可以打开光盘\chapter8_project\scenes\目录下的contour_widthcolor.mb场景文件。已经用contour_shader_withfromcolor shader取代了原来的contour_shader_simple shader。设置如下: 图8-6-01 要勾选contour_contrast_function_level shader的Contrast选项。 图8-6-02 渲染的结果如下: 图8-6-03 我们可以打开光盘\chapter8_project\scenes\目录下的contour_widthlight.mb场景文件。已经用contour_shader_withfromlight shader取代了原来的contour_shader_simple shader。设置如下: 图8-6-04 min_width和max_width参数控制宽度的范围。光源的替换名也必须给出。渲染结果如下: 图8-6-05 8.7 发光的边缘和镶嵌细分 勾边线不需要一定是厚实的不透明线。contour_composite contour output shader也能绘制成柔和画笔的勾边。创造成一个发光特效环绕着明亮的物体。激活Glow和Maxcomp参数即可。 图8-7-01 maxcomp参数能确保正确混和邻近的轮廓线。 渲染结果如下: 图8-7-02 场景文件保存在\chapter8_project\scenes\下,名为contour_glow.mb,用的是曲率勾边方式。 而镶嵌细分的勾边只需勾选contour_contrast_function_level shader的Diff_index选项即可。 图8-7-03 渲染结果: 图8-7-04 |
| 第六章 动画场景中的陈设道具 第一节 动画场景的道具陈设的基本概念、 在动画影视中,道具作用是为演员和环境架起合理桥梁 道具就是演剧或摄制电影时表演用的器物,我们称之为“道具”,如桌子、椅子等叫大道具,纸烟、茶杯等叫小道具。无论道具的大与小,在整个动画场景中都是不可忽视的。 道具是会“说话”的工具,就像一个隐形的演员,帮助主要演员得到更好的发挥,为整个剧目埋伏情节和动作,起着不可小视的关键作用。道具在戏剧影视中起着自始至终的潜在作用,在整个剧中带动着故事发展的悬念。 二.道具的简要分类 动画影片中的道具,是为了剧情更好的进行而设置的,它不像现实生活中的家具是为了实用。动画场景中的陈设道具可以简要的分为四大类: (一)环境道具 通过道具来描写时代、社会的变化,以及特定环境的典型性,它要有时代、民族、地域的特征,就像宫廷、寺院、公园等。如图6-1和图6-2。 图6-1 图6-2 (二)剧情道具 通过道具来发展剧情,造成人物的矛盾和冲突,即便是小小的辅助的道具,也应让它发挥其特有的作用。例如电视动画《灌篮高手》中,赛场上的篮球推动着整个剧情的发展,如图6-3。 图6-3。 (三)性格道具 喜剧大师卓别林是一个特别会使用道具的演员,他在电影中总会穿着他那套流浪汉的衣服、和他身材极不相称的宽大的裤子、巨大靴子,观众只从外型上就可以看出他所饰演的小流浪汉的形象,如图(6-4)。还有工夫皇帝李小龙的双截棍,图(6-5)孙悟空的金箍棒,图(6-6)罗宾汉的帽子、弓箭等等,如图(6-7)。 图(6-4) 图(6-5) 图(6-6) 图(6-7) (四)装饰道具 三.组成道具的因素,即道具设计 一)结构造型 按照美学的一种艺术分类方法,凡诉诸于视觉的艺术,是属于造型艺术。 道具的造型和建筑的造型应是统一的。如果唐代的建筑用了明代的道具,不仅是时代错误,更是不明历史理性,会给观众带来错乱的视线和想法。 (二)色彩 现代偶像剧中年轻人的生活环境、墙面、桌椅、窗帘等等常常被涂成五彩缤纷,这就是对青春生活美好灿烂幸福阳光的最直接的抒情描写,通过道具的色彩合理的运用,更好的深化了主题,体现了年轻人的兴趣爱好和对美的追求。道具色彩起了关键的作用。 三)装饰性 道具在辅助演出和埋伏剧情的同时,还可以作为填补画面空白的装饰品,就像生活中的艺术品一样,不仅为演剧带来了演出所需,还为观众的视觉带来亮彩,为整出剧目的观赏性上提供了享受。“道具的造型、装饰、色彩、陈设,是最能反映时代气息和民族特征的,也是刻画典型环境最有表现力的形象。” [姜今:《银幕与舞台画面构思》2001年3月版,第303页] 第二节 陈设道具在影片中的作用 在动画电影中,应根据整个剧目的整体要求来设计道具。必须从剧本、人物和动作情节出发进行选择,并在选择的基础上进行艺术概括,对道具进行再创造,从而达到道具的艺术表现力。道具还起到刻画人物角色身份、性格和情绪等。 一.交代人物身份: 在现实生活中,我们通过一些用具来体现人物的身份,比如白色制服,白帽子,注射器,我们通过这些道具知道这是护士或者医生的身份。军人的军服,勋章、肩章可以体现军人不同的级别,还有粉笔交代教师的身份等等,但是在动画片中,这些道具往往被夸张运用,如在憨豆动画片中,医生用的注射器被夸大,如图(6-8)在交代人物身份同时还体现出对医生医疗器械的一种恐惧感。 图(6-8) 二.塑造心理空间 动画影片《花木兰》木兰替父这场戏中,木兰看到父亲不顾自己残疾的身体,誓死保卫国家的决心后,一个人跑到屋外的石像神龙下面蹲着,这时交代的景是深夜雨中,通过地面水的倒影,木兰看到了自己的脸,这是一张忧伤的脸,水波也使这张脸晃动变形,我们通过水面这一环境道具可以看到木兰不安,忧虑的心情,如图(6-9)。木兰深夜将自己的发夹放在父母床前,并且取出父亲的宝剑割掉长发,恰当的塑造了花木兰放下自己女儿之身,替父从军的决心,图(6-10)、图(6-11)。在替父从军这一场戏中,没有任何台词对白,仅仅通过发卡,宝剑,割断的长发几个简单的道具就将木兰替父从军内心变化表现得恰到好处。 图(6-9) 图(6-10) 图 (6-11) 图(6-12) 三.刻画人物性格 在喜剧大师卓别林主演的《大独裁者》中,巧妙将希特勒手中把玩的一个地球仪,刻画出了希特勒征服世界的野心。 动画电影《侠盗罗宾汉》中,约翰亲王是一位残暴,贪婪的不称职的英国国王,他的出场总是头带一顶比其头颅大很多的皇冠,这一性格道具,暗示了约翰亲王的国王身份是冒牌的,是不称职,如图(6-13)。影片最后利用皇冠这个道具制作成的 木偶,讽刺约翰亲王冒牌身份,如图(6-14)。 图(6-13) 图(6-14) 四.烘托人物情绪 在动画影片《花田少年史》中年轻的妈妈失去了最心爱的儿子,如图(6-15),凌乱的道具四散在屋子角落,这些物件都是年轻妈妈的儿子生前用过的,这位丧子的母亲看着儿子生前用过的物品暗自伤神。这些凌乱的道具恰如其分的体现了年亲妈妈内心思念、悲伤的情绪。 普通物件和道具一旦和影视片中人物命运、事件纠葛以及人物所处环境发生不可分割的联系,就成为物件细节,能在影视片中起到刻画人物性格和内心活动、展开并串连故事情节、设置悬念、强化冲突等作用。 所有的剧目在没有道具的支持下,居多情况下是无法完全充分表现表演出剧情的。道具也许只是为了填补空白的空间结构,但在更多的成分下,某一道具是整个故事的支点,这是不容置疑的。尤其是情景剧,道具在其中出现的比率是相当高的。 道具不仅为演员提供了好的“助手”,同时也带给观众视觉上的享受,更深层次上可以说是造型上的艺术品。在画面中道具填补了空间上的空白,更在人们的心里添上了一笔亮彩。只有好的再创造发展,才能顺应人们的心里要求。 图(6-15) |
| 第8章 渲 染 设 置 学习目的: 本章主要讲解Maya渲染的设置命令,通过对渲染的基本原理与原则的学习,读者应正确理解渲染设置在三维动画制作流程的重要作用,进而熟练掌握Maya渲染的设置技巧。 学习提示: 读者在熟悉这些命令后,要根据动画制作的要求,合理地整合渲染设置命令,此外还要阅读与借鉴电影方面的书籍与资料,才能在短时间内提高Maya渲染的设置技巧。 渲染,英文为Render,也有的把它称为着色,但笔者更习惯把Shade称为着色,把Render称为渲染。因为Render和Shade值两个词在三维软件中是截然不同的两个概念。在Maya软件中Shade显示出灯光、阴影效果和表面纹理,显示的品质主要由显卡决定,专业显卡可以加速优化三维图形显示,也就是常说的OpenGL加速。Render是实现最终效果的程序,它将场景中的模型输出为图像文件、视频信号或电影胶片。由于图形技术不断发展,对Render程序有了更多的解决方法,如图8-1所示。 图8-1 左为Shade效果 右为Render效果 8.1 渲染的基本过程 首先,必须定位三维场景中的摄像机,这和真实的摄影是一样的。一般来说,三维软件已经提供了四个默认的摄像机,那就是软件中四个主要的窗口,分为顶视图、正视图、侧视图和透视图。我们大多数时候渲染的是透视图而不是其他视图,透视图的摄像机基本遵循真实摄像机的原理,所以我们看到的结果才会和真实的三维世界一样,具备立体感。接下来,为了体现空间感,渲染程序要做一些“特殊”的工作,就是决定哪些物体在前面、哪些物体在后面和那些物体被遮挡等。空间感仅通过物体的遮挡关系是不能完美再现的,很多初学三维的人只注意立体感的塑造而忽略了空间感。要知道空间感和光源的衰减、环境雾、景深效果都是有着密切联系的。 渲染程序通过摄像机获取了需要渲染的范围之后,就要计算光源对物体的影响,这和真实世界的情况又是一样的。许多三维软件都有默认的光源,否则,我们是看不到透视图中的着色效果的,更不要说渲染了。因此,渲染程序就是要计算我们在场景中添加的每一个光源对物体的影响。和真实世界中光源不同的是,渲染程序往往要计算大量的辅助光源。在场景中,有的光源会照射所有的物体,而有的光源只照射某个物体,这样使得原本简单的事情又变得复杂起来。在这之后,还要是使用深度贴图阴影还是使用光线追踪阴影?这往往取决于在场景中是否使用了透明材质的物体计算光源投射出来的阴影。另外,使用了面积光源之后,渲染程序还要计算一种特殊的阴影——软阴影(只能使用光线追踪),场景中的光源如果使用了光源特效,渲染程序还将花费更多的系统资源来计算特效的结果,特别是体积光,也称为灯光雾,它会占用大量的系统资源,使用的时候一定要注意。 在这之后,渲染程序还要根据物体的材质来计算物体表面的颜色,材质的类型不同,属性不同,纹理不同都会产生各种不同的效果。而且,这个结果不是独立存在的,它必须和前面所说的光源结合起来。如果场景中有粒子系统,比如火焰、烟雾等,渲染程序都要加以计算,如图8-2所示。 图8-2 渲染的基本过程 8.2 摄像机 8.2.1 三维动画中摄像机的意义 一幅渲染出来的图像其实就是一幅画面。在模型定位之后,光源和材质决定了画面的色调,而摄像机就决定了画面的构图,如图8-3所示。在确定摄像机的位置时,总是考虑到大众的视觉习惯,否则画面会看起来很别扭。在影视作品中,摄影机的自由度会大得多,为了表现特殊的情感效果。有时会故意使用一些夸张、甚至极端的镜头,要注意区别对待。那么,在三维软件中的摄像机除了影响构图之外,还有什么其他的作用呢?当然有,这就是景深效果和运动模糊。应该说这两种特效都是和摄像机密不可分的,因为摄像机(或照相机)都有光圈和快门,而光圈和快门就是产生景深效果和运动模糊的直接原因,所以,运用好这两种特效是再现真实影像效果的必要手段。 图8-3 静帧作品中摄像机的意义 三维软件的摄像机,除了上面提到的内容外,还有更复杂的部分,那就是摄像机的运动。如果你的工作不会涉及到动画制作,可以忽略与摄像机运动有关的内容,但不论怎样,读者花点时间阅读摄像方面的书籍是很有帮助的,因为影视作品对影像的要求和我们平时照相是完全不同,照相注重构图和用光,而影视作品更讲究镜头的运动和镜头的组接,如图8-4所示。三维动画制作通常都是先有了分镜头脚本(也叫故事板)才开始制作的。每个分镜头脚本中都注明了该用什么样的镜头以及如何运用镜头,但这并不表示我们可以不用学习镜头语言,假如你对镜头一无所知,那该怎样才能看懂分镜头脚本呢?也就更谈不上制作了吧。 图8-4 三维动画中摄像机的意义 8.2.2 视图布局 视图实际上是通过虚拟摄像机来观看的视图。共分为四个默认视图:顶视图、前视图、侧视图和透视图,另外在View还可以切换其他视图,如图8-5所示。 图8-5 Maya的四种默认视图 8.2.3 创建摄像机 选择“Create” |“Camera”|“Camera”命令,创建一台摄像机。Maya自身提供了三种摄像机:Camera (自由摄像机) 、Camera and Aim(目标摄像机) 、Camera,Aim, and up(手柄摄像机),如图8-6、图8-7所示。 图8-6 Maya提供了三种摄像机 8-7 Maya的摄像机属性 8.2.4 摄像机工具 选择 “View”|“Camera Tool”命令,可以对摄像机进行推拉、平移、旋转等操作,如图8-8、图8-9所示。 图8-8 Maya的摄像机工具 图8-9 Maya的摄像机工具 Tumble Tool:翻转工具。在透视图中,通过改变方位角和高度角来旋转摄像机,快捷键是Alt+鼠标左键。 Track Tool:移动工具。在水平方向或者垂直方向上滑动视图,快捷键是Alt+鼠标中键。 Dolly:推拉工具。沿视线前后移动摄像机,快捷键是Alt+鼠标左键和中键,在透视图或正交图中都可以使用该命令。 Zoom:缩放工具。改变摄像机的焦距,放大为长距镜头,缩小为广角镜头。在透视图或正交视图中都可以使用。要在不改变视图角度的情况下放大或缩小,可以使用缩放工具。 Roll:滚动工具。沿视图的水平轴进行旋转。 Azimuth Elevation Tool:方位角工具。围绕透视图的关注点旋转摄像机。 Yaw Pitch Tool:偏移工具。从正交视图变为透视图。 Fly Tool:飞行工具。在使用该工具时按住Ctrl键,然后用鼠标左键拖拽即可。 8.2.5 Camera Attribute(摄影机属性) 选择摄像机的投射点,按下键盘的Ctrl+A,打开摄影机的属性栏,如图8-10所示。 Angle of View(视角):决定了镜头中物体的大小,如图8-11,图8-12,图8-13所示。 8-10 Maya的摄像机属性 8-11 Angle of View的数值为80的效果 8-12 Angle of View的数值为50的效果 8-13 Angle of View的数值为20的效果 Focal Length(焦距):镜头中心至胶片的距离,Focal Length数值随Angle of View数值的变化而改变。 Camera Scale:焦距的缩放值。 Near Clip Plane:近切面。以距离为基准。 Far Clip Plane:远切面。以物体为基准。 8.2.6 Depth of Field(景深) 真实世界中摄影机有一个距离范围,在此范围内的物体都是聚焦的,这个范围称为摄影机的Depth of Field(景深)。在此范围之外的(过于靠近摄影机或过于远离摄影机)物体将是模糊的。Maya中默认下无论物体距离摄影机远近,物体都是聚焦的,通过如图8-14所示的设置可以模仿真实摄影机的景深效果。 图8-14 Depth of Field的参数设置 Depth of Field (景深):打开摄影机的属性编辑器视窗,在Depth of Field选项中勾选Depth of Field项,可以通过改变景深属性来控制哪些物体是聚焦的,哪些物体是没有聚焦的。 Focus Distance (聚焦距离):用于改变景深范围最远点与摄影机之问的距离。如果要缩放它的属性,可以调节Focus Region Scale属性。 F Stop:调节F Stop属性,可以改变景深范围的大小(F Stop属性值越小,则景深越大)。 Focus Region Scale(聚焦区域缩放):控制失焦锐化度,Focus Region Scale越小,景深以外的物体越模糊。 如果Focus Distance为2.740,F Stop为4,那么可以理解为摄像机在2.740个单位以内会模糊,4个单位以外也会模糊,即2.740~4个单位之间为清晰,如图8-16所示。 从图8-16中可以知道,第一个人物在2.740个单位之内,第三、四个人物则在4个单位之外,所以两者都是模糊的。而第二个人物之所以清晰是因为在两值之间。 修改摄像机的景深参数,观察变化:将Focus Distance参数设为1.964, F Stop参数设为4,效果如图8-15所示,读者可以根据上述讲解,通过设置摄像机的景深完成图8-17、图8-18所示的效果。 图8-15 图8-16 图8-17 图8-18 除此以外,还有一种更方便、更快捷的控制镜头景深的方法: 首先建立一台目标摄像机(Camera and Aim)。 执行“Window”|“Outliner”命令,打开Outliner窗口,如图8-19所示。 这时用户会发现Camera1 _group1的下方有一台摄像机。 执行“Window”|“General Editors”|“Connection Editor”命令, 在Connection Editor窗口中链接节点,如图8-20所示。 图8-19 Outliner窗口 图8-20 在Connection Editor窗口中链接节点 链接后,当摄影机的目标点移动到第一个人物时,第一个人清晰,其他人物模糊,如图8-21所示。将摄影机的目标点分别移动到第二个人物、第三个人物、第四个人物时,分别得到如图8-22、图8-23、图8-24所示的效果。 图8-21 摄影机的目标点在第一个人物时的效果图 8-22 摄影机的目标点在第二个人物时的效果 图8-23 摄影机的目标点在第三个人物时的效果图 8-24 摄影机的目标点在第四个人物时的效果 8.2.7 摄像机视图设置 选择 “View”|“Camera Settings”命令,设置摄像机视图,可以展开诸多选项对当前视图参数进行设置,如图8-25所示。 图8-25 摄像机视图设置命令 图8-26 Film Gate指示器 Perspective:勾选该项,视图显示具有透视效果。 Undoable Movement:勾选该项,使用Undo命令可以返回之前的视图状态。 No Gate:不在视图中显示渲染框。 Film Gate:在视图中显示镜头比率框,如图8-26所示。 Resolution Gate:在视图中显示分辨率尺寸框,如图8-27所示。 图8-27 Resolution Gate指示器 图8-28 Safe Action指示器 Field Chart:显示定位坐标格。 Safe Action:显示移动安全框,如图8-28所示。 Safe Title:显示标题安全框。 Film Origin:显示镜头注目原点。 Film Pivot:显示镜头轴心点。 Fill:填充方式,分辨率尺寸框在镜头比率框内适配大小。 Horizontal:镜头比率框同分辨率尺寸框水平等宽。 Vertical:镜头比率框同分辨率尺寸框垂直等高。 Overscan:镜头比率框在分辨率尺寸框内适配大小。 8.2.8 摄像机贴图 在建模中,用户经常需要用一个背景作参考图,以方便模型的定位。以下步骤是如何将图片导入到摄像机: 请单击摄像机属性编辑器中的“Image Plane” | “Create”命令。会弹出如图8-30所示的对话框。 图8-29 Environment属性 图8-30 Create对话框 用户可以分别画好俯视、正视、侧视图来匹配Maya中的Top、Front、Side这三个视图。如读者要创建角色模型,首先准备好如图8-31所示的图片。 打开Outliner窗口,如果要在正视图中导入图片,读者可以双击Outliner中的Front摄像机,或自定义一个摄像机,在弹出的属性编辑器中执行“Environment” | “Image Plane”命令,再在Image Plane Attributes参数组中的Image Name选项中导入相关图片,如图8-32所示。当读者在Outliner窗口中选择默认的摄像机时,所导入的图片无法编辑。而用自定义的摄像机时,大大地方便了视图和模型的匹配。 图8-31 标准的三视图 图8-32 将图片导入到Maya中形成的三视图 8.3 全局渲染 我们需要使用Maya的渲染功能才能观察到当前作品的效果。在渲染之前,还要对渲染的参数进行相应的设置。在Maya中,有关渲染参数的控制是在Render Global Settings (渲染全局设置)窗口中完成的。下面将介绍Render Global中的有关靜帧方面的一些常用参数。 8.3.1 Image File Output (图像文件输出) 图8-33 Image File Output的各项参数 File Name Prefix (文件名前缀):设置图像文件名的前缀。 Frame/Animation Ext (帧/动画扩展名) :设置序列图像序号和扩展名的保存方式。 Name(名称) :只保存前缀名称。 name.est:保存前缀、扩展名方式,“如Demo”,扩展名按后面的设置。 name.#.ext:保存前缀、序号和扩展名方式,如“Demo. I.iff。这种方式是“l”,“2”,“3”……“10”,“11”,“12”……“100”,“101”……记数方式;有些合成软件可能不支持,如Combustion,需要将前10位序号改为“1”,“2”,“3”方式。 name.ext: #和上种方式类似,它适用于IRIX系统(SGI)的记数方式。 name.#::没有扩展名的记数方式。 Start Frame (起始帧):设置动画渲染的起始帧数。 End Frame (结束帧):设置动画渲染的结束帧数。 By Frame (间隔帧):设置每隔多少帧进行一次渲染。如果设为2,渲染帧数将变为“1”,“3”,“5”,“7”。 Frame Padding (帧数填充):设置数字序号的位数。值为1时,序列记数方式为“1”,“2”,“3”……“100”,“101”; 值为3时序列记数为“001”, “002”,“003”……“010”,“011”,“012”……“100”,“101”,这种记数方式能被绝大多数视频合成软件认可。 Image Format (图像格式):选择保存图像的格式,下面列出了各种格式的说明。 Alias PIX (als) Alias:影片文件格式;mask蒙版和depth深度通道作为分离的文件。 AVI (avi):微软标准的影片文件格式。Maya只能保存为不压缩的格式,还可以读出其它压缩方式的文件。此文件格式通用于IRIX和NI系统。 GIF (gif):Graphics Interchange Format (图像交换格式)。Maya保存图像和depth深度通道文件为分离的文件,但无法保存手alpha通道图像,GIF图像只能支持到8bit(256色),常用于网络动画格式。 JPEG(jpg):Photographic Experts (联合图像专家组)文件格式。Maya保存图像的depth深度通道为分离的文件,但无法保存alpha通道图像。JPEG格式为标准的静态图像压缩格式,通用编码为CCIR 601标准,使用DCT并且提供5至100次之间的数据压缩,可定义baseline (基准), extended (扩充)和Lossless (无损)三个处理级别。Maya只支持包含RGB信息的JPEG格式,不支持包含CMYK信息的肉JPEG格式。JPEG多用于网络传输图像的保存。 Maya IFF (iff):Maya自身的图像文件格式,带有8bit的Alpha通道图像,可以在一个文件中同时保存图像. mask (蒙板)和depth (深度)通道。 Targa (tga):Targa图像文件格式。Maya在一个文件中同时保存图像和mask(蒙板)通道,将depth深度通道保存唯一个个分离的文件。这是通用的一种图像格式,大多数软件都支持,常用于视频动画的制作。 Tiff (tif):Tagged-Image图像文件格式,带有8bit颜色通道。Maya在一个文件中同时保存图像和mask (蒙板)通道,将depth深度通道保存为一个分离的文件。Maya使用Tiff6. 0压缩格式产生TIFF文件,如果想生成无压缩的TIFF文件,在启动Maya前设置环IMF_TIFF_COMPRESSION变量。 8.3.2 Resolution(分辨率) Resolution的参数用于控制渲染结果的图片大小以及分辨率,如图8-34所示。 图8-34 Resolution参数 Presets(预置):这里提供了多种分辨率模式,包括电视,电影等。如果自己设置分辨率,从中选择Custom(自定义)方式。 Maintain Width/Height Ratio (保持宽/高比):选择此项,将依据当前的宽/高比进行锁定,改变宽或高,另一个值都会自动改变。 Width/Height (宽/高) :分别设置图像的宽度和高度,单位为Pixel (像素)。 Lock Device Aspect Ratio (锁定设备纵横比):如果关闭,下面设置的纵横比值会根据上面的宽/高值自行计算出:如果开启,将使用一个自定义的固定值。 Device Aspect Ratio (设备纵横比):设置当前显示设备的纵横比,它与下面的Pixel Aspect Ratio (像素纵横比)值是相关联的。 Pixel Aspect Ratio (像素纵横比):设置显示设备单个像素的纵横比。大多数显示设备(如计算机显示器)是正方形像素,像素纵横比为1,但有些设备(如数字电视的像素纵横比为0.9)并不是正方形的。 8.3.3 Anti-aliasing Quality(抗锯齿品质) 该部分参数只有在当前渲染器使用的是Maya Software (软件) 渲染器时才会出现,如图8-35所示。 图8-35 Anti-aliasing Quality参数 图8-36 Number Of Samples参数 Presets(预置):这里提供了一些默认的抗锯齿品质级别,省去了逐一调节下面众多的参数,便于快捷地设置。 Custom (自定义):自定义各项参数值,控制抗锯齿品质。 Preview Quality (预视品质):常用于测试渲染的抵抗锯齿级别。 Intermediate Quality (中级品质):更优秀的测试渲染品质。 Production Quality (产品品质):产品品质的渲染级别,用于最终的渲染设置,但不包括3D运动模糊处理,也不适合高对比图像。 Contrast Sensitive Production (灵敏对比产品品质):用于最终的渲染设置,对有Raytrace光线跟踪设定的场景尤其适合,不会产生太多的颗粒感,更趋于平滑。 3D Motion Blur Production (三维运动模糊产品品质):用于对包含三维运动模糊设定场景的最终渲染。 Edge Anti-aliasing (边界抗锯齿):控制物体边界在渲染时抗锯齿的程度。根据不同的级别,下方可设置的参数也不同。 Low Quality (低级品质):最快的抗锯齿设置。对每一个被渲染的像素,通过在周围采样两个点检验,来控制物体的哪一部分可视,从而产生低品质的边界抗锯齿效果,常用于快速测试。 Medium Quality (中级品质):对每个像素采样周围的8个点进行检验,决定物体的哪一部分可视,效果比低级品质更好一些。 High Quality (高级品质):对每个像素,采样周围的32个点进行检验,决定物体的哪一部分可视。如果时间较短并且对图像要求不高时,可以用这种设置进行产品级渲染。 Highest Quality (顶级品质):最优秀的抗锯齿级别,必须和Max Shading(最大表面采样)联合使用。这种方式比High方式增加了一种扫描方式,因此能更精确地采样大量细小高光。 Number Of Samples (采样数):包括了各种项目的采样数值设定,通常采样值越高,获得的图像效果就越细腻,但耗费的渲染时间也越长,如图8-36所示。 Shading (表面):设置全局的表面采样数值。不同于Max Shading的是这里是针对全局的参数设定,在每一个表面自身的属性设置面板中, Render Stats (渲染统计)项目内部都有相同的设置,如下图所示。如果将它们打开,最终的渲染将会按其自身的设置为准,如果不打开,将会按渲染全局中的设置为准。 Max Shading(最大表面):Anti-aliasing Quality参数组中的Preset选项,选择Preview Quality时此选项不能用。本参数规定了所有表面的阴影计算的最大采样值。此选项与Max Shading Samples一起使用。Max Shading Samples属性位予物体属性编辑器(Attribute Editor) 中的Render Stats部分。 3D Blur Visib(三维模糊可视):当Motion Blur选项处于选中状态并计算物体外形时,指定一个像素的采样数的最大值。 Max 3D Blur Visib(最大三维模糊可视):只有使用Highest Quality边缘抗锯齿选项时才可用。 Particles(粒子):粒子系统阴影计算的采样数。此选项与Shading Samples属性一起作用,Shading Samples属性位于物体属性编辑器(Attribute Editor)中的Render Stats部分。Shading Samples设置Maya计算阴影过程中一个像素中每一片的采样数。 Multi - pixel Filtering(多像素滤镜):Multi - pixel Filtering对渲染出的图片进行模糊或柔化处理,以消除锯齿、变形或动画渲染中产生的速度跳动,如图8-37所示。 图8-37 Multi - pixel Filtering参数 图8-38 Contrast Threshold参数 Use Multi Pixel Filter(使用多像素滤镜):如果勾选,Maya根据Pixel Filter Type和Pixel Filter Width X,Y进行设置,用相邻像素使已渲染图像中的每个像素变模糊,以达到模糊或柔化整个已渲染图像的目的。 Pixel Filter Type(像素滤镜类型):当Multi-pixel Filter开关打开时,控制渲染出的图像的模糊或柔化程度。有五个预设的滤镜:Box Filter (非常光滑) 、Triangle Filter (光滑)、Gaussian Filter(轻微光滑)、Quadratic B-Spline Filter and Plug-in Filter Controls,系统默认选项为Triangle Filter,使用用户自定义的滤镜时,选择Plug-in Filter。 Contrast Threshold(对比度阀值):控制渲染出的图片的对比度,如图8-38所示。 Red,Green,Blue:当边缘抗锯齿质量(Edge Anti - aliasing)选项设为Highest Quality时,第二次计算渲染过程中的阴影采样数。可使用范围为0~l。默认值Red:0.4,Green:0.3,Blue:0.6。如果预设改为Contrast Sensitive Production,则默认参数为Red:0. 2,Green:0. 15,Blue:0.3。 Coverage(有效区域):只有在3D Motion Blur开关处于打开状态时才可用,用于计算3D运动模糊时Visibility Samples的数量。例如,减小此值有助于渲染器发现运动物体单个像素的变化(但这会增加渲染时间)。其使用范围为0~l,默认值为0. 25。 8.3.4 Raytracing Quality(光线追踪质量) 决定渲染期间是否对场景进行光线追踪,并控制光线追踪图像的质量。更改这些全局设置时,相关的才质属性值也跟着改变。其渲染结果值会是二者中较小的一个。 图8-39 Raytracing Quality参数 Raytracing:如果开启,Maya在渲染时会进行光影追踪。Raytracing会产生精确的反射、折射贴图和阴影效果(使用此项会大大增加渲染时间,应尽可能地少用)。 Reflections(反射):光被反射的最大次数。有效的取值范围为0~10,默认值为1。 Refraction(折射):光被折射的最大次数。有效的取值范围为0~10,默认值为1。 Shadows(阴影):光线能被反射和折射仍能对物体投射阴影的最大次数。此值为0时关闭阴影。例如: 如果Shadows为2,光线被反射和/或折射一次时才会对物体投射阴影。其可用范园为0~10。 Bias(偏移):如果场景中包含了3D运动模糊物体和光线追踪阴影,那么可能会注意到在运动物体上有黑色区域或不正确的阴影。要解决此问题,请设置Bias值为0.05~1。如果场景中不存在3D运动模糊物体或光线追踪阴影,保持该值为0,其可用范围为0~l,默认值为0。 8.4 硬件渲染 硬件渲染通常渲染粒子以用于合成,硬件渲染利用图形缓存及计算机显存来绘制、显示图像,以及抓图。抓图将作为渲染图片保存到一个文件中。用计算机硬件渲染,好处是速度非常快,不足是不能渲染高级的效果,如阴影、反射和辉光等后期处理的效果。 使用Hardware Render Buffer命令进行硬件渲染的操作:执行“Render”︱“Attributes”命令,在Attribute Editor中打开Hardware Render Globals面板, Hardware Render Globals中有四个重要的参数部分。 8.4.1 Image Output Files(图像文件输出) 该参数组中用于设置图片名称、动画范围、图片格式及分辨率。这些设置与Render Globals中的设置很相似。同样,Alpha Source属性决定怎样定义Alpha通道,这对于合成非常有用。该参数组中Write ZDepth属性默认为OFF,这个属性也是用于合成的,打开它,就会渲染出场景中的深度信息。可以通过合成将硬件渲染出来的物体穿过软件渲染出来的物体。 8.4.2 Image Output Files(图像文件输出) 图8-40 Image File Output的各项参数 Filename(文件名):用来输入硬件渲染图像的名称,默认是im。可以在Filename (文件名)中输入名称,如abc作为保存图像的前缀名称。 Extension(扩展后缀):定义输出图像后缀的类型,默认是name.O01,可以选择如name.1.ext作为图像输出的后缀类型。 Start Frame/End Frame(开始帧/结束帧):设置当前动画的起始帧和结束帧。默认开始帧是1,结束帧是10。可以设置如Start Frame(起始帧)为1,End Frame(结束帧)为50。 By Frame(帧间隔):设置渲染帧之问的间隔数,如果设置它为1,那么Maya会按照1,2,3……的顺序来进行渲染,如果设置为2,那么Maya会按照1,3,7……的顺序来选行渲染。 Image Format(文件格式):定义硬件渲染输出的文件格式,例如Tga, Iff, Bmp等。 Resolution(分辨率):定义硬件渲染图像的分辨率,可以按下Resolution (分辨率)右侧的Select(选择)钮,选择最后要渲染的尺寸标准。 Alpha Source(Alpha通道来源):通过在Alpha Sources中选择Hardware Alpha(硬件Alpha通道),直接使用显示卡来创建Alpha通道图像。 Write Zdepth(写Z深度):勾选此项,可以在图像中记录Z通道信息。使用支持Maya Z通道图像的视频合成软件,如Comoser(IRIX)和Maya Fusion(NT),可以将粒子图像与当前场景的最终渲染图像进行完美的合成,井保留Z轴上的远近信息,这样粒子就能被它前方的景物所遮挡。 图8-41 Render Modes的各项参数 Lighting Mode(照明方式):控制物体在硬件渲染中的照明方式,例如可以选择All Lights(全部灯光),使用自建的灯光照明。 Draw Style(绘画类型):控制物体如何在硬件渲染窗口中渲染,包括四种类型。默认是Smooth Shaded(平滑阴影)。 Texturing(纹理贴图):勾选Texturing,表明将渲染所有的纹理贴图。在Hardware Texturing(硬件纹理)项目面板中,选择Texture quality(纹理品质)Highest (最高)时,进行硬件渲染测试,可以看到桌面的纹理变得更清晰了。 Line Smoothing(线性平滑):如果将此项打开,Streaks或Multstreak类型的粒子在渲染时将增加边界的锐化和抗锯齿能力,使得边缘变的更加光滑,默认是关闭的。 Full Image Resolution(完整图像分辨率):当渲染图像的分辨率大于显示器的显示,这时可以将此项打开,Maya会把图像划分为若干块来进行渲染然后再输入图像中。(这么做的目的是因为硬件渲染是以抓屏的方式来存储图像,不支持显示器分辨率以外的图像。) Geometry Mask(几何体蒙版):勾选此项,只能渲染出硬件粒子效果。 Display Shadows(显示硬件阴影):控制是否在硬件渲染视图显示硬件阴影。 图8-42 Multi-Pass Render Options的各项参数 Multi Pass Rendering(多重叠加渲染):如果想得到更细腻的硬件渲染效果,可以在硬件渲染设置面板勾选Multi Pass Rendering,并且设置Render Passes(渲染叠加)值为5。此值越大,边缘抗锯齿的效果越好,所耗费的时间也越多。 Render Passes(渲染叠加):设置图像渲染叠加的次数。一般将此值设置为5左右,这样会使粒子物体看起来有些模糊并显得很柔和。增大此值会降低渲染速度,默认值是3。 Anti-Alias Polygons(抗锯齿多边形):勾选后,进行边缘的抗锯齿处理。如果进行硬件渲染测试,边缘会变得较为平滑。 Edge Smoothing(边缘光滑):控制渲染物体边界的锐化,平滑,抗锯齿和柔化的数值。当勾选Anti-Alias Polygons(抗锯齿多边形)并增大此值会产生非常柔化的边界。将此值设置为1,物体边界会平滑。如果将此值设置的很高,例如4那么物体的表面也会产生模糊的效果,默认值是1。 Motion Blur(运动模糊):控制物体的运动模糊效果,高的数值将增大运动模糊效果。如果设置为0,不产生任何运动模糊效果。 图8-43 Display Options的各项参数 Grid(栅格):控制是否在硬件渲染窗口显示栅格,默认是关闭。 Camera Icons(摄影机图标):控制是否在硬件渲染窗口显示摄影机图标,默认是关闭。 Light Icons(灯光图标):控制是否在硬件渲染窗口显示灯光图标,默认是关闭。 Emitter Icons(发射器图标):控制是否在硬件渲染窗口显示发射器图标,默认是关闭。 Field Icons(动力场图标):控制是否在硬件渲染窗口显示动力场图标,默认是关闭。 Collision Icons(碰撞图标):控制是否在硬件渲染窗口显示碰撞图标,默认是关闭。 Transform Icons(变换图标):控制是否在硬件渲染窗口显示变换图标,默认是关闭。 Background Color(背景颜色):设置在硬件渲染窗口显示的背景颜色,默认颜色是黑色。 8.5 本章小结 本章深入浅出地介绍了Maya渲染的理论知识与操作技巧,读者在学习的过程中首先应该扎实地掌握Maya渲染的基础命令,同时可以参考一些专业的摄影书籍,学习摄影方面的知识。Maya渲染是一个需要不断练习和积累的过程,生活是最好的老师,读者要经常留心生活中的方方面面,以此作为自己电脑三维创作的依据。 8.6 思考与练习 1. 理解渲染的基本原理。 2. 上机完成Maya摄影机的景深效果的制作。 3. 上机完成一个数字角色从建模到渲染的整个操作。 |
| 目前,环球光魔科技发展有限公司(Cg-Global Light & magic)(东方世鼎影视动画培训学校武汉影视动画培训基地)成为ACAA中国数字艺术教育联盟教学中心并授权考试中心。学员在我校参加系统培训后可以考取包括ACAA认证视频编辑师(ACAA Certified Video Editor)、ACAA认证三维动画师(ACAA Certified 3D Animation Designer)、ACAA认证商业插画师(ACAA Certified Professional Illustrator)、ACAA 认证室内设计师(ACAA Certified Interior Designer)、ACAA中国高级数字艺术设计师ACAA China Digital Arts Designer Professional(ADAD Pro)、ACAA认证平面设计师(ACAA Certified Graphics Designer )、ACAA认证电子出版师(ACAA Certified Electronic Publisher)、ACAA认证网络设计师(ACAA Certified Web Designer)、ACAA认证Flash动画师(ACAA Certified Flash Designer)等职业技能认证。 ACAA中国数字艺术教育联盟是奥华创新公司倡导并联合Adobe公司、中央美术学院、中国美术学院和Wacom公司发起的,由国际主流数字技术厂商和国家顶级艺术设计院校共同支持的一个专业数字艺术教育联合组织。旨在大力发展数字艺术和创意文化产业相关的职业教育项目,努力为社会培养数字技术与艺术设计相结合的创造型、复合型人才,不断促进和提高国家数字艺术职业教育和应用水平。 ACAA数字艺术职业教育计划秉承 :数字技术与艺术设计相结合;国际厂商与国内院校相结合;学院教育与职业实践相结合的教育理念。倡导具有创造性设计思维的教育主张与潜心务实的职业主张。跟踪世界先进的设计理念和数字技术,引入国际、国内优质教育资源,构建一个技能教育与素质教育相结合、学历教育与职业培训相结合、院校教育与终身教育相结合的开放式职业教育服务平台。为广大学子营造一个轻松学习、自由沟通和严谨治学的现代职业教育环境。为社会打造具有创造性思维的、专业实用的复合型设计人才。 关于ACAA职业技能认证详细说明请点击http://www.dfsdpx.com.cn/NewsView.asp?id=805 |
| 环球光魔科技发展有限公司 主营方向:游戏软件开发;动画制作、培训;广告策划、设计。 市场专员5名:擅于表达、踏实肯干,专兼职均可;有能力者可直接应聘市场部经理。 广告文案2名:只要你思维活跃、文笔犀利、擅长广告文案创作。 英语文案:(兼职也可)本科,能熟练使用英语写作。 美工(兼职也可):专科,有一定英语阅读能力,会用3DSMAX制作建筑模型、、角色模型,动画及贴图,喜欢游戏制作。 电子工程师:专科,熟悉单片机,会用C语言或者汇编书写硬件程序,动手能力强,会制作电子电路。 地址:武汉武昌鲁巷东谷银座2102室 电话:027-59838968 59700587 联系人:杨老师 黄老师 E-mail:cgglobal@163.com 黄玲 (2008-04-23 16:04:03) 李夏冰的电话是13407166255,他今天给我们提了2种广告方案1是还是像昨天说的做30分之1的,免费,可能效果一般,2是做16分之1的,600元一期,做一期送一期,可能效果要好些 |
| 环球光魔科技发展有限公司 (Cg-Global Light & magic) 主营方向:游戏软件开发;动画影视制作与培训;广告策划、设计。 市场营销战略与策划5名:懂得营销战略与策划、专职人员(兼职适当考虑);有工作经验者优先;有能力者可直接应聘市场部经理。 广告文案2名:只要你思维活跃、文笔犀利、擅长广告文案创作。 地址:武汉武昌鲁巷东谷银座2102室 电话:027-59838968 15926244861 联系人:杨老师 黄老师 E-mail:cgglobal@163.com |