欢迎访问设·集合!

设·集合

您现在的位置是:首页 > 游戏制作 > Maya

Maya制作头发全教程

设·集合小编 发布时间:2023-04-18 09:22:15 675次最后更新:2024-03-08 12:13:10

给3D人物制作头发至今是一项难点,我们最常用的是给模型加一个头发纹理的贴图,但这种法方的缺点就是难以控制纹理贴图和摆放面片物体。Maya给我们提供了很好的解决方法,这就是pAInt effects:不用纹理贴图,设置简单,渲染快速,占用更少的内存。

想了解更多的“Maya”相关内容吗?点击这里免费试学Maya课程>>

工具/软件

硬件型号:联想ThinkPad P14s

系统版本:Windows7

所需软件:Maya

步骤/方法

第1步

准备

首先要想好一个发型并准备一个多边形的角色头部,然后选择头部,执行 Modify->Make Live , Create->CV curve tool 。如图从头的中后方向前绘制一条曲线,这条曲线决定头发从哪里开始分缝。执行 EditCurves->Rebuild curve , Number of spans =9 , degree =3 ,显示曲线的 CV 点,将曲线命名为 hair_split_curve01 。

复制这条曲线,将第二条曲线命名为 hair_split_curve02 ,并如左下图所示与第一条曲线分开一点。如右下图所示在这两条曲线前端之间横向绘制一条短曲线,命名为 front_hair_split_curve ,不用太精确, spans 为 2 。将这 3 条曲线调整降低到头皮的下方。

2. 头发控制曲线

我们将绘制一系列的曲线粗略的表示头发的生长方向。选择头部, Make Live , CV 曲线工具,从捕捉 hair_split_curve01 前端的第一个点开始,向左绘制大约 4-6 个 CVs 。 CV 点要保证足够的数量来控制一会儿生成的头发的形状(你可以在开始的时候多建几个点,然后再删除掉多余的)。继续捕捉 hair_split_curve01 上其它的点来绘制曲线。

最终根据你的 spans 数(本篇教程为 9 )你会得到 9-11 条 hair_control_curve (头发控制曲线),选择 hair_control_curve ,调整它们的 CV 点以避免不要和头部相交,并作出发型的形状出来(这需要一定的耐心,大约要调 30 分钟左右)。效果如下图所示。将曲线群组并复制到另一边,再做一些形状上的调整。现在根据 front_hair_split_curve 绘制头发帘的控制曲线,绘制 3 条就行(注意这三条曲线的形状与左右的曲线形状要保持连续平滑的过渡)。

3.Paint Effects

下面我们将添加一些头发,执行 Paint Effects->Get Brush 进入 Visor ,打开 brushes/hair/ 文件夹,选择 hairRed1.mel (或其它你喜欢的样式)。选择 hair_control_curve01 , PaintEffects->Curve Utilities->Attach Brush to Curves ,这样会为 hair_split_curve01 创建一个粗糙的毛发效果。在 outliner 中将新建的这个 stroke 命名为 hair_side_stroke01 ,新的笔刷命名为 hair_side_brush 。

在 outliner 中双击 stroke 打开属性面板,在笔刷页中,首先调整 Global Scale 值,这个值的大小取决于你的头部模型的大小,我的角色总共 8cm 高,在这里将值设为 0.150 。如果你的角色高度为 160cm 的话,值应为 3 。打开 Brush Profiles 找到 Brush Width ,这个值控制从曲线长出的头发的宽度,将值设为 0.8 (不要将它设的太低,这样会使你的头发看上去非常薄)。其他的属性保持为默认。

现在在 outliner 中再次选择 hair_side_stroke01 ,并通过 shift 同时选中所有位于头部一侧的 hair_control_curve (左侧或右侧),执行 Paint Effects->Curve Utilities->Set Stroke Control Curves ,打开 hair_side_brush 属性面板, tubes/Behavior/forces 中,将 CurveFollow 设为 1 ,这样可使头发沿 hair_control_curve 生长。进入 hair_side_stroke01 ,将显示质量设为 10 左右(加速显示更新速度)。

4. 调整 Paint Effects

我们还是从头发的一侧开始。在调整时因为视图观察并不准确,所以你将需要大量的渲染测试,我建议你将渲染分辨率调到 320x240 ,并隐藏除了 hair strokes 之外的所有物体来加快渲染速度。

打开 hair_side_brush 设置面板,将 Tubes Per Step 设为 25 左右(控制头发的数量,不用很精确)。 Length Min=7 , Length Max=10 。 Tube Width1=0.3 , Tube Width2=0.1 (控制头发的粗细,如果你将头发设细,还要适当的增加 Tubes Per Step 的值,来保持头发的丰满)。 Segment=64 (控制头发的圆滑度,这个值会影响渲染时间)。

5. 材质

选择 hair_side_brush ,打开 Shading/tube shading ,将 color1 设为你头发根部的颜色, color2 为发梢的颜色。我将其保持为默认值。将 transparency2 设为灰色。 Tip Fade =0.2 (值越高头发越柔和)。

在 texture 中,选中 map color , Texcolorscale=0 (使用纹理贴图的颜色)。 Texture type = File , Map method = tube3D ,将 Tex Color1 和 TexColor2 设为白色。然后选择一张图作为纹理(如下图),图案月不规则越好(制作方法为 hairRed1.mel 笔刷在 2D 画布视图中绘制直线,导入到 Photoshop 中缩放涂抹)。

第2步

 


第3步

 


第4步

 


第5步

 


第6步

 


第7步

 


第8步

 


第9步

 


第10步

 


第11步

 


第12步

 


第13步

 


第14步

 


第15步

 


第16步

6. 完成

现在我们将 stroke 效果添加到另一侧和前端的曲线。

选择 hair_split_curve02, PaintEffects->Curve Utilities->Attach Brush to Strokes ,当新的 stroke 选中后, shift 选择所有这一侧的 control_curve , PaintEffects->Curve Utilities-> set Stroke Control Curves 。然后选择新的 stroke 并 shift 选择 hair_side_stroke01 , PaintEffects->share One Brush (使两侧的头发共享同一个笔刷)。

 选择 front_hair_split_curve , PaintEffects->Curve Utilities->Attach Brush to Strokes ,将新建的 stroke 命名为 hair_front_stoke 。选择 hair_side_stroke01, PaintEffects->Get Setting from selected stroke ,然后选择 hair_front_stroke ,执行 PaintEffects-> apply setting to selected strokes 。现在, hair_front_stroke 的笔刷和 hair_side_brush 相同。下图为它们在 hypergraph 视图中的关系。另外你还可以为头发帘赋予一个不同的头发纹理。

第17步


第18步

7. 优化头发

现在头发的效果还不甚理想,我们将优化头发的两个笔刷使其不仅能够加快渲染速度,还能使头发更有立体感而不用通过提高 tubes per step 的值来增加头发的厚度。

选择 hair_front_brush ,打开属性面板,将 tubesPerStep=10 调低一些,提高宽度值,降低 segments 到 24 。打开 Behavior|forces 面板, curveAttract = -0.041 (使头发与控制曲线的位置有一些偏离,而不是很多头发紧紧粘在一根控制曲线上)。选择 hair_side_brush ,将 curveAttract 设为 -0.050 。现在你的头发看起来更自然了。另外在 stroke 调整 seed 值,在 brush/tubes/creation 调整 tube Rand 值,为头发增添更多的随机变化

第19步


第20步


第21步

因为我们会理发,所以头发的分布并不均匀(比如前面薄后面厚)。所以我们需要一个 pressure curve 告诉 Paintfx 我们需要在哪里增加头发。选择 hair_side_stroke01 , PaintEffects->CurveUtilities->makePressureCurves/ 选项盒, control points=10 , offset scale=0.05 。如果 Pressure curve 离的太远或太近,你需要设置一个不同的 offset Scale 。要删除它,打开 stroke 的 pressure Mapping 面板,右键点击 pressureMin3 ,删除表达式,然后删除 pressure curve 本身。

第22步


广告位

热心评论

评论列表