maya特效教程:Shave毛发插件

第6章Shave毛发插件

本章带领读者学习Maya的一款插件:Shave。Shave主要应用于动物毛发与人物头发的制作,本书将从初步的基础知识与属性介绍开始,直至实例制作,使大家运用所学的知识应用到实际生产中去。

本章主要内容:

●Shave毛发插件概述

●Shave菜单命令

●毛发属性

●Shave在Maya中的贴图属性

●修改工具

●Shave插件的命令以及应用

●Shave的属性和应用

●Shave的笔刷属性及其应用

6.1.Shave毛发插件概述

Shave是一个非常简单实用的毛发制作插件,比起Maya自带的Hair来,Shave更便于造型,并且在质感和控制上更为优秀。缺点则是渲染速度比较慢,双核CPU+1G内存的电脑在渲染20万左右的发量时就比较困难了。但是一般简单的毛发10万左右的发量就能有不错的效果,当然这没有将动力解算计算在内。毛发修饰、动力学及渲染系统能够为角色创建真实的毛发效果,此外还可以用于创建叶片、草丛等高密集程度的系统。

制作者需要另外安装Shave插件才能够在Maya中使用它,安装后执行Window(窗口)>Settings/Preferences(设置/参数选择)>Plug-in Manager(插件管理器)命令进入插件管理器,开启shaveNode.mll(毛发节点)后面的两个选项Loaded和Auto load,当状态栏切换到Dynamics标签时,在Maya菜单栏上便会显示Shave和shave Select菜单,如图6-1所示。

图6-1进入插件管理器开启毛发节点相关选项

6.2.Shave菜单命令

本节首先认识一下Shave菜单下的各个命令,如图6-2所示,随后会分别介绍它们的功能。

图6-2Shave菜单

1.Create New Hair(创建新毛发)

Shave >Create New Hair命令必须在先选中物体的情况下才能创建出毛发。Shave可以在三种物体上产生毛发,它们分别是Polygons物体、NURBS表面和NURBS曲线。

2.Create Hair copy(复制现有毛发)

如图6-3所示,执行Shave >Create Hair Copy命令后,右侧的子级命令显示已有毛发的名称。选择想要生长毛发的物体,执行该命令后,物体上会复制出一套新的毛发,新的毛

发会继承原有毛发的所有属性。

图6-3shaveHairShape1命令位置

3.Brush Tool(笔刷)

选择毛发,用笔刷修改毛发的控制曲线,以达成更加理想的效果。详细介绍请看本章第四节中笔刷的应用。

4.Cut Tool(剪切工具)

该工具命令是笔刷的一种,可以将毛发剪掉。一般情况下,会用一张黑白贴图控制Shave 的General Properties(常规属性)里的Cut Map(修剪贴图)属性,这样可以更细致地控制毛发的生长。

5.Edit Current(编辑当前菜单)

图6-1中Shave >Edit Current命令下有很多子级命令,这里就介绍一下这些命令。

(1)Comb Using Curves(用曲线控制毛发)

选择毛发,然后加选已调整好的曲线,执行此命令,毛发便会按照曲线的趋势生长。

(2)Apply Preset(替换毛发的种类)

选中毛发,执行此命令,会弹出如图6-4所示的毛发预设窗口。在其中选择其他样式,当前的毛发种类将被替换掉。

图6-4毛发预调窗口

(3)Instancing(替代)

如图6-5所示,Shave >Edit Current >Instancing命令有两个子级命令,分别介绍如下。

图6-5Edit Current的各子级命令

●Set Instance Obj(使用替代物体):选择毛发,再加选其他多边形物体,然后

执行此命令,毛发会被物体替代。

●Clear Instance Obj(清除替代):清除替代的物体。

(4)Update Growth Mesh(更新生长面)

将原始物体上的毛发移到新的修改好形状的表面上,此项与Shave >Reselect Surfaces >Hair Growth Polys命令结合使用很方便。

(5)Update Collision Mesh(更新碰撞面)

为当前的shave Node节点添加或改变碰撞面。

(6)Clear Collision Mesh(清除碰撞面)

移除当前的碰撞节点。

(7)Convert(shave与Curves/Polygons的转换)

●Guides to Curves:将控制曲线转换为曲线

●Hairs to Curves :将毛发转换为曲线

●Hairs to Polygons:将毛发转换为Polygons

(8)Delete(删除)

删除当前的shaveNode节点以及清除首次建立的ShaveNode的连接。

6.Shave Globals(Shave的全局控制)

打开全局控制属性窗口。

7.Dynamics(动力学)

动力学子菜单包含了对当前Shave引擎的动力学控制,使动力学可用或不可用,可以是全局的或局部的,当在Shave界面中为任何一个毛发激活动力学控制,在Maya中必须重新计算动力学仿真。

图6-6动力学菜单

如图6-6所示,Dynamics下的命令介绍如下:

●Live Mode(活动模式):执行该命令,Maya迫使场景在CPU空闲时更新,结果就

像毛发在活动。

●Run Dynamics Current Node:解算当前的动力学。

●Clear Dynamics Current Node:清除当前的动力学。

●Run Dynamics All Nodes:运行所有节点的动力学。

●Clear Dynamics All Nodes(关闭动力学仿真):关闭并清除缓存的仿真文件。

8.Reselect Surfaces(重选表面)

Reselect Surfaces命令有两个子级命令,如图6-7所示。

图6-7Reselect Surfaces命令下的子命令

●Hair Growth Polys(选择毛发生长物体):选择当前生长物体,这对检索选择是有

用的,因为此项激活后,可以从中添加或移除对象,然后执行命令Edit Current >

Update Growth Mesh去调整毛发的生长。

●Collision Polys(选择碰撞物体):此命令选择碰撞设置中的成员,它的作用与Select

>Hair Growth Polys命令相似。

9.Update Textures(更新纹理)

此命令使Shave重建纹理查找列表。

10.About...(查看Shave 版本号)

6.3.毛发属性

创建毛发后,选择毛发,按键盘上的Ctrl+a进入它的属性编辑器,本节将分不同卷展栏介绍其中的各属性选项。

6.3.1.General Properties(常规属性)

General Properties卷展栏的选项界面如图6-8所示,其中的选项介绍如下。

图6-8毛发属性编辑器中的常规属性卷展栏

(1)Hair Count(毛发数量)

该数值与实际上的数值不符,但可以将其理解为数值高可以在表面上产生更多的毛发,减少此数值会令表面毛发数量减少,如图6-9所示。此值也同时被density map(密度贴图)和Cut Maps(修剪贴图)控制。默认情况下Shave会平均分配表面毛发的密度,大的几何体比小的几何体接受更多的毛发。

a)Hair Count =500时毛发的状态b)Hair Count =2000时毛发的状态

图6-9Hair Count不同时毛发的不同状态

(2)Hair Segments (毛发分段数)

控制毛发的分段数,段数越多毛发越平滑,中等长度的毛发可以用20左右的数值,短发可以更少一些,长发可增加此值,此值影响渲染速度,数值越高,渲染速度越慢。

(3)Hair Passes(嵌画值)

Shave的缓存渲染以一种全新的方式解释毛发的透明,而Shave在以真实的方式解释毛发的透明时要用更多的时间去渲染(例如不透明的毛发),它们以不同的方式随机产生。如图6-10所示,嵌画值高会加大毛发的透明度,但也需注意每增加此数值,实际渲染的毛发数亦会增加,直观上讲此值越高越有沙粒感。

a)Passes = 1时毛发的状态b)Passes = 5时毛发的状态

图6-10嵌画值不同时毛发的不同状态

(4)Cut Map(修剪贴图)

此属性仅可贴图,此项用贴图控制毛发的长短,50%灰度的毛发在渲染时就有50%的长度,且无形态上的改变;当贴图为黑色时,毛发长度为零。

(5)Density Map(密度贴图)

此属性仅可贴图,此项用贴图控制毛发的密度。

(6)Scale(毛发长度)

此属性控制毛发的长度,可以用贴图控制。

(7)Rand Scale(随机缩放)

控制毛发长短的随机性。此选项数值越小,则无长短区别,反之则长短差别越大,如图6-11所示。

a)Rand Scale = 0.0时毛发的状态b)Rand Scale = 1.0时毛发的状态

图6-11随机缩放值不同时毛发的不同状态

(8)Root Thickness(根部厚度)

控制毛发根部的厚度。此选项数值越小,则发根越细,反之则越粗,如图6-12所示。

a)Root Thickness = 0.1时毛发的状态b)Root Thickness = 1时毛发的状态

图6-12根部厚度不同时毛发的不同状态

(9)Tip Thickness(尖端厚度)

控制毛发尖端的厚度。此选项数值越小,则发尖越细,反之则越粗,如6-13所示。

a)Tip Thickness = 0时毛发的状态b)Tip Thickness = 1时毛发的状态

图6-13尖端厚度值不同时毛发的不同状态

(10)Displacement(置换贴图)

如果在模型上加了置换贴图,模型看上去会有凸凹效果,但毛发依然沿模型表面生成,如果想让毛发沿显示的凸凹生成,那么需要将该贴图也指定给毛发的General Properties(常规属性)卷展栏下的Displacement属性上。

(11)Active(使Shave有效)

(12)Interpolate Guides(插入指导)

(13)Use Instance Obj(使用实例物体)

6.3.2.Material Properties(材质属性)

Material Properties卷展栏如图6-14所示,其中的选项介绍如下。

(1)Self Shadow(自身阴影)

毛发与毛发之间产生的阴影。

(2)Specular(镜面高光)

控制毛发渲染的是高光元素,此值越高,高光越明显,如图6-15所示。

图6-14Material Properties卷展栏

a)Specular = 0.1时毛发的状态b)Specular = 1.0时毛发的状态

图6-15镜面高光不同时毛发的不同状态

(3)Specular Tint(高光颜色)

此参数控制高光的色相,一般情况下用白色即可。

(4)Gloss(光泽度)

控制毛发的光泽属性。此值范围从0~0.1,数值越高,高光范围就越聚集,如图6-16所示。

a)Gloss = 0.01时毛发的状态b)Gloss = 0.09时毛发的状态

图6-16光泽度不同时毛发的不同状态

(5)Amb/diff(环境亮度或漫反射亮度)

控制毛发环境亮度或漫反射亮度的值。该选项设置为0时,将渲染出较“平”的光效;设置为1时,毛发的亮度完全由场景灯光控制。

(6)Tip Color(尖端颜色)

控制毛发尖端的颜色,此选项可对颜色进行选择。

(7)Root Color(根部颜色)

控制毛发的根部颜色。此选项可对颜色进行选择。

(8)Mutant Hair Color(突变颜色)

控制毛发的突变颜色,突变颜色随机选择毛发施加突变颜色。

(9)Percent Mutant Hairs(突变比率)

控制毛发颜色的突变比率。

6.3.3.Frizz Properties(卷曲属性)

Frizz Properties卷展栏如图6-17所示,其中的选项介绍如下。

图6-17Frizz Properties卷展栏

(1)Root Frizz(根部卷曲)

控制毛发根部的位移卷曲。此项值越大,毛发根部越卷曲,反之则越直,如图6-18所示。

a)Root Frizz = 0时毛发的状态b)Root Frizz = 150时毛发的状态

图6-18Root Frizz值不同时毛发的不同状态

(2)Tip Frizz(顶端卷曲)

控制毛发顶端的位移卷曲。此项数值越大,毛发顶端越卷曲,反之则越直,如图6-19所示。

a)Tip Frizz = 0时毛发的状态b)Tip Frizz = 100时毛发的状态

图6-19Tip Frizz值不同时毛发的不同状态

(3)Frizz X/Y/Z Frequency(卷曲频率)

此参数控制相应轴向上的卷曲频率,增加此值即增加毛发的位移频率。

(4)Frizz Anim(卷曲动画)

卷曲动画参数在静态与设定的动画参数之间随机调整数值。当该选项设置为0时,Frizz 不被动画;当设置为1时,只有设定的动画参数影响毛发。但如果Anim Speed设置为0,无论怎样设置Frizz Anim均无动画效果。

(5)Anim Speed(动画速度)

设置动画的播放速度。

6.3.4.Kink Properties(扭结属性)

Kink Properties卷展栏如图6-20所示,其中的选项介绍如下。

图6-20Kink Properties选项界面

(1)Root Kink(根部扭结)

控制应用到毛发根部的扭结位移。此选项数值越大,毛发越扭结,反之则越顺滑,如图6-21所示。

a)Root Kink = 0.0时毛发的状态b)Root Kink = 15.0时毛发的状态

图6-21Root Kink值不同时毛发的状态

(2)Tip Kink(尖端扭结)

控制应用到毛发尖端的扭结位移。此选项数值越大,毛发尖端越扭结,反之则越顺滑,如图6-22所示。

a)Tip Kink = 0.0时毛发的状态b)Tip Kink = 15.0时毛发的状态

图6-22Tip Kink值不同时毛发的不同状态

(3)Kink X/Y/Z Frequency(扭结频率)

扭结频率提供了在三个轴向上对扭结频率的控制。

6.3.5.Multi Strand Properties(多股属性)

Multi Strand Properties卷展栏如图6-23所示,其中的选项介绍如下。

图6-23Multi Strand Properties卷展栏

(1)Multi Strand Count(多股数量)

多股数量控制毛发成股的数量。此选项数值越大,股数越多,反之则越少,如图6-24所示。

a)Multi Strand Count = 0时毛发的状态b)Multi Strand Count = 10时毛发的状态

图6-24Multi Strand Properties值不同时毛发的不同状态

(2)Root Splay(根部张开)

根部张开控制结股的毛发根部之间的距离。此选项数值越大,毛发的根部越张开,反之则越紧靠,如图6-25所示。

a)Root Splay = 0.25时毛发的状态b)Root Splay = 0.5时毛发的状态

图6-25Root Splay值不同时毛发的不同状态

(3)Tip Splay(尖端张开)

尖端张开控制结股的毛发尖端之间的距离。此选项数值越大,毛发的尖端越张开,反之则越紧靠,如图6-26所示。

a)Tip Splay = 0.1时毛发的状态b)Tip Splay = 1时毛发的状态

图6-26Tip Splay值不同时毛发的状态

6.3.6.Dynamics Properties(动力学属性)

Dynamics Properties卷展栏如图6-27所示,其中的选项介绍如下。

图6-27Dynamics Properties卷展栏

(1)Enable Collision(允许碰撞)

允许当前毛发节点碰撞,不过必须为毛发节点设置碰撞物体。

(2)Stiffness(刚性)

此选项刚性控制动力学对物体影响的强度。如果设置Stiffness为1,那么Dynamics将不会对毛发应用动力学。

(3)Root Hold (根保留)

毛发被动画控制的范围会随着此数值的增长而自根部逐渐减小。

(4)Dampen(阻尼)

对毛发的动画形成一定的阻力。

6.4.Shave在Maya中的贴图属性

Shave的纹理功能支持Maya生成的纹理节点,这意味着可以用Maya的节点网络作为贴图源,贴图坐标(UV)从生长表面继承,表面上的点被作为应用贴图的参考点。Shave 用贴图控制一个属性值的衰减。

【例6-1】制作有眼睛图案的草坪

1)首先创建一个平面,制定给该平面一个黑色的贴图,适当调节使其不平整。

2)再将Maya的状态栏切换至Rendering,点击Texturing >3D Paint Tool命令后的

设置块,在图6-28 a中的3D笔刷工具设置选项盒中设置笔刷颜色为白色,使用3D Paint工具在该平面上绘制至图6-28 b的样子。

a)设置笔刷颜色

b)用3D paint Tool绘制纹理

图6-28设置3D paint Tool并在平面上绘制纹理

3)通过Window >Rendering Editors >Hypershade命令打开超级图表,在这里找到

用3D笔刷绘制后产生的新纹理,本例中它的名称为file1,如图6-29所示。

图6-29超级图表中新的纹理

4)在平面上创建毛发,打开毛发的属性编辑器,为了连结图片到它的Tip Color属性,

在颜色通道中键入图片文件名,也可以用鼠标中键将图片纹理拖放到Tip Color颜

色通道上,如图6-30所示。

图6-30设置Tip Color

之后再次渲染场景,如图6-31所示。

图6-31渲染后的场景

观察到图6-31中仍有一些浅色在毛发根部,为了得到更好的效果,需要在Root Color 上添加纹理颜色,并且添加5%的突变颜色变化,还要注意在绘图的白色区域内毛发是绿色的。按图6-32进行设置,在毛发根部施加纹理,之后的渲染效果如图6-33所示。

图6-32设置毛发的属性

图6-33再次渲染后的场景

注意图6-33中黑色区域依然还有一些斑点,可以将图6-32中的Hue Variation和Value Variation属性值调整为零,以实现去除杂色的目的。另外可以反转草坪的颜色,在属性编辑器中开启Invert(反转贴图颜色)选项反转贴图颜色即可,如图6-34所示。

图6-34开启Invert反转贴图颜色选项

之后这种改变会反映到Shave的渲染中,如图6-35所示。

图6-35反转颜色后的效果

1.4.1.交互的贴图绘画

在一些时候,交互地观察纹理对毛发产生的结果,对于工作是很有帮助的。但是如果不渲染场景,因为一些原因,Shave不会为当前的每一笔笔刷更新场景,但是可以用其它方法实现与场景的交互,参考例6-2。

【例6-2】绘制渐变的毛发

1)删除例6-1中的草坪上的贴图节点,现在的草坪如图6-36所示。

图6-36建立平面后在上面创建毛发

2)如图6-37所示,为毛发指定一个color纹理,这只是暂时指定贴图到color,这样就可

以看到纹理的改变如何影响到毛发的改变。不过还需要设置毛发为hairs或geometry 显示模式,使用hairs模式会比geometry模式快一些。

图6-37设置毛发的显示模式

3)还需要为Shave节点的Cut Map通道连结贴图。参考例6-1,使用Maya的3D Paint工

具绘制纹理,将其指定给Cut Map属性,这是一种单通道贴图,这样产生的效果如图6-38所示。

4)虽然已经将贴图指定给Cut属性,但是毛发依然显示生长,前面讲过纹理不会刷新,

为了观看笔画的结果,可以在不退出3D笔刷工具的前提下,使用图6-39中的Shave >Update Textures命令,这样即可更新每一个笔刷操作了。

图6-38涂黑后毛发依然显示生长图6-39Update Textures位置

执行上述命令后,场景更新了,如图6-40所示。

图6-40更新后的场景

5)为使毛发产生自然的过渡,可以在所绘贴图的黑白分界处添加一个过渡。并且,为

了更好地观察可以将显示级别Display Hair As调高一些,设置为geometry模式,如图6-41所示。

图6-41调高显示级别为geometry

图6-42是最后的场景图。

相关文档
最新文档