大家好,在今天,游戲基本上已經成為很多人生活的一部分。手機游戲、網頁游戲、網絡游戲、單機游戲、主機游戲等等,總有一類你接觸過或者熟識的。也有很多人對游戲的制作充滿興趣,希望了解制作過程,制作細節,甚至想要投身這個行業。其實在網絡上,我們就可以找到很多關于游戲制作的共享資料。但是有一點,真正從事過這個行業的人才會有體會,實際項目中遇到的問題或案例,在網絡上通用的教程里幾乎找不到答案,需要制作人員自己去想辦法,才能找到解決方案。
今天我要和大家分享的,就是3D游戲制作中,角色綁定的一個小案例:鎖鏈的綁定。
說起游戲角色身上的鎖鏈我們可能最容易想到的就是《戰神》。主角的標志性武器——鏈刃,相信給玩家的印象絕對不會淡漠。上幾張圖片給大家小過一下眼癮: ![]() 圖01 ![]() 圖02 關于鏈刃的綁定,相信大家還是充滿興趣的,但在介紹之前,我們還是先說一下基礎的鎖鏈綁定。 記得第一次做鐵鏈的綁定和動畫的時候,我一頭霧水,完全不知如何下手。如果是在影視制作中,鎖鏈的動態效果一般是特效的同事解算的,但在游戲制作中,為了在引擎里實現,很多時候原本解算的東西不得不由動畫師手key完成。于是我做了一點準備工作:一個人跑到公園,帶上手機,打開攝像,找個有鏈子圍著的花壇,踹一腳鏈子,在趕緊退后幾步,用手機拍下鏈子搖晃的動態效果。拍了幾段之后,實在受不了別人異樣的眼光,匆匆收攤回家去了。回家之后一遍一遍的看剛才拍的視頻,尋找鏈子的運動規律。 一點小插曲,言歸正傳,我們繼續說鏈子的綁定。回到我們的工具——3DsMax中。一般的思路上,我們做鏈狀的東西,第一個想到的是線性IK。 ![]() 圖03 ![]() 圖04 關于線性IK的基礎知識,在本文中我們不做細說,欠缺的朋友可以找一些相關的資料看看,或者實際操作試一下就可以。我想著重強調的一點是,關于線性IK制作時生成的Dummy。線性IK制作生成的Dummy在初始狀態是有層級關系的,它的層級關系和骨骼鏈的層級關系方向是相同的。我做了一個簡單的圖示,幫助大家理解這個問題: ![]() 圖05
生成的Dummy的這個特點在我們后面的動畫制作中有的時候反而引起不便,因為我們知道,Dummy的動畫是影響骨骼鏈的,很多時候我們希望各個Dummy之間相互不受影響,而這種層級關系無疑是個障礙。不過沒關系,這種初始狀態是可以更改的,我們只要根據需要打斷連接就可以。
關于線性IK我們還有另一點需要注意一下,我們先看一下圖06。
![]() 圖06
線性IK有一個特點,當影響骨骼鏈的曲線長度因為Dummy的移動而大于骨骼鏈的長度時,Dummy的實際位置就不能準確控制骨骼的位置,通俗的講,就是Dummy拉遠了,骨骼就夠不到了。但是這種情況只發生在線性IK的末端,首端是不存在這個問題的。
關于基礎的鎖鏈綁定,我想要提的就是上面這兩點,后面要講的鏈刃綁定中,這兩點我們也要注意。
接下來,就讓我們正式開始我們的“鏈刃之旅”吧!我在摸索鏈刃的綁定方法過程中走了很多彎路,也嘗試了很多方法,但在接下來的講解中,我還是直接按順序講解制作的方法,而不去贅述探索過程了。那么如果有的地方不明白為什么要這樣做,讀者可以按照自己的辦法試一下就會明白,或者你也有可能發現新的方法!
第一步,模型的準備。
模型的工作不是動畫師的職責范圍,但有一些規范性的東西我要提一下,如圖07-08: ![]() 圖07 ![]() 圖08
當角色主體綁定完成之后,將刀的模型直接移動到手掌位置,并且轉好角度,保證手指頭彎曲,手正好是握在刀柄合適的位置。鏈條從刀尾部延伸出來。注意,如圖07,鏈條的長度要比你想要的攻擊距離還要略長一些,并保證是一條筆直的線,這樣方便后續的骨骼搭建。這里留一個小問題,讀者可以想一下,為什么要把鏈子放在角色后面而不是我們習慣性的前面。
第二步,搭建骨骼鏈。
如圖09,搭建骨骼的時候可以打開網格顯示,并打開吸附,吸附網格點創建骨骼,這樣生成的骨骼鏈就會均勻筆直,搭建后之后再挪動到鏈條的模型上就行了。記得骨骼鏈的長度最好比鏈條的模型略長一點。 ![]() 圖09
第三步,創建曲線。
創建曲線和創建骨骼鏈一樣,也可以吸附網格創建,或者吸附骨骼的端點也可以,最后再挪到鏈條模型上。但是有一點要注意,創建曲線時,要選擇三次曲線,并且你每點下的一個點,將來都會生成線性IK的一個小Dummy,所以創建曲線時,控制點的間距要選好。我在多次試驗之后,選擇了每兩節骨骼點一個控制點。還有一點,就是曲線的長度也要比骨骼鏈略長一點。創建好的效果如圖10。 ![]() 圖10
第四步,創建線性IK。
有了前面的準備工作,這一步并沒有什么特別的,使用命令創建線性IK就可以。效果如圖11。 ![]() 圖11 第五步,添加控制Dummy。 這一步大家可能覺得有點多余,但做完了,到用來做動畫的時候,你就知道為什么要這么做。因為我們必須預留幾個Dummy給鏈刃將來做飛出去的動畫用,所以有幾個Dummy是不能纏在胳膊上的,我這邊預留了五個。那么我要做的事,就是給這五個預留的Dummy添加控制Dummy。步驟如下: 先建五個大小依次不等的控制Dummy,并分別與鏈條上將要預留的五個Dummy使用對齊工具將旋轉和位移對齊。效果如圖12。 ![]() 圖12 然后將鏈條上的Dummy用鏈接工具鏈給對應的控制Dummy。最后將五個控制Dummy的位置全部對齊到第一個控制Dummy上。效果如圖13。 ![]() 圖13 這個時候,讀者可以回過頭去看看剛才鏈條末端長出來的曲線和Dummy現在還長么? 第六步,鎖鏈纏繞。 這一步是整個制作過程中最繁瑣的一步,但是為了最終效果,麻煩一點也是值得的。在纏繞之前,我要提醒一點,不要從第六個Dummy就開始往胳膊上纏,稍微留一點自然的過渡形態,這樣會好看很多。效果如圖14。 ![]() 圖14 最終效果如圖15-17。 ![]() 圖15 ![]() 圖16 ![]() 圖17
接下來做個動作測試一下吧!
![]() 圖18 到這里,鏈刃的綁定就完成了。因為是直接將我嘗試的最終方案分享給大家的,那么對于大家來說,可能就會缺少中間自己摸索的過程,或者少走了很多彎路,同時也就會很難體會到我在制作步驟中的一些細節的用意。所以我還是很希望讀者可以自己嘗試不一樣的方法方案,或者會找到更好更便捷的方法。 |
主頁 > 學習生活 > 技術交流 >
游戲角色綁定進階之鎖鏈的綁定--剖析3D:戰神
時間:2014-01-17 09:52來源:未知 作者:admin 點擊:
次
------分隔線----------------------------
- 上一篇:高級汽車制作教程――材質渲染部分
- 下一篇:項目男主角燕尾服的綁定設置