- 干貨||Maya角色特效之變形化身效果
在系列電影《X戰(zhàn)警(X-Men)》中,有一名角色讓人過目難忘,印象深刻,那就是魔形女(Mystique)。她是一名變種人,可以改變自身細胞和組織結(jié)構(gòu),使得她可以變化成任何人的樣子,包括虹膜、指紋、皮膚紋理、聲音甚至性別;身上的穿著也可以模仿任意服飾的質(zhì)感,甚至眼鏡。當然,我們都知道這是三維特效制作出來的,屬于角色特效?,F(xiàn)實生活中并不存在這樣的變種人。從電影特效藝術(shù)的角度來看,每當魔形女變形化身時,曇花一現(xiàn)的變身過程,驚艷了觀眾的雙眼。這就是電影特效藝術(shù)的魅力!
現(xiàn)在,我們向經(jīng)典致敬!在三維動畫軟件Maya中,制作一個相似的角色特效動畫效果。與電影《X戰(zhàn)警》中的魔形女變形化身效果相似,但又有所不同。電影《X戰(zhàn)警》中的魔形女變形化身效果,實際上是表面翻皮動畫效果。在翻皮的過程中,從一種角色造型變換成另一種角色造型。而我們要做的變形化身效果,是角色表面以針刺狀凸起再回落。在這一起一落之間,從一種角色造型變換成另一種角色造型。
在Maya平臺下,首先我們準備好兩個角色模型。這兩個角色模型,要造型不同,但是要拓撲結(jié)構(gòu)相同。通俗來講,兩個角色模型的體積造型不同,但是它們的表面結(jié)構(gòu)(頂點、棱邊、組成面)和表面UV坐標相同。在準備角色模型時,注意到上述問題,可以方便地制作出角色從一種造型變換成另一種造型。如果兩個角色模型,造型不同,拓撲結(jié)構(gòu)也不相同,那么從一種造型變換成另一種造型時容易出錯。因此,在準備兩個角色模型時,應該要注意該問題。
這兩個完整角色模型是兩個組。在大綱視圖中,將這兩個組展開,將兩個組中除人頭以外的其他元素全部選擇,將這些元素隱藏。只留下兩個人頭模型。
在Maya建模模塊下,選擇這兩個人頭模型,執(zhí)行菜單命令“網(wǎng)格->平滑”以這種方式,增加模型的面數(shù),讓這兩個人頭模型更加平滑,更加精細。這有利于后續(xù)特效動畫的制作。然后對這兩個人頭模型刪除歷史。
在大綱視圖中,選擇兩個組。將兩個組的位置放回到世界中心。然后選擇第一個組(變形后的造型),將其隱藏。第二個組(變形前的造型)依然顯示。這樣,我們就可以做變形化身的角色特效動畫了。
在Maya綁定模塊下,選擇第一個組中變形后的人頭模型,加選第二個組中變形前的人頭模型,執(zhí)行菜單命令“變形->融合變形”。這樣就給第二個組中變形前的人頭模型添加了一個融合變形器。該變形器是blend1。
選擇第二個組中變形前的人頭模型。在該模型的變換通道欄中,找到變形器blend1的形狀節(jié)點blendShape1面板,對融合變形的權(quán)重值做關(guān)鍵幀動畫。在第24幀(第1秒),該融合變形的權(quán)重值為0。在第72幀(第3秒),該融合變形的權(quán)重值為1。
在大綱視圖中,將第二個組中變形前的兩個眼睛模型顯示出來。按照上述同樣的制作方法制作兩只眼睛的變形動畫。
選擇第一個組中變形后的左眼模型,加選第二個組中變形前的左眼模型,執(zhí)行菜單命令“變形->融合變形”。這樣就給第二個組中變形前的左眼模型添加了一個融合變形器。該變形器是blend2。
選擇第二個組中變形前的左眼模型。在該模型的變換通道欄中,找到變形器blend2的形狀節(jié)點blendShape2面板,對融合變形的權(quán)重值做關(guān)鍵幀動畫。在第24幀(第1秒),該融合變形的權(quán)重值為0。在第72幀(第3秒),該融合變形的權(quán)重值為1。
選擇第一個組中變形后的右眼模型,加選第二個組中變形前的右眼模型,執(zhí)行菜單命令“變形->融合變形”。這樣就給第二個組中變形前的右眼模型添加了一個融合變形器。該變形器是blend3。
選擇第二個組中變形前的右眼模型。在該模型的變換通道欄中,找到變形器blend3的形狀節(jié)點blendShape3面板,對融合變形的權(quán)重值做關(guān)鍵幀動畫。在第24幀(第1秒),該融合變形的權(quán)重值為0。在第72幀(第3秒),該融合變形的權(quán)重值為1。
將以上操作步驟做好后,在Maya下播放動畫,我們可以看到一個人頭變形動畫就做好了。在這之后,我們就可以制作角色表面以針刺狀凸起再回落的動畫效果了。
回到起始幀。在場景視圖中,選擇人頭模型。點擊鼠標右鍵,在右鍵菜單中執(zhí)行面編輯模式。讓人頭模型進入面編輯模式。
打開Maya腳本編輯器,我們可以看到該窗口分為上下兩欄。上欄為信息反饋欄,下欄為腳本程序的編輯區(qū)。我們在Maya下所做的操作,在信息反饋欄中都有對應的操作程序反饋。我們可以在信息反饋欄中提取想要的操作程序,復制粘貼到腳本程序的編輯區(qū),可以保持原樣,也可以調(diào)整修改。以此來使用這些腳本程序,為我們的制作服務。
接下來,我們要在腳本編輯器的信息反饋欄中提取想要的操作程序。該信息反饋欄中反饋回來的操作程序比較多,查找起來不方便。為了方便查找相應的腳本程序,我們先將信息反饋欄清空。當你再執(zhí)行相應操作時,在腳本編輯器的信息反饋欄中只會看到當前的操作對應的程序。這樣,我們查找起來比較方便。
在場景視圖中,選擇人頭模型的所有面。這樣,就會在腳本編輯器的信息反饋欄中出現(xiàn)一句程序:select -r skin_b.f[0:22983];這句程序就是剛才在場景視圖中選擇人頭模型的所有面對應的程序。后續(xù)操作要用到這一句程序,因此將它復制粘貼到腳本程序的編輯區(qū)。
在Maya建模模塊下,選擇人頭模型,執(zhí)行菜單命令“編輯網(wǎng)格->擠出”。
在人頭模型的變換通道欄中,找到擠出操作polyExtrudeFace1面板。在該面板中,將保持面的連接性設置為禁用,將局部比例設置為0.1。這樣,我們在場景視圖中可以看到,模型的每個面擠出后向各自的中心收縮。如果收縮后沿每個面的法線方向凸起,就可以形成針刺狀的空間造型。
在場景視圖中,選擇人頭模型。點擊鼠標右鍵,在右鍵菜單中執(zhí)行面編輯模式。讓人頭模型進入面編輯模式。
在腳本編輯器中,將剛才提取出來的程序“select-r skin_b.f[0:22983];”執(zhí)行一次。具體操作方法是,在腳本程序的編輯區(qū)選擇這句程序,執(zhí)行快捷鍵Ctrl+回車鍵。這樣,就可以將這句程序執(zhí)行一次。
程序“select -rskin_b.f[0:22983];”執(zhí)行之后,回到場景視圖中。我們可以看到,人頭模型上,所有向各自中心收縮的面將被選擇。也就是說,做完建模中的擠出操作后,可以通過這一句腳本程序選擇擠出前的所有面。這是一種快捷操作。
在Maya綁定模塊下,當人頭模型上擠出前的所有面都被選擇時,執(zhí)行菜單命令“變形->紋理”。我們給所有選中的面添加了一個紋理變形器。該變形器是textureDeformer1。
在場景視圖中,點擊鼠標右鍵,在右鍵菜單中執(zhí)行對象模式。讓人頭模型回到物體編輯模式。
在大綱視圖中,選擇紋理變形器textureDeformer1。
在紋理變形器textureDeformer1的屬性通道欄中,在紋理變形器屬性面板下,將方向設置為法線。這樣,收縮后的每個面沿法線方向凸起,就可以形成針刺狀的空間造型。在紋理上關(guān)聯(lián)2D紋理中的噪波紋理。該噪波紋理是noise1。這樣,就可以用噪波紋理來實現(xiàn)針刺狀空間造型的隨機起伏。
在紋理變形器textureDeformer1的屬性通道欄中,在紋理變形器屬性面板下,將強度設置為12。這樣,針刺狀空間造型的凸起效果會比較明顯。
選擇噪波紋理noise1。在噪波紋理的屬性通道欄中,在效果屬性面板下,勾選反轉(zhuǎn)。讓噪波紋理noise1黑白反轉(zhuǎn),這樣得到的效果會好一些。
在噪波紋理noise1的屬性通道欄中,在噪波屬性面板下,將頻率設置為3。這樣,針刺狀空間造型的凸起效果不會讓人感到過于瑣碎。
在噪波紋理noise1的屬性通道欄中,在噪波屬性面板下,對閾值屬性做關(guān)鍵幀動畫。在第24幀(第1秒),閾值為1。在第48幀(第2秒),閾值為0。在第72幀(第3秒),閾值為1。
在噪波紋理noise1的屬性通道欄中,在噪波屬性面板下,對時間屬性創(chuàng)建表達式。具體操作是,在時間屬性上,點擊鼠標右鍵,在彈出的右鍵菜單中,執(zhí)行創(chuàng)建新表達式。
在打開的表達式編輯器中,寫入如下表達式:noise1.time=time;該表達式所起的作用是,在播放動畫時,讓噪波紋理noise1的時間屬性隨時間的改變而改變。這樣,播放動畫時,噪波紋理將發(fā)生隨機變化,從而針刺狀空間造型在人頭模型的表面上呈現(xiàn)出隨時間變化而隨機凸起回落的動畫效果。
對噪波紋理noise1的時間屬性創(chuàng)建表達式后,我們可以看到,噪波紋理noise1的時間屬性對話框?qū)⒊尸F(xiàn)紫色。也就是說,在Maya下,某一節(jié)點的某一屬性呈現(xiàn)紫色,說明該節(jié)點的該屬性上寫過表達式。
當把上述操作都完成以后,播放動畫,就可以看到我們想要的角色特效動畫效果了。這樣,我們就實現(xiàn)了與電影《X戰(zhàn)警》中的魔形女變形化身效果相似的角色特效,但又與電影中的變形化身效果有所不同。這是我們的原創(chuàng)角色特效動畫效果。以此,向經(jīng)典致敬!