用重慶影視制作和Maya的hairSystem做頭發建模
Maya軟件里在重慶影視制作中人物頭發的幾種做法,現在有以下四種,1和2是傳統的動畫做法,網上教程已經出了很多了,方法3是需要你根據MAYA中需要看插件的help文件,在本教程中,我們只討論最后一種做法,也就是使用maya軟件中的默認渲染器和pe進行渲染,實時制作出三維人物的頭發絲來,方法和步驟如下
1.面片+貼圖.
2.長發用pfx--先用curves 編制發型,再將stroke粘貼到引導曲線上生成頭發;短發用fur.
3.插件.
4.maya 6以后增加的hairSystem渲染器.
下面先總結一下使用maya hairSystem制作發毛的一般流程, 中也就是maya help里面建議的一般流程:
1.制作一個具有良好uv分布的面片以生成毛發。
2.在該面片上生成hairSystem。
3.編輯hairSystem的start curves,rest curves,使hair定型。
4.制作constraint,進行動力學解算。
5.動畫。
理論上這個流程是可行的,但實際制作是卻非常麻煩,主要原因是第3步,用正常的方法編輯start curves生成需要的發型是比較困難的。
下面我介紹一種用nurbs面片生成頭發的引導曲線制作發型的方法,然后再用一個具體例子說明hairSystem在制作,運動,渲染時一些要注意的地方。
1.用任意方法制作一塊nurbs面片,注意uv的起始位置在頭發的根部(畫黃線的地方)
2.選取多個isoparm,然后duplicat surface curves
3.不要刪除歷史,選擇這些curves,然后Hair-Make select curves dynmic
4.選擇生成的follicle,在屬性里把point lock改成Base(默認是鎖定2端) 。
5.現在你移動時間軸,可以看到這些curve可以運動了。
6.選中生成hairSystem,然后Hair-Assign paint effect brush to hair.這樣做的結果是我們得到一個pfxhair作為renderHairs,但同時會生成一個連接到重慶vr制作的pfxhair上的brush,這個我們不需要的brush會影響pfx的形態(具體可參看maya help 里的assign paint effect brush to hair);在hypergraph或outliner中把它刪掉。
7.調節hairSystem的參數,可以看到現在已經生成正常的毛發了。從nurbs面片上復制出的曲線成為該hairSystem的start curves(你可以用set rest postion to start postion生成rest curves),調節nurbs surface,可以看到毛發形態也發生改變,這對調節發型來說非常方便。
好,下面我用一個具體例子說明使用hairSystem的流程。
1.打開你的角色模型,用nurbs面片制作你想要得發型(這應該不成問題吧?)我的這發型是臨時做的,真要做的時候你們千萬表這么隨意阿~ >_<
需要注意的地方:
(1):沿頭發生長發方向的面片段數不能太少,而且要分布均勻(注意畫黃線的地方),這是會影響生成頭發的動力**算的!
(2):注意畫紅線的地方,頭發分開處要留有間距。因為發束是有厚度的,如果面片太接近2邊發束會疊在一起!
(3):非常重要的一點!要作動畫的角色,千萬不能用這么少的面片,多的面片使發型更具可變性。另外,要做多層毛發,也就是在面片之下還有面片,這才能保證角色頭發劇烈運動的時候仍然能保持層次感。下面舉例時我會具體說明這個問題。
2.好,按照剛才的做法。duplicate curves,我建議這里復制的曲線是宜多不宜少(多的可以刪,少了你還要做曲線生成新的hairSystem再合并)
3.生成hairSystem,選中一部分follicle把它的simulation method變成passive以節約重慶3d制作的運算時間。
4.調節hairSystem的參數,渲染看看效果。hairSystem參數很多,你可以慢慢調直到滿意為止。這是我臨時調的,用比較淺的發色大家可以清楚地看到頭發生長脈絡,你們仔細調的話效果可以比這個好得多。
下面我們看hairSystem進行動力學解算時的一些問題。
1.由于我們沒有按一般做法提供頭發生長的面片,所以我們把hairSystemFollicles綁在頭骨上。需要注意的是:很多人可能會把一開始那些nurbs面片也綁在頭骨上,而因為留有歷史紀錄的start curve在hairSystemFollicles里,這可能會造成double transform.如果你真要這么做的話可以unparent那些start curve
2.按照一般做法,我們用圓球constraint來模擬頭發跟身體的碰撞。但這是不夠的。在人物進行運動的時候我們希望在一定限度上保持人物的發型。所以我在給hairSystem使用transform constraint,把 改成u parameter,再調節u parameter,這樣就從根部鎖定了發型,通過constraint的stiffness可以調節鎖定的強度。
3.根據發型特征和人物運動特性繼續添加constraint。我這里用了8個。你可能需要更多。
4.讓我們看看現在頭發的運動結果: (如果只能看到靜止的gif請把它存到硬盤上再觀看就正常了)
需要注意的地方:
(1):大家可以看到這個頭發彈性很大,這是讓他運動比較明顯,實際上這么大彈性的頭發是很危險的。你需要調節hairSystem的damp,stiff等選項,降低頭發的彈性。
(2):可以用燈光,鏡頭焦距,運動模糊等掩蓋傳幫的地方。
5.下面我們看看運動時的重慶多媒體公司渲染效果:
(1):一定要注意這根黃線出現的地方,由于在頭發中只有一層,運動起來后,這些地方就是懸空了。這就是為什么我們之前在前面很多次的強調了要做出多層動畫的原因:
(2):在紅框處,這個頭發密度是不夠的,雖然我們后期可以調節multi streaks等來進行掩蓋,但是最好的方法還是多做上幾層頭發,然后再多做幾條引導曲線,這樣看起就十分逼真。
上一篇:美標攜手大師打造新銳設計師舞臺