search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

【Maya Rigging】有關製作連動FK方法





 這是一個跟『個別joint依靠節點串接成FK』有關的方法,用說的有點複雜所以就有了這篇筆記。


總之,最終效果會是這樣,正中央的三個控制器因為有了geoAttach,所以跟著身體移動,而且雖然他們是三個獨立的控制器,彼此沒有層級關係,但是透過節點可以讓他們產生FK的效果!

這就是本篇筆記要記錄的!!





那麼首先,想要達成這樣的效果,必須先看過底下這篇geoAttach的教學:

Advanced Skeleton GeoAttach的用法。

-----------------------------------------------------------------------------------------------------------------------------



首先,在我們指定GeoAttach時,需要注意一點就是,要skin的模型不可以跟geoAttach模形同一個,不然控制器會亂飛!

如下圖,我把GeoAttach加在身體上,但是skin則是給在衣服上,這兩者千萬不可搞混!

而且控制器必須各自分開,不能使用FK階層,否則一樣會爆掉!




接下來,我們要再複製那三個控制器出來,姑且稱它們為DrvCtrl,讓等等會用它們的節點串接回去!

這幾個控制器的階層最好有3個以上,這樣比較方便節點串接。





第一層串接


先把原控制器(姑且稱為AnimCtrl)connect到DrvCtrl上,最底下的DrvCtrl-C不用是因為,這個方法下我們不用管到最後一個!

這個步驟是為了記錄AnimCtrl的數值變化,也就是說我們只需要控制器本身的數值紀錄,並不需要它們從上層constraint繼承過來的數值!





第二層串接


第二層串接使用的是parent constraint,這一個步驟是為了將剛剛connect的數值往下傳遞,所以我們將DrvCtrl-A constraint到DrvCtrl-B的上一層group上,然後再將DrvCtrl-B constraint到DrvCtrl-C的上一層group上!


這個步驟完成之後,只要我們移動AnimCtrl-A,數值就會藉由connect傳遞到Drv-A然後再藉著constraint傳遞到DrvCtrl-B上面,依此類推直到DrvCtrl-C上!






第三層串接


來到最後一個步驟,這裡我們要將DrvCtrl-B group connect到 AnimCtrl-B的上一層group上,同樣地我們也要將DrvCtrl-C group connect到 AnimCtrl-C的上一層group上,這是一個逆向工程,也有點燒腦,但是其實原理很簡單!

在第二層串接,我們使用constraint將上層的數值往下傳遞,然後,再將設些數值經由connect回到AnimCtrl上,也就是說整個邏輯是:


AnimCtrl-A ----connect------> DrvCtrl-A-------constraint------> DrvCtrl-B group-----connect------> AnimCtrl-B group

最後就完成了整個FK結構!





如果覺得這篇文章有幫助你在動畫之路走得更長遠,可以使用 Google 或 Facebook 帳號快速登入,按Like五下,就可以幫助我從Likecoin得到回饋,完全不用任何費用! 一點點的鼓勵都會成為我寫作的動力,感激不盡!



 







熱門推薦

本文由 skywalkerxbxblogspotcom 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦