盧景峰
摘要:該文闡述maya角色動畫中IK-FK相互轉(zhuǎn)換的原理,介紹幾種IK-FK無縫切換的幾種思路,重點探討利用三套骨骼配合Maya mel語言實現(xiàn)骨骼IK-FK之間無縫轉(zhuǎn)換的實現(xiàn)方法,希望能給喜歡maya三維角色動畫設(shè)計的朋友有所啟發(fā)和幫助。
關(guān)鍵詞:Maya;角色動畫;IK FK;無縫轉(zhuǎn)換;Mel
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2014)11-2631-03
Abstract:This paper describes a theory of the transformation between Ik and FK in the Maya character animation, introducing seamless switching between IK and FK, which focuses on using the method of three sets of bones together with Maya Mel languages to achieve seamless transition of skeletal between IK and FK. The author hopes to inspire and help those who like three dimensional character animation of Maya design.
Key word: Maya;character animation;IK FK;seamless handover;Mel
隨著計算機技術(shù)的不斷發(fā)展,三維動畫技術(shù)在很多影視,動畫以及廣告中的運用也越來越廣泛。在很多優(yōu)秀的作品當中,我們看到動畫角色的動作真實自然,準確流暢,這和動畫師對角色運動規(guī)律的深度理解和熟練掌握是密不可分的。常言道,預(yù)先善其事,必先利其器,動畫師除了要掌握過硬的理論知識外,還必須要學(xué)會熟練的使用三維動畫制作軟件,才能制作出優(yōu)秀的動畫作品。
1 IK和FK的定義
剛剛接觸三維角色動畫的朋友,往往會遇到一個讓所有動畫師都曾經(jīng)困惑過的問題,在調(diào)節(jié)角色的四肢動畫的時候,往往會出現(xiàn)角色模型產(chǎn)生不可預(yù)期的跳動,和想要的結(jié)果不匹配,這就是IK和FK在切換過程中沒有能夠做到平滑過渡的現(xiàn)象。
IK是inverse kinematics的縮寫,稱之為反向動力學(xué),說得形象一點,IK就像是是別人牽著你的手腕,而自己沒有發(fā)力所做的動作。而FK是 forward kinematics的縮寫,稱之為正向動力學(xué),[1]是有自己發(fā)力去實現(xiàn)的四肢動作,比如正常走路的雙手由肩關(guān)節(jié)發(fā)力做的擺臂動作(如圖1)。兩者是在三維動畫中骨骼關(guān)節(jié)運動的兩種不同的表達方式,也是在調(diào)節(jié)角色四肢動畫時兩種不同的控制系統(tǒng),兩者往往要配合使用才能制作出合理的動畫。比如要做一個人走到桌子前面拿起杯子喝水的動作,就要使用兩種控制方式配合完成才能方便的調(diào)節(jié)出流暢的動畫效果。其中IK 和 FK 轉(zhuǎn)換的問題常常使我們一籌莫展,下面我們就常見的幾種實現(xiàn)IK與FK轉(zhuǎn)換的方法做一下分析:
2 常見的IK與 FK的切換方法
1)利用一套骨架,通過ik手柄的屬性ikblend來直接控制。其優(yōu)點是簡單實用,很容易就上手,出錯的幾率較低。最大的缺點是,在ik-fk互轉(zhuǎn)的時候,骨架會移動,并且動畫修改有些麻煩,因為ik有動畫的時候fk沒有,fk有動畫的時候ik沒有。
2)通過maya自帶的set ikfk key這個命令來實現(xiàn)轉(zhuǎn)換,這個是可以說是方法一的升級版。maya那個命令其實就是同時給ikfk打關(guān)鍵幀,優(yōu)點也是簡單,還有就是無縫,切換的時候,骨架是不會移動的。可惜每次都要點那個命令,沒有直接按s方便。移動關(guān)鍵幀也是有問題的,不能同時移動ikfk的關(guān)鍵幀,這給調(diào)節(jié)動畫造成了很多不必要的麻煩。
3)利用三套骨架,一套是ik控制,一套是fk控制,一套用于蒙皮,然后通過屬性控制決定約束到ik骨架還是fk骨架。這個是相對主流的方法,ik和fk分別控制,所使用到的mel也是比較簡單,比較適合一些初學(xué)者上手。
4)還有一些利用單骨骼加復(fù)雜腳本實現(xiàn)的,因為涉及mel的復(fù)雜編寫,修改起來也比較麻煩,相對適合有深厚的mel基礎(chǔ)以及專業(yè)的動畫團隊使用。
以上就是常用的幾種ikfk切換的方法,各有優(yōu)缺點,下面主要重點探討利用三套骨骼實現(xiàn)ikfk無縫切換的方法。
3 三套骨骼實現(xiàn)ikfk無縫切換的方法
三套骨骼實現(xiàn)無縫切換的原理其實很簡單,是將ik控制骨骼和fk控制骨骼分別用約束命令到綁定骨骼上,然后在通過控制約束接點來控制綁定骨骼是跟隨FK骨骼還是跟隨IK骨骼,最后通過mel來獲取切換前ik控制骨骼或者fk控制骨骼的位置使其中一套骨骼的位置和另一套相匹配,[2]達到無縫跟隨的效果。這個技術(shù)的難點在于如何獲取前一套骨骼的精確坐標,下面就是制作的大致思路:
3)ik與fk的無縫切換設(shè)置
為了更準確的獲取骨骼的坐標位置,需要在IK和FK兩套骨骼里面放置對方的控制器的復(fù)制物體(可以理解為定位器)。[3]例如IK的極坐標約束可以復(fù)制一個放在FK的骨骼里做定位器4 結(jié)束語
雖然現(xiàn)在有很多種實現(xiàn)ikfk無縫轉(zhuǎn)換的方法,mel語言的編寫也不盡相同,但是大致的思路是一致的,就是要實現(xiàn)獲取定位,匹配后再執(zhí)行跟隨,大家可以根據(jù)自己的實際情況來選擇如何更好的實現(xiàn)ik到fk的無縫切換。當然,在本文中有很多裝配的細節(jié)并沒有一一詳細的說明,比如控制器和骨骼連接技巧,驅(qū)動關(guān)鍵幀設(shè)置其顯示與隱藏等等,只是提供了大體上實現(xiàn)的方法,以期對三維設(shè)計愛好者有所啟發(fā),更期待能設(shè)計出更合理有效的方法。
參考文獻:
[1] 劉永剛. fk與ik無縫轉(zhuǎn)換的mel實現(xiàn)[J].影視創(chuàng)作,2010(2).
[2] 蘇華嶺.Mel 在三套骨骼相互轉(zhuǎn)換時的應(yīng)用[EB/OL] .百度文庫.endprint
摘要:該文闡述maya角色動畫中IK-FK相互轉(zhuǎn)換的原理,介紹幾種IK-FK無縫切換的幾種思路,重點探討利用三套骨骼配合Maya mel語言實現(xiàn)骨骼IK-FK之間無縫轉(zhuǎn)換的實現(xiàn)方法,希望能給喜歡maya三維角色動畫設(shè)計的朋友有所啟發(fā)和幫助。
關(guān)鍵詞:Maya;角色動畫;IK FK;無縫轉(zhuǎn)換;Mel
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2014)11-2631-03
Abstract:This paper describes a theory of the transformation between Ik and FK in the Maya character animation, introducing seamless switching between IK and FK, which focuses on using the method of three sets of bones together with Maya Mel languages to achieve seamless transition of skeletal between IK and FK. The author hopes to inspire and help those who like three dimensional character animation of Maya design.
Key word: Maya;character animation;IK FK;seamless handover;Mel
隨著計算機技術(shù)的不斷發(fā)展,三維動畫技術(shù)在很多影視,動畫以及廣告中的運用也越來越廣泛。在很多優(yōu)秀的作品當中,我們看到動畫角色的動作真實自然,準確流暢,這和動畫師對角色運動規(guī)律的深度理解和熟練掌握是密不可分的。常言道,預(yù)先善其事,必先利其器,動畫師除了要掌握過硬的理論知識外,還必須要學(xué)會熟練的使用三維動畫制作軟件,才能制作出優(yōu)秀的動畫作品。
1 IK和FK的定義
剛剛接觸三維角色動畫的朋友,往往會遇到一個讓所有動畫師都曾經(jīng)困惑過的問題,在調(diào)節(jié)角色的四肢動畫的時候,往往會出現(xiàn)角色模型產(chǎn)生不可預(yù)期的跳動,和想要的結(jié)果不匹配,這就是IK和FK在切換過程中沒有能夠做到平滑過渡的現(xiàn)象。
IK是inverse kinematics的縮寫,稱之為反向動力學(xué),說得形象一點,IK就像是是別人牽著你的手腕,而自己沒有發(fā)力所做的動作。而FK是 forward kinematics的縮寫,稱之為正向動力學(xué),[1]是有自己發(fā)力去實現(xiàn)的四肢動作,比如正常走路的雙手由肩關(guān)節(jié)發(fā)力做的擺臂動作(如圖1)。兩者是在三維動畫中骨骼關(guān)節(jié)運動的兩種不同的表達方式,也是在調(diào)節(jié)角色四肢動畫時兩種不同的控制系統(tǒng),兩者往往要配合使用才能制作出合理的動畫。比如要做一個人走到桌子前面拿起杯子喝水的動作,就要使用兩種控制方式配合完成才能方便的調(diào)節(jié)出流暢的動畫效果。其中IK 和 FK 轉(zhuǎn)換的問題常常使我們一籌莫展,下面我們就常見的幾種實現(xiàn)IK與FK轉(zhuǎn)換的方法做一下分析:
2 常見的IK與 FK的切換方法
1)利用一套骨架,通過ik手柄的屬性ikblend來直接控制。其優(yōu)點是簡單實用,很容易就上手,出錯的幾率較低。最大的缺點是,在ik-fk互轉(zhuǎn)的時候,骨架會移動,并且動畫修改有些麻煩,因為ik有動畫的時候fk沒有,fk有動畫的時候ik沒有。
2)通過maya自帶的set ikfk key這個命令來實現(xiàn)轉(zhuǎn)換,這個是可以說是方法一的升級版。maya那個命令其實就是同時給ikfk打關(guān)鍵幀,優(yōu)點也是簡單,還有就是無縫,切換的時候,骨架是不會移動的??上看味家c那個命令,沒有直接按s方便。移動關(guān)鍵幀也是有問題的,不能同時移動ikfk的關(guān)鍵幀,這給調(diào)節(jié)動畫造成了很多不必要的麻煩。
3)利用三套骨架,一套是ik控制,一套是fk控制,一套用于蒙皮,然后通過屬性控制決定約束到ik骨架還是fk骨架。這個是相對主流的方法,ik和fk分別控制,所使用到的mel也是比較簡單,比較適合一些初學(xué)者上手。
4)還有一些利用單骨骼加復(fù)雜腳本實現(xiàn)的,因為涉及mel的復(fù)雜編寫,修改起來也比較麻煩,相對適合有深厚的mel基礎(chǔ)以及專業(yè)的動畫團隊使用。
以上就是常用的幾種ikfk切換的方法,各有優(yōu)缺點,下面主要重點探討利用三套骨骼實現(xiàn)ikfk無縫切換的方法。
3 三套骨骼實現(xiàn)ikfk無縫切換的方法
三套骨骼實現(xiàn)無縫切換的原理其實很簡單,是將ik控制骨骼和fk控制骨骼分別用約束命令到綁定骨骼上,然后在通過控制約束接點來控制綁定骨骼是跟隨FK骨骼還是跟隨IK骨骼,最后通過mel來獲取切換前ik控制骨骼或者fk控制骨骼的位置使其中一套骨骼的位置和另一套相匹配,[2]達到無縫跟隨的效果。這個技術(shù)的難點在于如何獲取前一套骨骼的精確坐標,下面就是制作的大致思路:
3)ik與fk的無縫切換設(shè)置
為了更準確的獲取骨骼的坐標位置,需要在IK和FK兩套骨骼里面放置對方的控制器的復(fù)制物體(可以理解為定位器)。[3]例如IK的極坐標約束可以復(fù)制一個放在FK的骨骼里做定位器4 結(jié)束語
雖然現(xiàn)在有很多種實現(xiàn)ikfk無縫轉(zhuǎn)換的方法,mel語言的編寫也不盡相同,但是大致的思路是一致的,就是要實現(xiàn)獲取定位,匹配后再執(zhí)行跟隨,大家可以根據(jù)自己的實際情況來選擇如何更好的實現(xiàn)ik到fk的無縫切換。當然,在本文中有很多裝配的細節(jié)并沒有一一詳細的說明,比如控制器和骨骼連接技巧,驅(qū)動關(guān)鍵幀設(shè)置其顯示與隱藏等等,只是提供了大體上實現(xiàn)的方法,以期對三維設(shè)計愛好者有所啟發(fā),更期待能設(shè)計出更合理有效的方法。
參考文獻:
[1] 劉永剛. fk與ik無縫轉(zhuǎn)換的mel實現(xiàn)[J].影視創(chuàng)作,2010(2).
[2] 蘇華嶺.Mel 在三套骨骼相互轉(zhuǎn)換時的應(yīng)用[EB/OL] .百度文庫.endprint
摘要:該文闡述maya角色動畫中IK-FK相互轉(zhuǎn)換的原理,介紹幾種IK-FK無縫切換的幾種思路,重點探討利用三套骨骼配合Maya mel語言實現(xiàn)骨骼IK-FK之間無縫轉(zhuǎn)換的實現(xiàn)方法,希望能給喜歡maya三維角色動畫設(shè)計的朋友有所啟發(fā)和幫助。
關(guān)鍵詞:Maya;角色動畫;IK FK;無縫轉(zhuǎn)換;Mel
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2014)11-2631-03
Abstract:This paper describes a theory of the transformation between Ik and FK in the Maya character animation, introducing seamless switching between IK and FK, which focuses on using the method of three sets of bones together with Maya Mel languages to achieve seamless transition of skeletal between IK and FK. The author hopes to inspire and help those who like three dimensional character animation of Maya design.
Key word: Maya;character animation;IK FK;seamless handover;Mel
隨著計算機技術(shù)的不斷發(fā)展,三維動畫技術(shù)在很多影視,動畫以及廣告中的運用也越來越廣泛。在很多優(yōu)秀的作品當中,我們看到動畫角色的動作真實自然,準確流暢,這和動畫師對角色運動規(guī)律的深度理解和熟練掌握是密不可分的。常言道,預(yù)先善其事,必先利其器,動畫師除了要掌握過硬的理論知識外,還必須要學(xué)會熟練的使用三維動畫制作軟件,才能制作出優(yōu)秀的動畫作品。
1 IK和FK的定義
剛剛接觸三維角色動畫的朋友,往往會遇到一個讓所有動畫師都曾經(jīng)困惑過的問題,在調(diào)節(jié)角色的四肢動畫的時候,往往會出現(xiàn)角色模型產(chǎn)生不可預(yù)期的跳動,和想要的結(jié)果不匹配,這就是IK和FK在切換過程中沒有能夠做到平滑過渡的現(xiàn)象。
IK是inverse kinematics的縮寫,稱之為反向動力學(xué),說得形象一點,IK就像是是別人牽著你的手腕,而自己沒有發(fā)力所做的動作。而FK是 forward kinematics的縮寫,稱之為正向動力學(xué),[1]是有自己發(fā)力去實現(xiàn)的四肢動作,比如正常走路的雙手由肩關(guān)節(jié)發(fā)力做的擺臂動作(如圖1)。兩者是在三維動畫中骨骼關(guān)節(jié)運動的兩種不同的表達方式,也是在調(diào)節(jié)角色四肢動畫時兩種不同的控制系統(tǒng),兩者往往要配合使用才能制作出合理的動畫。比如要做一個人走到桌子前面拿起杯子喝水的動作,就要使用兩種控制方式配合完成才能方便的調(diào)節(jié)出流暢的動畫效果。其中IK 和 FK 轉(zhuǎn)換的問題常常使我們一籌莫展,下面我們就常見的幾種實現(xiàn)IK與FK轉(zhuǎn)換的方法做一下分析:
2 常見的IK與 FK的切換方法
1)利用一套骨架,通過ik手柄的屬性ikblend來直接控制。其優(yōu)點是簡單實用,很容易就上手,出錯的幾率較低。最大的缺點是,在ik-fk互轉(zhuǎn)的時候,骨架會移動,并且動畫修改有些麻煩,因為ik有動畫的時候fk沒有,fk有動畫的時候ik沒有。
2)通過maya自帶的set ikfk key這個命令來實現(xiàn)轉(zhuǎn)換,這個是可以說是方法一的升級版。maya那個命令其實就是同時給ikfk打關(guān)鍵幀,優(yōu)點也是簡單,還有就是無縫,切換的時候,骨架是不會移動的??上看味家c那個命令,沒有直接按s方便。移動關(guān)鍵幀也是有問題的,不能同時移動ikfk的關(guān)鍵幀,這給調(diào)節(jié)動畫造成了很多不必要的麻煩。
3)利用三套骨架,一套是ik控制,一套是fk控制,一套用于蒙皮,然后通過屬性控制決定約束到ik骨架還是fk骨架。這個是相對主流的方法,ik和fk分別控制,所使用到的mel也是比較簡單,比較適合一些初學(xué)者上手。
4)還有一些利用單骨骼加復(fù)雜腳本實現(xiàn)的,因為涉及mel的復(fù)雜編寫,修改起來也比較麻煩,相對適合有深厚的mel基礎(chǔ)以及專業(yè)的動畫團隊使用。
以上就是常用的幾種ikfk切換的方法,各有優(yōu)缺點,下面主要重點探討利用三套骨骼實現(xiàn)ikfk無縫切換的方法。
3 三套骨骼實現(xiàn)ikfk無縫切換的方法
三套骨骼實現(xiàn)無縫切換的原理其實很簡單,是將ik控制骨骼和fk控制骨骼分別用約束命令到綁定骨骼上,然后在通過控制約束接點來控制綁定骨骼是跟隨FK骨骼還是跟隨IK骨骼,最后通過mel來獲取切換前ik控制骨骼或者fk控制骨骼的位置使其中一套骨骼的位置和另一套相匹配,[2]達到無縫跟隨的效果。這個技術(shù)的難點在于如何獲取前一套骨骼的精確坐標,下面就是制作的大致思路:
3)ik與fk的無縫切換設(shè)置
為了更準確的獲取骨骼的坐標位置,需要在IK和FK兩套骨骼里面放置對方的控制器的復(fù)制物體(可以理解為定位器)。[3]例如IK的極坐標約束可以復(fù)制一個放在FK的骨骼里做定位器4 結(jié)束語
雖然現(xiàn)在有很多種實現(xiàn)ikfk無縫轉(zhuǎn)換的方法,mel語言的編寫也不盡相同,但是大致的思路是一致的,就是要實現(xiàn)獲取定位,匹配后再執(zhí)行跟隨,大家可以根據(jù)自己的實際情況來選擇如何更好的實現(xiàn)ik到fk的無縫切換。當然,在本文中有很多裝配的細節(jié)并沒有一一詳細的說明,比如控制器和骨骼連接技巧,驅(qū)動關(guān)鍵幀設(shè)置其顯示與隱藏等等,只是提供了大體上實現(xiàn)的方法,以期對三維設(shè)計愛好者有所啟發(fā),更期待能設(shè)計出更合理有效的方法。
參考文獻:
[1] 劉永剛. fk與ik無縫轉(zhuǎn)換的mel實現(xiàn)[J].影視創(chuàng)作,2010(2).
[2] 蘇華嶺.Mel 在三套骨骼相互轉(zhuǎn)換時的應(yīng)用[EB/OL] .百度文庫.endprint