本教程是講述如何用計算機三維動畫軟件maya等軟件綜合應用,表現古代仕女的教程。本教程從構思到貼圖,再從質感到毛發等,講述的是製作流程和心得,很值得動畫製作愛好者參考學習。
本教程中從構思到貼圖,再從質感到毛發等,講述的是製作流程及心得,頭發的製作是本教程中的難點,如果網友想獲得漂亮的效果,關鍵在於後麵的合成,希望本教程能給您帶來一點啟示。
完成圖
一、創作思路:
前段時間,看到唐朝的手繪,突然想做個有點唐朝風格的角色,然後就找了相關的一點圖片參考,衣服,發式等,做這個作品的時候,發現現實和3d有好大區別,想做的和現實肯定會有區別,頭發,衣服等,做這個嚐試是為了讓自己的在maya的某些技術和模塊上能有提高和進步,現在把這個古裝美女的創作過程和大家分享。
二、製作過程:
在做古裝前,找了許多相關實物進行參考,包括頭發,衣服等等,衣服上用參考唐代的一些服裝,而在頭發設計方便,因為沒什麼古代的頭發實物參考,也就參考一些電視劇的和一些現代元素,設計製作。模型方麵,其實網上都有好多相關的製作教程,詳細的不多說了,現在說最重要模型的uv劃分和貼圖上的一點小技巧。
1、衣服
因為衣服是色彩色塊比較大的,所以我在找尋一點相關的貼圖,並將貼圖製作成無縫貼圖。最終完成衣服的貼圖:因為原始的圖層的材質我已經合成了,所以隻能發完成後的貼圖效果了。
參考圖1
參考圖2
而衣服的明暗,我通過疊加一個反射貼圖,製作出帶少許明暗的貼圖,製作一點假的皺紋效果,這樣可以省下一點雕刻模型的時間。
[page]
2、UV劃分及pose
因為衣服的貼圖用bodypaint不是太好畫,所以我打算用重複貼圖的辦法貼到模型上,所以我把uv的邊界劃分到袖子的底下,這樣可以避開接縫問題,因為我選的鏡頭是看不到袖子底下的。
衣服建模圖1
對於現代的緊身裝束,那就容易綁定,而對於這個古代唐裝長袖就比較麻煩了,當時對Zbrush不太熟悉,於是用晶格對其進行大型的修改而沒進行蒙皮綁定。
衣服建模圖2
而在衣服的材質上,我因為用了層,所以mr是渲染不出來的,所以我使用mr的一個材質mi_shadow_trans做遮罩。
衣服建模圖3
單獨用mr sss渲染出人的皮膚。
3、眼球材質
眼球材質我使用了sss材質,感覺這樣會真實好多。
下麵介紹的是角膜的材質:
眼睛建模參數圖1
至於高光上的貼圖,為了讓眼睛更有特色,我改了角膜上的高光遮罩貼圖,讓顏色偏藍。
眼睛建模參數圖2
眼球的sss材質
|
眼睛建模參數圖3
而為了讓眼球產生高光,顯得眼睛更有神,我用了反光板。
材質參考圖
[page]
4、身體皮膚的材質
為了讓皮膚白點,所以我改亮了sss subdermal的貼圖,讓渲染出來人的皮膚更白亮。
超級渲染器
頭部貼圖參數
Mr sss渲染後的皮膚效果:
上身貼圖渲染圖
因為我在sss的epidermal加了黑色的毛發貼圖,所以會讓模型渲染後,不會讓頭頂太白。產生類似有頭發在頭皮上的效果。
眉毛和眼睫毛的製作是使用了最基本的錐體,彎曲後製作就可以了,基本就是體力活。
頭部建模圖
[page]
5、發型的創建
因為Maya hair比較複雜,先來說說它的基本參數。
在三維裏,逼真的毛發效果一直以來都是很難解決的問題,一直到maya 7的出現,才把這個問題完滿解決。Maya 的毛發係統還能和Maya Fur整合,使用 Maya的動態曲線技術集成,應用逼真的動態特性,並且可以整合 Fur和Hair一起使用,使fur的動態效果更逼真,令人信服。
Maya Hair還可以把毛發從一個模型移植到另一個模型(包括在nurbs和poly間轉移),並為屬性(例如:光禿和顏色)的紋理映射提供支持。Hair(毛發)也可以直接在用於Maya的mental ray中渲染,得到更逼真的毛發效果。並且Maya 7為毛發動畫創作人員提供了十多種毛發預置樣式- 包括:辮子、發髻、卷發、"雷管頭"和發型。這是一個很有用的毛發創建工具,可以成為那些對該功能不熟悉的新用戶的學習工具。
首先,下麵我們來介紹Maya Hair system,這個功能是MAYA從6.0開始增加的新模塊,用於創建真實的頭發效果,現在的MAYA,已經不再需要外加插件來模擬頭發。接下來就係統講解hair的各個部分以及具體的使用方法。
首先打開Hair模塊。
打開MAYA,選擇模塊為動力學--Dynamic。
Hair system詳細說明
圖1
(1)create hair
打開hair模塊的主菜單,找到create hair選項,點擊後彈出設置麵板如(圖2)
圖2
output--hair輸出方式選項
Maya的hair可以選擇以下三種輸出方式,分別為Paint Effects 、 NURBS curves 、Paint Effects 和Nurbs curves,下麵便通過更詳細的分析,來說明這三種不同的輸出方式。
Paint Effects 方式(圖 3):?在圖上我們看到,hair從創建的NURBS球體生成了一簇簇毛發狀物體,這就是hair system生成的paint effects 的Hair。而紅色的圓圈就是發射毛發的毛囊。需要注意的是,在生成hair的物體中,有分nurbs和poly,nurbs的毛囊分布是很均勻的,而poly上生成的毛囊,是由多邊型的uv決定毛囊的分布的,當出現uv重疊的時候,uv重疊的地方就會不能生成hair毛囊,所以均勻分布的uv是poly生成hair的先決條件。
圖3
NURBS方式(圖 4):我們看到,在球體上生成的為一根一根的NURBS曲線,每一根NURBS曲線都是受hair system控製的動力學曲線,可以結合maya的場控製它的動態,而且曲線是可以用變形器對其進行再一步編輯,例如晶格變形等。
圖4
Paint Effect and Nurbs Cures方式(圖 5):這是結合前兩種生成的,圖中的藍線就是NURBS Cures,這種方式生成的頭發,可以用於更為複雜的發型或者其它的特效。
圖5
Create Rest Curves(圖6):創建靜止曲線,這個選項和頭發靜止受不受場的影響有關聯,因為在maya的hair system裏,hair的動態受兩種曲線影響,一種是start position的曲線,一種是rest position的曲線,這兩種曲線在平常是看不到的,要通過顯示菜單來分別顯示這兩種狀態。而start position的曲線是儲存hair在當前的形態,也就是所謂初始狀態,而rest position的曲線是當hair system不受場和重力的影響時,所傾向的形態。如果start position的曲線和rest position的曲線不一至,而又不受場的影響,start position曲線的形態會趨向 rest position的曲線。
圖6
生成方式(圖7):
Gird:以物體的網格為基礎的方式生成頭發,與物體的UV有關係。
At Selected Points/Faces:以選擇的物體的點和麵為基礎生成頭發,屬於比較隨意的一種創建方式。
圖7
U Count/V Count:在UV方向上生成的毛發數量,數值越高生成的頭發越多,其實就是在物體上毛囊的采樣數。
圖8
當(UV Count值為30時)
圖9
(UV Count值為默認的8時)
圖10
[page]
Passive Fill:被動填充,主要是創建主動和被動毛囊,並且通過主動曲線來驅動被動曲線的動態,通過插值的方式驅使被動曲線運動,在要求精度不高的情況下,可以通過這樣方式來減少毛發動態的運算量。但產生的被動毛囊所生成的頭發方受主動曲線驅動。
Randomization:頭發生長隨機值,這個參數還和uv 有關,如果uv不均勻,就算Randomization為0,頭發的生長都不可能是均勻的,值越大產生的毛囊越不均勻,隨機值越大,毛囊生長的越是不均勻。
(隨機值為0時毛囊的分布)
圖11
隨機值為2時毛囊的分布)
圖12
圖13
Edge Bounded:選中該項後毛囊會按著一條邊的形式生長。
Equalize:選中該項後,毛囊會按uv空間和世界空間的方式生長。
圖14
Dynamic:動力學模式,選中該項後生成的頭發會自行進行動力學解算,也就是創建主動毛囊。
Static:靜態模式,選中該項後生成的頭發不進行任何動力學解算,也就是創建靜態毛囊。
Points Per Hair:每條動力學曲線的頂點數,數值越大,在碰撞的精確度上越高,運算量越大,不過其實這個點數目在創建後是可以通過重建而改變的。
(值為3時動力學曲線的cv數目)
圖15
(值為10時動力學曲線的cv數目)
圖16
Length:長度,指頭發的長度。
Place Hair into:這個選項決定了,新生成的頭發係統是重新生成一個新的頭發係統,還是加入到現有的頭發係統裏去。
(新創建方式,outliner裏看到有兩個hair system)
圖17
(加入到現有方式,outliner裏看到隻有1個hair system)
圖18
Scale Hair Tool:縮放頭發,在生成頭發後選中頭發,可按住鼠標左鍵或中鍵拖動鼠標任意控製頭發的長度。
Paint Hair Follicles:筆刷繪製毛囊,這可以說是Maya的獨特功能了,可以直接在物體上像畫畫那樣繪製出頭發,提供用戶更大的創造性和自由度。
圖19
而比較特別的是paint mode,其包括Create Follicles、Create Passive Follicles、Delete Follicles、Edit FoLLicle Attributes、Trim Hairs、Extend Hairs的幾種方式(圖 20)。
圖20
[page]
Paint Mode:筆刷模式
Create Follicles:創建毛囊
Create Passive Follicles:創建被動毛囊
Delete Follicles:刪除毛囊
Edit Follicle Attributes:編輯毛囊屬性
Trim Hairs:修剪頭發
Extend Hairs:延長頭發
可以通過它來繪製,改變毛囊的屬性,比手動改要更方便。而其它的參數上與前麵的一樣,這裏就不重複說明了。
Follicle Attribute:毛囊屬性,必須在Paint Mode中選擇Edit Follicle Attributes才可以進行編輯毛發屬性的選項(圖 21)。
圖21
Clump Width Mult:調節每個毛囊生成每一束毛發的寬度,通過調節筆刷的壓值來進行設置。
Density Mult:毛發的稀疏度,可以控製每個毛囊生出的頭發數目。
Curl Mult:卷曲值,可以通過這個調節每根頭發的卷曲程度。
Clump Twist Offset:調節毛囊生成的頭發的自扭曲值,因為默認生成的頭發之間太規則了,在處理真實頭發效果時,適當的增大扭曲值為好,注意的是它與卷曲值不同,它是控製每個毛囊生成的所有頭發的。
Color Blend:色彩混合,在製大量頭發時,可以用它來和頭發的原有顏色進行混合。
Braid:辮子,俗話說的馬尾,通過它決定那一束頭發作為辮子。
Hair Scale:頭發縮放長度,與Scale Hair Tool 功能上一樣,需要通過調節筆刷壓強。
Inclination:傾斜度,調節頭發生長的方向。
Roll:滾動控製,可使多個毛囊為單位的頭發生長方向呈不規則的變化。
Polar:兩極控製,使毛囊所生出的頭發規則的朝一個方向發生變化。
Surface Insert:插入表麵,使頭發生長方向為進入物體內部。
Stiffness:硬度,通過筆刷壓強的大小來控製頭發的強度,與動力學解算有直接關係。
圖22
Display:顯示狀態,這個菜單顯示頭發曲線的各種狀態,你可用菜單切換到頭發曲線顯示模式,當你要需要對頭發作修改和調整都需要這個參數。
Current Position:當前狀態,指的是頭發在進行動力學解算的當前狀態。
Start Position:起始狀態,選擇頭發後點擊, 起始狀態的曲線就能夠編輯,頭發靜止時的曲線被顯示出來,通過多種的編輯方式,就可以控製頭發起始時的形態了。
Rest Position:靜止狀態,編輯頭發靜止狀態,這個狀態可以通過設置得到同樣可以從任何一個狀態轉為rest position。
Current and Start:這個功能十分好用,可以直接改變頭發的形態,點擊後編輯曲線可實時改變頭發的形態,而且結合maya內部的變形器,能更好的改變頭發的形狀。
圖23
Current and Rest:與Current and Start相似,隻不夠控製的狀態不一樣。
All Curves:編輯所有曲線,包括Current和Rest曲線。
圖24
設置起始狀態。
Form Current:來自當前,把當前進行的動力學演算或者手工調整好一個發型,選擇這個後為當前頭發的形態。
From Rest:來自靜止狀態,把rest的靜止狀態傳遞給start position 的狀態。
圖25
設置靜止狀態,在動力學演算後選擇該項可將當前頭發的狀態設為靜止後的狀態。
圖26
From Start:來自起始,與上麵講過的Set Start Position搭配使用。
From Current:當前狀態,把當前的狀態設置為靜止狀態。
圖27
修改曲線,主要是在頭發的編輯曲線下進行各種編輯。
圖28
Lock Length:鎖定頭發曲線的長度,鎖定後頭發曲線長度不能改變。在鎖定後,移動曲線的點,曲線其他部分會連帶運動。
圖29
[page]
Unlock Length:解除鎖定頭發曲線長度,解除鎖定頭發的長度。當這個選項打開後,頭發的長度不受限製。可以隨意更改。
圖30
圖31
Straightness:拉直度,調節拉直頭發的強度。默認值為1
Preserve Length:保持長度,默認為打開。
圖32
Smooth:平滑度,頭發的平滑度,用該命令後使頭發曲線能更平滑。
圖33
Smooth Factor:光滑因數,值越大頭曲率就越光滑。
Curl:卷曲,頭發自身的卷曲。
圖34
Curl Amount:卷曲數量
Curl Frequency:卷曲頻率
Bend:彎曲值
圖35
Bend Amount:彎曲數量
Twist:彎曲值
Scale Curvature:縮放曲率
圖36
Scale Factor:縮放因數
Max Curvature:最大彎曲率
圖37
創建約束
圖38
[page]
Rubber Band:橡膠帶子,使頭發綁在一起。
圖39
Transform:變形在做發型時常用到。
圖40
平移,縮放
圖41
Stick:粘貼
也是比較常用到的一個命令
圖42
Hair to Hair:頭發與頭發間的約束。
Hair Brush:頭發束,一般並不常用。
Collide Sphere:碰撞球,主要是做減少碰撞運算的虛擬物。
Collide Cube:碰撞立方體,和球體一樣,隻不過是正方型的碰撞方式。
圖43
轉換選擇
圖44
To Follicles:到毛囊,因為毛囊不能很方便的選擇,用這個可以快速的選擇所有毛囊並修改其屬性。
To Start Curves:選擇初始曲線,快速選擇所有初始曲線。
To Rest Curves:選擇靜止曲線,快速選擇所有靜止曲線。
To Current Positions:選擇當前曲線,快速進入當前狀態並選擇所有的毛發。
To Hair Systems:選擇頭發係統,快速進入頭發係統的屬性參數麵板。
To Hair Constraints:選擇頭發約束。
To Start Curve End CVs:到初始曲線的端點。
To Rest Curve End CVs:選擇靜止曲線的端點。
To Start and Rest End CVs:選擇初始曲線和靜止曲線的端點。
圖45
指定到特定的頭發係統
圖46
將所選的曲線賦予動力學,用hair的動力學係統來驅動。
圖47
[page]
創建碰撞
必須要先創建動力學曲線,並給與動力學,然後選擇需要做碰撞物體,一並選擇曲線,然後執行Make Collide。
圖48
球體與曲線發生碰撞。
圖49
分配Paint Effects筆刷到頭發係統上
圖50
在製作頭發中,可以把任何pe的效果賦予到hair係統上渲染,可以實現很多特效。
圖51
移植頭發
圖52
Copy Follicles:複製毛囊
Match UV:匹配UV.
Nearest Point:接近的點的複製方式。
Place Hairs into:把頭發防在統一個係統裏還是另外一個頭發係統。
hairSystemShape Maya的頭發係統節點屬性。
圖53
運算模式
Off:關閉
Static:靜止,不接受動力學演算
Dynamic Follicles Only:僅僅是主動毛囊進行運算。
All Follicles:全部毛囊
圖54
顯示質量,這個參數很重要,在頭發多的時候為了減輕機子和顯卡的負擔,建議盡量調小值,
隻是顯示的精度而已,對頭發本身沒有任何影響。
圖55
Hairs Per Clump:每個毛囊的頭發數目
Baldness Map:禿度貼圖
Sub Segments:頭發片斷數,數值越高,頭發越平滑
Thinning:稀疏度,控製頭發末端的稀疏度
Clump Twist:每塊頭發的扭曲
Bend Follow:彎曲跟隨
Clump Width:每束頭發的寬度
Hair Width:每根頭發粗細
圖56
Clump Width Scale:範圍調整,這是個很好用的東西,可以通過調整曲線圖形來調整每束頭發的寬度。
Selected Position:選擇位置
Selected Value:選擇數值
Interpolation:插補
圖57
None:沒有任何調整
Spline:曲線
Linear:直線型
Smooth:光滑
圖58
卷曲曲線調整
其他命令同上一樣
圖59
扁平曲線的調整
它的作用是可以讓頭發變某處變得扁平。
圖60
Dynamics:動力學
Iterations:柔韌性,直接與頭發進行動力學演算有莫大的關係,值越大頭發越有韌性,值越小頭發越缺乏彈性。
圖61
[page]
數值為10時
圖62
值為1時
Length Flex:長度伸縮,這個參數的意思是頭發在動力學演算時是否伸縮,也就是拉長。
一般情況下調整為0。
Stiffness:硬度,值越大,頭發受動力學的影響就越小,越不容易變形。
圖63
硬度曲線:細致到可以調整頭發的某部分硬度
圖64
Drag:托拽力,頭發在做運動時,可以通過這個來調整,加快和減緩運動的快慢。
Damp:抑製,抑製頭發在動力學時可以較好的保持住形態。
Friction:摩擦力,頭發與碰撞物體間的摩擦
Mass:質量
Gravity:重力,默認值為標準重力0.980
Start Curve Attract:開始曲線間的吸引,數值大時,曲線的動態愈會趨向start position的曲線。
Dynamics Weight:動力學權重,默認為1。
Start Frame:開始禎
Current Time:當前時間禎
圖65
Collisions:碰撞
Collide:是否碰撞,默認為打開,如果關閉,頭發不會和物體產生碰撞。
Collide Over Sample:碰撞采樣,默認為0,數值越大,碰撞越精確,所需要的運算時間就越長。
Collide Width Offset:碰撞偏移,碰撞後的偏移大小,如果打開自碰撞,這個值還會影響自碰撞。
Self Collide:自碰撞,打開後每根頭發都會發生碰撞,但計算起來很慢
Repulsion:排斥,值越大,排斥的越厲害
Static Cling:靜電黏著,真實的頭發會有些靜電反應並粘合在一起
Num Collide Neighbors:頭發的鄰近碰撞,主要是調節碰撞區域的範圍。
Collide Ground:與地麵碰撞,打開後頭發係統會模擬頭發與地麵的碰撞。
Ground Height:碰撞地麵的高度。
圖66
Draw Collide Width:碰撞托拽範圍,打開後會有圓圈,表示碰撞範圍和Collide Width Offset有關,Collide Width Offset的大小就是自碰撞的半徑大小。
圖67
(Collide Width Offset為0.4時的顯示)
圖68
Turbulence:抖動
Intensity:強度,數值大時,頭發不規則運動越厲害
Frequency:頻率
Speed:速度大小
圖69
[page]
Shading:紋理
Hair Color:頭發顏色,可以使用貼圖。
圖70
Hair Color Scale:頭發顏色混合比例
Selected position:選擇位置
Selected Color:選擇顏色
圖71
Opacity:透明度
Translucence:半透明
Specular Color:高光顏色
Specular Power:高光強度
Cast Shadows:產生陰影
圖72
Color randomization:顏色隨機化
Diffuse Rand:漫反射隨機化
Specular Rand:高光隨機化
Hue Rand:色相隨機化
Sat Rand:飽和度隨機化
Val Rand:亮度隨機化
圖73
Displacements:置換
Curl:彎曲
Curl Frequency:彎曲頻率
Noise Method:噪波方式
圖74
Random:隨機
Surface UV:曲麵UV
Clump UV:塊UV
Noise:噪波
Detail Noise:細節噪波
Noise Frequency:噪波頻率
Noise Frequency U:U方向的噪波頻率
Noise Frequency V:V方向的噪波頻率
Noise Frequency W:W方向的噪波頻率
Sub Clump Method:片斷塊方式
圖75
同上…………
Sub Clumping:塊片斷
Sub Clump Rand:塊片斷隨機
Num U Clumps:U塊
Num V Clumps :V塊
圖76
Displacement Scale:置換範圍的控製曲線。
圖77
Multi Streaks:頭發補充,這個命令可以增加頭發數目,但並不會增加太長的渲染時間
Multi Streaks:數值多時,頭發的數量也就越多
Multi Streak Spread1:根部頭發補充
Multi Streak Spread2:頭發梢補充
Light Each Hair:每個頭發接受燈光
在明白了maya hair上的各種參數後,我們就開始動手創建頭發了。
首先,我們要知道,其實maya的hair曲線可以重建的,而且可以使用動力學和晶格進行編輯,下邊我來說一個例子,相信看完後,好多人都知道一些大概的做法了。因為古代的發型,有好多都是假的頭發加上的的,一團團的東西,不好做,但maya的變形器比較多,所以動動腦,方法就出來了。
圖78
[page]
首先把hair曲線拉直,調整成如下樣子。
圖79
然後創建晶格變形,讓晶格旋轉45度,並增加其段數。
圖80
接著使用bend彎曲變形器,並調整彎曲的大小。
圖81
效果滿意後,刪除曲線的曆史。在曲線橫向上再創建一個bend變形,效果如圖。
圖82
這樣就完成了發團的製作。
而我模型上的頭發是先在tpose上創建,然後再用根據擺好的pose上用晶格改變基本形態的。
圖83
頭上的白毛裝飾,我在圓柱上創建hair
圖84
[page]
然後用curl讓其彎曲來製作的。
下邊是我hair的調整參數,這個大家可以按照自己的實際來調整。
圖85
為了讓頭發有顏色的變化,我在Hair color放了ramp的貼圖。
圖86
最後衣服和hair使用默認渲染,而身體用sss渲染,最後用ps合成。
圖87
完成圖
背景製作用ps的畫筆亂畫了點顏色。