教程介紹利用Maya PaintEffects 制作頭發,教程難度不大,希望對朋友們有所幫助!
作者: Yinako Minako
前言:在 3D 中制作頭發效果至今仍是個難點,最常用的方法就是使用面片加上頭發的紋理貼圖。但這種方法難以控制紋理貼圖和擺放面片物體。 Maya 給我們提供了很好的解決方法,這就是 Paint Effects :不用紋理貼圖,設置簡單,渲染快速,占用更少的內存。
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 分鐘左右)。效果如下圖所示。將曲線群組并復制到另一邊,再做一些形狀上的調整?,F在根據 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 中縮放涂抹)。
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 視圖中的關系。另外你還可以為頭發簾賦予一個不同的頭發紋理。
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 值,為頭發增添更多的隨機變化。
因為我們會理發,所以頭發的分布并不均勻(比如前面薄后面厚)。所以我們需要一個 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 本身。
如果你得到了一條位于 hair_side_stroke01 附近的合適的 pressure curve ,那么打開 pressreMapping 面板, pressureMapping1=tubes Per Step , pressure min1=0.1 , pressureMax1=1 。關閉其它的 pressureMapping ?,F在你需要調整 pressureCurve 的 CVs ,提高中間的點增加 hair_side_stroke01 側頭發的厚度,降級兩端的點減少頭發前后的厚度(如果變化不明顯則需調整 pressureMin1 )。
調整滿意后,對 hair_side_stroke02 作同樣的處理。渲染效果如下圖所示。
以上就是Maya PaintEffects 制作逼真的頭發教程,希望能對大家有所幫助!
新聞熱點
疑難解答