表情、蒙皮和燈光篇之Maya卡通角色制作
本節(jié)匯寶盆為大家?guī)?lái)的是:表情、蒙皮和燈光篇之Maya卡通角色制作
下面我們接著上一篇繼續(xù)講解表情、蒙皮和燈光篇。
教程思路
表情與骨骼綁定:
1.表情綁定。
2.表情控制器。
3.角色蒙皮。
4.分配權(quán)重。
5.動(dòng)畫(huà)調(diào)節(jié)。
角色燈光與渲染:
1.分層渲染。
2.用于頭發(fā)照明的燈光。
3.獲取頭發(fā)在其他物體上投影。
4.用于卡通材質(zhì)的燈光。
5.卡通線框的選擇。
【表情與骨骼綁定】
Maya2011雖然沒(méi)用提供像3dsMax那樣的CharacterStudio骨骼系統(tǒng),但是它所能完成的效果遠(yuǎn)比CS系統(tǒng)強(qiáng)大。較為專業(yè)的骨骼綁定師都會(huì)采用自定義的骨骼系統(tǒng)來(lái)完成各種復(fù)雜的動(dòng)作要求,例如IK/FK的切換,關(guān)節(jié)的聯(lián)動(dòng)等。當(dāng)然,maya也有一些實(shí)用的骨骼插件可以選擇,如AdvancedSkeleton,TheSetupMachine。
我選擇的是Maya內(nèi)置的FBIK系統(tǒng)。盡管這套來(lái)源于MotionBuilder的骨骼系統(tǒng)簡(jiǎn)化了很多功能,但是保留了精華的部分,足以完成大多數(shù)的動(dòng)畫(huà)要求。
由于FBIK會(huì)另外創(chuàng)建一套FK骨架,用來(lái)進(jìn)行IK/FK的切換,因此在進(jìn)行蒙皮時(shí)我們要注意所選的根骨骼應(yīng)為角色的源骨架(也就是在生成FBIK系統(tǒng)之前的骨架)。有關(guān)FBIK系統(tǒng)我已經(jīng)在之前的博文中有詳細(xì)說(shuō)明,這里不再重復(fù)。順便提一點(diǎn)個(gè)人對(duì)綁定姿勢(shì)的看法:
通常的T字形模型姿勢(shì),對(duì)于建模和骨架搭建都是很有利的,但是動(dòng)畫(huà)中角色會(huì)將手臂抬到這個(gè)極限姿態(tài)的情況并不多,因此,我選擇比較折中的手臂45度下垂的綁定姿勢(shì)。
現(xiàn)實(shí)中,人的肩關(guān)節(jié)上臂是不能外展超過(guò)90度的;當(dāng)我們將手臂高高舉起的時(shí)候,由于鎖骨和肩胛骨的限制,這時(shí)是肩肱關(guān)節(jié)發(fā)生了扭轉(zhuǎn),而不是其在原旋轉(zhuǎn)軸基礎(chǔ)上繼續(xù)發(fā)生動(dòng)作。雖然三維動(dòng)畫(huà)中,我們經(jīng)常會(huì)忽略這個(gè)骨骼運(yùn)動(dòng)限制而進(jìn)行蒙皮動(dòng)畫(huà),但如果要進(jìn)行嚴(yán)格的寫(xiě)實(shí)動(dòng)畫(huà),我們應(yīng)該注意這個(gè)生物進(jìn)化上的須知。
1.表情綁定
表情我僅使用BlendShape來(lái)完成,包括眨眼動(dòng)畫(huà);而眼球轉(zhuǎn)動(dòng)使用了目標(biāo)約束。
2.表情控制器
根據(jù)需要,創(chuàng)建了一套簡(jiǎn)單的表情控制器,使用驅(qū)動(dòng)關(guān)鍵幀來(lái)控制BlendShape的權(quán)重。
為了便于表情控制,可創(chuàng)建一個(gè)正對(duì)表情控制器的攝像機(jī),然后將攝像機(jī)的窗口“撕下(tearOff)”即可--浮動(dòng)窗口正是maya的一大特色。
3.角色蒙皮
FBIK系統(tǒng)在動(dòng)作的調(diào)節(jié)上幾乎是完美的,但為了能更好的進(jìn)行關(guān)節(jié)控制,則需要在綁定角色的情況下來(lái)測(cè)試。蒙皮的初始設(shè)置也很重要,SkinningMethod為WeightBlended,MaxInfluences為3;去掉勾選MaintainMaxInfluences;DropoffRate設(shè)置為3。
4.分配權(quán)重
Maya2011雖然新增了交互式的權(quán)重繪制方式,不過(guò)效果上并不比手動(dòng)繪制強(qiáng)多少,所以我不打算使用交互式的膠囊包裹進(jìn)行。這里我選擇混合權(quán)重的方式進(jìn)行繪制。這是Maya2011在蒙皮上較為先進(jìn)的新功能,可以將傳統(tǒng)蒙皮和雙重四元蒙皮結(jié)合。如在關(guān)節(jié)的地方使用雙重蒙皮權(quán)重(DQBlendWeight),這樣可以在不使用“影響物體”或肌肉系統(tǒng)的情況下解決關(guān)節(jié)彎曲時(shí)的皮膚擠壓穿插問(wèn)題(盡管細(xì)節(jié)上能處理的不多,但也可應(yīng)用于多數(shù)情況)。注意,DQ融合權(quán)重與關(guān)節(jié)無(wú)關(guān),它是直接對(duì)模型點(diǎn)進(jìn)行新權(quán)重的增加。
歐美的3D卡通角色都采用細(xì)小的關(guān)節(jié),除了風(fēng)格上,在骨骼綁定的時(shí)候也可省下不少工作。
5.動(dòng)畫(huà)調(diào)節(jié)
FBIK的好處是可靈活的對(duì)關(guān)節(jié)進(jìn)行IK/FK和pin狀態(tài)的切換,但不足的是它用于控制動(dòng)畫(huà)的效應(yīng)器被賦予了很多連接,初始的位移和旋轉(zhuǎn)數(shù)值并不為零,甚至左右的效應(yīng)器數(shù)值還不對(duì)稱。如果對(duì)效應(yīng)器使用各種約束控制器,將會(huì)出現(xiàn)動(dòng)畫(huà)異常的現(xiàn)象。
【角色燈光與渲染】
1.分層渲染
新建渲染層,將pfx頭發(fā)和角色加入到層中。Maya中還無(wú)法對(duì)筆刷特效設(shè)置燈光鏈接,因此需要在渲染層中操作。頭發(fā)渲染層中的角色模型使用useBackground材質(zhì),用于模型和頭發(fā)的相互遮擋。
2.用于頭發(fā)照明的燈光
使用多個(gè)聚光燈,在不同的空間方位照亮頭發(fā)細(xì)節(jié)(如果使用平行光,可集中在一個(gè)位置,但需要的數(shù)量比聚光燈多),模擬全局光。注意要關(guān)閉輔助燈光的高光照明功能,也就是去掉EmitSpecular的勾選。
3.獲取頭發(fā)在其他物體上投影
使用一個(gè)主燈照亮頭發(fā)的高光區(qū)域,并開(kāi)啟深度陰影。使用MayaSoftware渲染時(shí),Pfx頭發(fā)的陰影渲染不支持光線追蹤陰影,因此為了得到好的效果,深度陰影的分辨率采用4096,F(xiàn)ilterSize使用較高數(shù)值5,Bias設(shè)置為0.001-0.005之間。FilterSize用于模糊陰影得到柔和效果,而B(niǎo)ias是偏移陰影像素,數(shù)值增大會(huì)逐漸減少陰影的區(qū)域,直到消失。
如果關(guān)閉深度陰影中的UseMidDist,會(huì)造成物體上的投影產(chǎn)生斑點(diǎn);這是因?yàn)橥渡潢幱暗奈矬w距離燈光太遠(yuǎn),超過(guò)陰影的深度值,即使提高深度陰影貼圖的分辨率,也無(wú)法避免這種情況,因此通常使用深度陰影都需要開(kāi)啟該項(xiàng)。開(kāi)啟后,maya只計(jì)算臨近的投影物體到燈光的距離,然后對(duì)距離值進(jìn)行平均,得到合適的陰影效果。
注意:渲染頭發(fā)自身陰影時(shí)一定要關(guān)閉UseMidDist選項(xiàng),因?yàn)檫@是根據(jù)距離來(lái)平滑陰影的算法,對(duì)于頭發(fā)這樣細(xì)小的物體,成影效果反而不好。不過(guò)pfxHair沒(méi)有分離castShadows和ReceiveShadows的功能,頭發(fā)自身投影和對(duì)物體投影是同時(shí)進(jìn)行的(使用mentalRay渲染器則可支持兩者的分離),在渲染陰影時(shí),燈光UseMidDist的設(shè)置就產(chǎn)生了沖突;因此,如果需要頭發(fā)自身投影和對(duì)其他物體的投影,應(yīng)將頭發(fā)與自身投影作為一個(gè)渲染層,而其他物體和頭發(fā)對(duì)它們的投影作為另一個(gè)渲染層。
4.用于卡通材質(zhì)的燈光
卡通材質(zhì)只需要一個(gè)主光源即可(rampShader不接受任何輔光的色彩影響),這里我使用的是和頭發(fā)主光源一樣的燈光。當(dāng)然,可以根據(jù)需要在聚光燈和平行光之間選擇。
5.卡通線框的選擇
雖然增加卡通線框效果,會(huì)讓模型的輪廓更清晰,但卡通線也存在一些較難解決的畫(huà)面問(wèn)題:在鏡頭的遠(yuǎn)近效果上。例如,人物手指的卡通線,當(dāng)鏡頭較近的時(shí)候,效果還算不錯(cuò);但稍遠(yuǎn)距離時(shí),一些細(xì)節(jié)上的過(guò)于突出反而會(huì)影響整體效果。
解決方法:
1.根據(jù)鏡頭遠(yuǎn)近效果,決定是否渲染卡通線。
2.將卡通線分層渲染,在后期調(diào)節(jié)透明度。
3.關(guān)閉原pfxToon卡通線的CreaseLines,然后再對(duì)模型增加一個(gè)新的pfxToon卡通線節(jié)點(diǎn),只開(kāi)啟該節(jié)點(diǎn)的CreaseLines,關(guān)閉其他線條功能。通過(guò)新的pfxToon節(jié)點(diǎn)的CreaseLines下的HardCreasesOnly選項(xiàng),對(duì)模型的局部轉(zhuǎn)折進(jìn)行硬邊操作,相當(dāng)于手動(dòng)繪制卡通線。于是可以根據(jù)鏡頭來(lái)調(diào)節(jié)局部線條的粗細(xì)以及不透明度。
相關(guān)教程:
-
分享到:
您需要登錄后才可以發(fā)帖 登錄 | 立即注冊(cè)
- 用戶名:
- 密 碼:
- 驗(yàn)證碼: 看不清? 點(diǎn)擊更換
- 忘記密碼?
全部評(píng)論:0條