MAX表達(dá)式教學(xué)終極教程_第1頁
MAX表達(dá)式教學(xué)終極教程_第2頁
MAX表達(dá)式教學(xué)終極教程_第3頁
MAX表達(dá)式教學(xué)終極教程_第4頁
MAX表達(dá)式教學(xué)終極教程_第5頁
已閱讀5頁,還剩26頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、max表達(dá)式表達(dá)式是max中功能強(qiáng)大的動畫制作手段,它能夠使動畫的控制更準(zhǔn)確、更簡潔,使復(fù)雜的設(shè)置自動完成。表達(dá)式提供了一種通過數(shù)學(xué)方式創(chuàng)建動畫的途徑,你可以將有動畫關(guān)聯(lián)的參數(shù)以數(shù)學(xué)公式的方式進(jìn)行設(shè)置,只要改變相關(guān)參數(shù),其它關(guān)聯(lián)參數(shù)會自動發(fā)生變化。而且一些用關(guān)鍵幀制作起來非常困難甚至不能達(dá)到的效果用表達(dá)式可以一步就搞定。例如汽車行駛時車輪的相應(yīng)轉(zhuǎn)動,尤其是汽車發(fā)生變速運(yùn)動的時候,通過手動設(shè)置關(guān)鍵幀很難達(dá)到車的位移和車輪轉(zhuǎn)速達(dá)到完美的匹配,這時表達(dá)式就顯示出它強(qiáng)大的威力了。表達(dá)式雖然是max中比較高級的內(nèi)容,但是并不是深不可測,大家感覺它很晦澀是因?yàn)樗婕暗綌?shù)學(xué)的一些公式,但是這些公式經(jīng)過簡單的

2、分析之后你會感覺并不難!下面就讓我們一起分享它的一些應(yīng)用實(shí)例吧!希望大家在學(xué)完本章之后能夠輕松自如運(yùn)用max表達(dá)式來實(shí)現(xiàn)一些以往難以實(shí)現(xiàn)的效果。max表達(dá)式入門篇:工地上的大家伙(1)、啟動max,執(zhí)行fileopen,打開配套光盤中提供的chap6.1.max文件,場景中有一個推土機(jī)模型,已經(jīng)制作完成了簡單的挖土和行進(jìn)動畫。而且四個車輪已經(jīng)用父子連接工具連接到車體上,只是還沒有設(shè)置轉(zhuǎn)動。(見圖6.1.1)注意:在max6視圖中如果用“smooth+highlight”(光滑+高光)顯示方式的話,大家可能會發(fā)現(xiàn)視圖中推土機(jī)模型有破面的情況出現(xiàn)。這應(yīng)該是和max6.0對顯示卡的較高要求有關(guān)系,應(yīng)

3、該是將max的視圖加速方式設(shè)置為opengl就可以了。希望大家經(jīng)濟(jì)條件允許的情況下能改善一下自己的顯示卡。圖6.1.1(2)、進(jìn)入材質(zhì)編輯器,可以看到有一個名稱為“車輪”的材質(zhì)球,它是一個多重次物體材質(zhì),大家可以進(jìn)入貼圖的子層級來觀看材質(zhì)更詳細(xì)的設(shè)置。這個材質(zhì)已經(jīng)指定給了場景中的四個車輪物體,而且每個車輪物體都被賦予了一個uvw map貼圖修改器,貼圖方式為cylinder(圓柱)。給車輪包含文字效果的貼圖是為了后面能夠更清楚地觀察車輪轉(zhuǎn)動的效果。圖6.1.2(3)、右鍵點(diǎn)擊任意一個車輪,點(diǎn)選彈出的wire parameters(關(guān)聯(lián)參數(shù))項(xiàng)目,在彈出的另一個菜單中將鼠標(biāo)依次沿transfor

4、m(位移)rotation(旋轉(zhuǎn))y rotation(y軸旋轉(zhuǎn))順序移動。(見圖6.1.3)注意:正規(guī)指定表達(dá)式的方法應(yīng)該是配套光盤中提供的視頻教學(xué)中的方法,而max到了4.0版后新增了這個wire parameters關(guān)聯(lián)快捷控制,好處是非常方便,簡單的關(guān)聯(lián)操作完全可以通過它來完成。但是如果要求的效果比較復(fù)雜,需要多個參數(shù)之間的相互關(guān)聯(lián),還應(yīng)該在track view中建立變量和表達(dá)式。圖6.1.3(4)、最后按下yrotation后,出現(xiàn)一條虛線,將鼠標(biāo)放在車體上釋放,在彈出的菜單中將鼠標(biāo)依次沿transform(位移)position(移動)x potation(x軸移動)順序移動。(見

5、圖6.1.4)圖6.1.4(5)、在彈出的parameter wiring對話框中左前輪的y軸旋轉(zhuǎn)和車體的x軸位移兩個參數(shù)以黃色顯示,現(xiàn)在就可以在底部的表達(dá)式編寫區(qū)用表達(dá)式將兩個參數(shù)建立聯(lián)系了。(見圖6.1.5)圖6.1.5注意:表達(dá)式編寫的時候應(yīng)該注意在一側(cè)編寫,而另一側(cè)保持參數(shù)不變,這樣的話就可以將一側(cè)的參數(shù)配合數(shù)學(xué)公式表示出另一側(cè)的參數(shù)了。 一般都是用主動量配合公式來表示被動量:例如本例中我們想移動車體的時候輪子自動旋轉(zhuǎn),車體是主動量,而車輪是被動量。而分清主動量和被動量是表達(dá)式編寫能否正確的一個關(guān)鍵因素。(6)、現(xiàn)在就可以分析如何來書寫表達(dá)式了,我們想使車體的位移和輪子旋轉(zhuǎn)建立一定的數(shù)

6、學(xué)關(guān)系,設(shè)車體的位移為x,輪子旋轉(zhuǎn)度數(shù)為y,輪子的周長為c,輪子的半徑為r,則x和y的關(guān)系推算過程如圖。(見圖6.1.6)圖6.1.6注意:max中書寫表達(dá)式有一定的要求,其中涉及到本例的就是弧度和角度的換算問題,因?yàn)閙ax表達(dá)式中不允許出現(xiàn)角度,所以只能將360度換算成弧度才能得到正確的結(jié)果,這就要求大家對一些常用的數(shù)學(xué)換算有一定的了解。當(dāng)然還有更多的注意事項(xiàng),我們在后面的例子中就會涉及到。 點(diǎn)選視圖中的左前輪。進(jìn)入utility(工具)面板,按下measure(測量)按鈕。在下方的dimension項(xiàng)目的顯示信息中可以看到:x:1909.831,說明輪子在x軸上占1909.831個單位。但

7、是這個數(shù)值是輪子的直徑,而表達(dá)式中需要的是輪子的半徑,所以要將此值除以2,這樣就得到了分析過程中的955這個值。(7)、在parameter wiring(參數(shù)連接)窗口中左下側(cè)的表達(dá)式編寫框中默認(rèn)“x positon”項(xiàng)目不變,在其后輸入“/955”,然后按下面板中心的第二個按鈕,表示用車體是主動量,以驅(qū)動輪子,然后點(diǎn)擊下方的connect(連接)按鈕,完成表達(dá)式的設(shè)置,最后關(guān)閉該窗口。(見圖6.1.7)圖6.1.7(8)、撥動時間滑塊,發(fā)現(xiàn)左前輪轉(zhuǎn)的圈數(shù)與車的移動完全吻合,但是旋轉(zhuǎn)的方向卻反了,但是此時parameter wiring(參數(shù)連接)窗口已經(jīng)被關(guān)閉了,怎么才能再找到它呢?我們點(diǎn)

8、選視圖中的左前輪,進(jìn)入運(yùn)動面板中,鼠標(biāo)右鍵點(diǎn)擊列表窗口中的rotation euler xyz項(xiàng)目下的y rotation:float wire,在彈出的選項(xiàng)中點(diǎn)擊properties(屬性),則parameter wiring窗口出現(xiàn)在視圖中,我們在左下方的表達(dá)式前加上一個負(fù)號,然后按下面板中間的update(更新)按鈕,不要關(guān)閉該窗口。(見圖6.1.8)圖6.1.8(9)、此時再撥動時間滑塊,左前輪的旋轉(zhuǎn)正常了。但是其它三個輪子必須再重復(fù)以上步驟來分別與車體建立表達(dá)式聯(lián)系嗎?那樣的話就太麻煩了,當(dāng)然有簡單的方法。仍然在parameter wiring窗口中,按下左上方的(顯示所有軌道)按鈕

9、,在列表中點(diǎn)選“右前輪”項(xiàng)目前的“+”號,以展開其下的分支。然后再展開“rotation euler xyz”項(xiàng)目前的“+”號,點(diǎn)選y rotation:bezier float項(xiàng)目,按照前面第7步的方法書寫表達(dá)式(別忘了在表達(dá)式前加負(fù)號),最后關(guān)閉該窗口。(見圖6.1.9)圖6.1.9(10)、依照第9步的方法完成兩外兩個車輪的表達(dá)式設(shè)置。全部完成后撥動時間滑塊可以看到所有輪子的運(yùn)動都正常了。尤其車體變速運(yùn)動的時候,輪子隨車體的加速而加速旋轉(zhuǎn),而當(dāng)車體減速靜止時,輪子也越轉(zhuǎn)越慢直到靜止。(見圖6.1.10)圖6.1.10 至此,本例制作完畢,通過這個例子我們可以知道,其實(shí)通過數(shù)學(xué)分析,在ma

10、x中運(yùn)用表達(dá)式并不是非常難的一件事,但是必須要有一些數(shù)學(xué)的基礎(chǔ)做為保障,希望大家在空閑時間能再撿一撿被遺忘了多年的數(shù)學(xué)知識,對于大家以后深入學(xué)習(xí)max絕對有好處。 當(dāng)然,這個例子主要是為了讓大家熟悉max自身的表達(dá)式,至于效果大家可以一通百通。如果真的是模擬車輛行駛的效果,好的插件有以下幾個:最好的應(yīng)該是reel motion這個插件了,它甚至可以自己駕駛轎車、摩托車、戰(zhàn)斗機(jī)、直升機(jī),所有表盤就在眼前,加速、停車、轉(zhuǎn)彎、翻車等效果非常真實(shí),但是現(xiàn)在只有for max4和5兩個版本,6還沒見到。新近推出的vehicle simulator也不錯,它的好處是直接內(nèi)置到max中, 而且可以真實(shí)地表現(xiàn)

11、出車輛碰撞后出現(xiàn)的凹痕效果。其它的性能不及reel motion,而且還必須要經(jīng)過系統(tǒng)計(jì)算。而從max4.2后就并入max的reactor也能夠模擬車輛的運(yùn)動,但是缺點(diǎn)也是很明顯的,就是不能精確地控制車輛的運(yùn)動,只能簡單地模擬車輛加速的效果,轉(zhuǎn)彎也不能自由控制。但是它也有自己的優(yōu)點(diǎn):就是可以與其它的動力學(xué)控制器完美結(jié)合。所以我們說表達(dá)式可以模擬很多高級動畫的效果,雖然我們現(xiàn)在有一大堆插件可以使用,但是對軟件基礎(chǔ)知識的學(xué)習(xí)還是非常重要的,因?yàn)槿绻阆胱龅倪@些效果沒有插件支持怎么辦?插件只是對軟件的一個補(bǔ)充,大家千萬不要對插件過分依賴,但是一旦你真正運(yùn)用好了插件,它會使你手中的max由鳥槍轉(zhuǎn)變?yōu)榇?/p>

12、炮,大家一定要牢記,max配全了它的插件功能不會比maya差多少,而且在很多方面還會比maya強(qiáng)的多。max表達(dá)式提高篇:雜技表演-獨(dú)輪車(1)、啟動max,執(zhí)行fileopen,打開配套光盤中提供的chap6.2.max文件,場景中有一個獨(dú)輪車模型和一個地面物體。(見圖6.2.1)圖6.2.1(2)、由于整個車輪和腳蹬子是一個物體,所以進(jìn)入修改面板,打開其faces面子級別,然后框選其中一個腳蹬子,按下detach按鈕將其分離出來,并命名為“腳蹬子1”。同樣的方法將另外一只腳蹬子也分離出來, 并命名為“腳蹬子2”。(見圖6.2.2)圖6.2.2(3)、選擇其中一個腳蹬子,進(jìn)入層級設(shè)置面板,在

13、pivot(軸心點(diǎn))子項(xiàng)目下,按下affect pivot only(僅影響軸心點(diǎn))按鈕,則視圖中出現(xiàn)粗的箭頭,顯示物體軸心點(diǎn)的空間位置,然后再按下center to object(對齊物體中心),將其軸心點(diǎn)對齊到物體的幾何中心上。對另一個腳蹬子進(jìn)行同樣操作。(見圖6.2.3)圖6.2.3(4)、針對兩個腳蹬子執(zhí)行如下操作:保持在層級面板中,按下link info子項(xiàng)目按鈕,在面板下方的inherit(繼承)卷展欄下,取消rotate(旋轉(zhuǎn))項(xiàng)目下x軸前方的勾選。回到場景中用父子連接工具將兩個腳蹬子物體連接到車輪上,然后用旋轉(zhuǎn)工具旋轉(zhuǎn)車輪,發(fā)現(xiàn)腳蹬子雖然隨著車輪在運(yùn)動,但是并沒有在自身的軸向上

14、發(fā)生旋轉(zhuǎn),剛好符合日常規(guī)律。(見圖6.24)注意:因?yàn)槿嗽谡麄€蹬車過程中兩只腳始終是與地面保持水平的。所以腳蹬子也始終保持水平。圖6.2.4(5)、用line工具在頂視圖中任意畫一條曲線,在左視圖中將其移動到地面的位置。然后按下helpers(輔助物體)按鈕,點(diǎn)擊其下的dummy(虛擬體)按鈕,在頂視圖任意位置創(chuàng)建一個虛擬體。(見圖6.2.5)圖6.2.5(6)、在視圖中點(diǎn)選虛擬體,進(jìn)入運(yùn)動命令面板,點(diǎn)選列表中的position:position xyz項(xiàng)目,按下(指定控制器)按鈕,在彈出的指定控制器對話框中點(diǎn)選path constraint(路徑約束)項(xiàng)目,為虛擬體指定一個路徑約束控制器,再

15、按下ok關(guān)閉對話框。(見圖6.2.6)圖6.2.6(7)、點(diǎn)擊播放區(qū)內(nèi)的(時間設(shè)置)按鈕,將彈出的面板中end time(結(jié)束時間)設(shè)置為150,則整個動畫長度為150幀。保持在運(yùn)動面板中,按下add path(加入路徑)按鈕,在頂視圖中點(diǎn)擊曲線物體,發(fā)現(xiàn)虛擬體已經(jīng)自動位于曲線物體的起點(diǎn)處,并且在時間欄上的第0幀和第150幀分別出現(xiàn)了兩個關(guān)鍵幀。按下follow(跟隨)按鈕,頂視圖中虛擬體自身角度發(fā)生了變化以適應(yīng)曲線的曲率,最后按下 constant velocity(勻速)按鈕,使虛擬體在整個運(yùn)動過程中保持勻速。(見圖6.2.7)圖6.2.7(8)、在車輪處建立三個相同的cylinder(圓

16、柱體),旋轉(zhuǎn)各自的角度,使它們看起來像車圈的輻條,并將它們用工具欄上的按鈕連接到車輪上。然后將時間滑塊撥到第0幀,選中車輪和車叉物體,按下工具欄上的按鈕,在視圖中點(diǎn)擊虛擬體,在彈出的對齊對話框中勾選x和y。此時整個車體已經(jīng)和虛擬體的位置上完全對應(yīng)了,別忘了用旋轉(zhuǎn)工具在頂視圖中旋轉(zhuǎn)車體以使角度也與虛擬體一致。最后按下工具欄中的按鈕將車體連接到虛擬體上,撥動時間滑塊,獨(dú)輪車已經(jīng)沿著曲線物體勻速運(yùn)動了。(見圖6.2.8)注意:建立輻條物體主要是為了便于觀察車輪旋轉(zhuǎn)的速度;在前面第3步車蹬子已經(jīng)和車輪建立父子關(guān)系,所以在移動和旋轉(zhuǎn)車輪的時候,兩個腳蹬子物體同時跟著運(yùn)動;車叉物體即車輪上方其它部件的總稱

17、。圖6.2.8(9)、右鍵點(diǎn)擊車輪物體,點(diǎn)選彈出的wire parameters(關(guān)聯(lián)參數(shù))項(xiàng)目,在彈出的另一個菜單中將鼠標(biāo)依次沿transform(位移)rotation(旋轉(zhuǎn))xrotation(x軸旋轉(zhuǎn))順序移動。(見圖6.2.9)圖6.2.9(10)、最后按下xrotation后,出現(xiàn)一條虛線,將鼠標(biāo)放在車體上釋放,在彈出的菜單中將鼠標(biāo)依次沿transform(位移)position(移動)percent(百分比)順序移動。(見圖6.2.10)圖6.2.10(percent*728.077)/37(11)、在彈出的parameter wiring對話框中charmfercyl01的y軸

18、旋轉(zhuǎn)和charmferbox01的x軸位移兩個參數(shù)以黃色顯示,現(xiàn)在就可以在底部的表達(dá)式編寫區(qū)用表達(dá)式將兩個參數(shù)建立聯(lián)系了。(見圖6.2.11)圖6.2.11(12)、現(xiàn)在就可以分析如何來書寫表達(dá)式了,我們想使車體位移百分比和車輪旋轉(zhuǎn)的角度建立一定的數(shù)學(xué)關(guān)系,設(shè)車體的位移為w;輪子x軸旋轉(zhuǎn)為x;輪子的周長為c;輪子的半徑為r;曲線長度為l;車體位移百分比為p,則p和y的關(guān)系推算過程如圖。(見圖6.2.12)圖6.2.12(13)、在parameter wiring(參數(shù)連接)窗口中左下側(cè)的表達(dá)式編寫框中默認(rèn)“x rotaton”項(xiàng)目不動,在其后輸入“*18.2”,然后按下面板中心的第二個按鈕,表

19、示用虛擬體代表的車體是主動量,以驅(qū)動車輪,然后點(diǎn)擊下方的connect(連接)按鈕,完成表達(dá)式的設(shè)置,最后關(guān)閉該窗口。(見圖6.2.13)圖6.2.13(14)、將時間滑塊撥動到第78幀,此時前視圖中車體側(cè)面與視圖平面大致平行。然后進(jìn)入創(chuàng)建命令面板,點(diǎn)擊最右側(cè)的systems(系統(tǒng))按鈕,按下bones(骨骼)按鈕,在前視圖中依次點(diǎn)擊鼠標(biāo)拖拽出腿部骨骼的大致形狀,共5節(jié)骨骼,然后將它們?nèi)窟x中,在頂視圖中用旋轉(zhuǎn)按鈕調(diào)節(jié)整體角度,直到與車體平行,再按下工具欄上的移動按鈕,直至腳掌骨骼完全踩在相對應(yīng)的腳蹬子上。(見圖6.2.14)圖6.2.14(15)、點(diǎn)選第一根骨骼bones01,執(zhí)行anima

20、tion(動畫)ik solvers(反向動力學(xué)求解)hi solver(歷史獨(dú)立求解),這時視圖中出現(xiàn)一根虛線,按住鼠標(biāo)將虛線引至第三根骨骼上(即bones03),直到出現(xiàn)bones03提示字樣后松開鼠標(biāo),視圖中出現(xiàn)一根ik鏈,試著移動ik鏈,看到骨骼以反向動力學(xué)方式運(yùn)動。(見圖6.2.15)圖6.2.15(16)、同樣方法再創(chuàng)建兩根ik鏈,分別由第三根骨骼引向第四根骨骼;第四根骨骼引向第五根骨骼。這時視圖中出現(xiàn)了三根骨骼鏈。配合鍵盤上的ctrl鍵將這三個骨骼鏈全部選中,用移動工具測試效果,發(fā)現(xiàn)腳掌在整個運(yùn)動過程中始終保持與地面水平,是由于另外兩根骨骼鏈的固定起了作用。這樣才符合人在騎車時腳

21、掌的真實(shí)狀態(tài)。(見圖6.2.16)圖6.2.16(17)、保持三根骨骼鏈處于被選擇狀態(tài),進(jìn)入層級設(shè)置面板。在pivot(軸心)子項(xiàng)目下,按下affect pivot only(僅影響軸心點(diǎn))按鈕,則視圖中出現(xiàn)粗的箭頭,顯示物體軸心點(diǎn)的空間位置,然后再按下center to world(對齊到世界坐標(biāo)系),將它們的坐標(biāo)軸與世界坐標(biāo)系的方向完全對應(yīng)。這是為了將來做動畫的時候彼此達(dá)到統(tǒng)一。(見圖6.2.17)圖6.2.17(18)、將三個ik鏈全部選擇,然后用工具欄上的父子連接工具將它們連接到對應(yīng)一側(cè)的腳蹬子物體上,在78幀附近緩慢撥動時間滑塊發(fā)現(xiàn),在車體行進(jìn)過程中,腳掌始終踩在腳蹬子上。(見圖6.

22、2.18)圖6.2.18(19)、但是腿根部的骨骼并沒有隨著車體進(jìn)行運(yùn)動。我們來修正它。調(diào)整透視圖角度,直到車體正前方對著視圖。然后選擇腿根部的骨骼(即bones01),用父子連接工具將其連接到dummy01虛擬體上,視圖中顯示大腿骨發(fā)生了角度偏移。選擇ik chain01(即第一根骨骼鏈),進(jìn)入運(yùn)動面板,調(diào)節(jié)swivel angle(旋轉(zhuǎn)角度)項(xiàng),直到在視圖中大腿的根部骨骼方向正常。(見圖6.2.19)圖6.2.19(20)、按下工具欄中的(按名稱選擇)按鈕,在彈出的面板中配合ctrl鍵選擇bones01-bones05和ik chain01- ik chain03共8個物體,按下selec

23、t按鈕。在頂視圖中配合shift鍵用工具拖拽出另外一套骨骼和ik鏈,在彈出的復(fù)制對話框中選擇copy方式,按下ok確定。(見圖6.2.20)圖6.2.20(21)、選擇新復(fù)制的3根ik鏈(即ik chain04- ik chain06),參照頂視圖將腳掌移動到對應(yīng)一側(cè)的腳蹬子物體上,再配合透視圖做細(xì)微的調(diào)節(jié),直到位置滿意為止。然后用父子連接工具將3根ik鏈連接到下方的腳蹬子上。(見圖6.2.21)圖6.2.21(22)、進(jìn)入顯示面板,在hide by category(按類別隱藏)卷展欄下勾選shapes和helpers兩項(xiàng),再右鍵點(diǎn)擊地面物體,選擇hide selection(隱藏所選擇),

24、則視圖中非常干凈,這樣便于觀察腳掌是否在車體運(yùn)動過程中都踩在腳蹬子上。撥動時間滑塊,觀察效果。下圖是動畫過程中的一些截圖。(見圖6.2.22)圖6.2.22(23)、選擇dummy01虛擬體,按下(自動記錄關(guān)鍵幀)按鈕,點(diǎn)擊工具欄中(曲線編輯器)按鈕,在彈出的曲線編輯器面板中找到dummy01物體的percent(百分比)項(xiàng)目,按下按鈕,撥動時間滑塊分別在第30、50、80、100、120幀進(jìn)行加點(diǎn)操作,每個點(diǎn)對應(yīng)的數(shù)值參考下圖中虛線所指的數(shù)字。(見圖6.2.23)圖6.2.23至此,本例制作完畢,其中涉及了表達(dá)式的應(yīng)用和max自帶的bones骨骼的高級應(yīng)用,希望大家在學(xué)習(xí)完本節(jié)后能做出來更精

25、彩的表達(dá)式和骨骼結(jié)合的動畫實(shí)例。在下一節(jié)中我們將學(xué)習(xí)一只臭蟲的爬行動畫,其中僅用了25幀就表現(xiàn)出了多足昆蟲在任意長時間段內(nèi)無縫連接的爬行效果。當(dāng)然表達(dá)式在其中的作用仍然是舉足輕重的。好!大家喝杯茶休息一下,我們馬上就能看到那只惡心的臭蟲了。嘻嘻,晚上飯吃不進(jìn)去別找我呀!max表達(dá)式終結(jié)篇:臭蟲爬行(1)、啟動max,執(zhí)行fileopen,打開配套光盤中提供的chap6.3.max文件,場景中有一個臭蟲模型,身體和六只腳并沒有已經(jīng)attach成一個物體,便于后期的蒙皮和動作調(diào)整;上下牙attach到身體上,因?yàn)楹笃诓恍枰獙ψ觳窟M(jìn)行動畫操作。(見圖6.3.1)圖6.3.1(2)、在創(chuàng)建命令面板中,

26、進(jìn)入最右側(cè)的systems(系統(tǒng))子面板,然后按下(自身骨骼)按鈕。參考各個視圖,為臭蟲的左前足創(chuàng)建骨骼,共5節(jié)。分別是bones01-bones05,參數(shù)設(shè)置如圖。(見圖6.3.2)圖6.3.2(3)、用工具欄中的鏡像復(fù)制工具將一條腿的骨骼復(fù)制5組,使用移動、旋轉(zhuǎn)、放縮工具對某些骨節(jié)略做改動,這樣整個6只腳的骨骼就全搭建完成了。(見圖6.3.3)注意:這里需要注意中足的骨骼與前足不大一樣,改動稍微大一些;而后足就幾乎不用改動。圖6.3.3(4)、先為左前腿制作ik鏈。選中左前腿的根部骨骼bones01,執(zhí)行animation(動畫)ik solvers(反向動力學(xué)求解)hi solver(歷

27、史獨(dú)立求解),這時視圖中出現(xiàn)一根虛線,按住鼠標(biāo)將虛線引至第五根骨骼上(即bones05),直到出現(xiàn)bones05提示字樣后松開鼠標(biāo),視圖中出現(xiàn)一根ik鏈,試著移動ik目標(biāo)物體(就是ik鏈末端的十字叉),看到骨骼以反向動力學(xué)方式運(yùn)動。(見圖6.3.4)注意:在建立完ik鏈后,bones01和bones05之間有一根直線相連,這根線叫做彈力線,可以實(shí)現(xiàn)對骨骼的牽引。圖6.3.4(5)、用相同的方法將剩余的每個腿部都設(shè)置一個ik鏈。為了以后選擇ik鏈的方便,我們進(jìn)入運(yùn)動面板,在global display項(xiàng)目下將size改為100,這樣ik鏈的目標(biāo)物體(即末端的十字叉)在視圖中變得更大了。如果想在i

28、k鏈沒有被選擇的情況下也顯示中間的彈力線的話,勾選ik solver display(ik解算器顯示)項(xiàng)就可以了。(見圖6.3.5)圖6.3.5(6)、選在視圖中選擇左前腿,進(jìn)入修改面板,為其加入一個skin(蒙皮)修改器。點(diǎn)擊下方的按鈕,在彈出的select bones(選擇骨骼)對話框中選擇bones01- bones05,按下按鈕關(guān)閉對話框。然后在修改面板中按下(編輯封套)按鈕,在下方的列表中依次點(diǎn)取各個骨骼,觀察視圖中骨骼對腿部模型的影響范圍。如果不滿意,可以在視圖中用工具拖拽封套上的控制點(diǎn)來調(diào)節(jié)影響范圍,直到最終滿意為止。用同樣的方法對每條腿都進(jìn)行蒙皮。(見圖6.3.6)圖6.3.6

29、(7)、建立一個box,大小剛好包住臭蟲的身體。用工具欄中的工具將臭蟲身體連接到box01上。然后再選中六條腿的根部骨骼,用工具將它們也連接到box01上。沿臭蟲爬行的方向移動box01。(圖6.3.7)圖6.3.7(8)、選中包住臭蟲身體的box,將其命名為“身體引導(dǎo)物體”。將時間滑塊撥到第100幀,在左視圖中用移動工具沿臭蟲前進(jìn)方向移動大約979個單位??梢钥吹缴眢w和腿部骨骼都隨著運(yùn)動,但是ik鏈最底部的引導(dǎo)物體原地不動。致使骨骼發(fā)生不正常的拉伸。(見圖6.3.8)圖6.3.8(9)、選擇dummy01虛擬體,打開動畫記錄鈕,將時間滑塊撥到第0幀。右鍵點(diǎn)擊時間滑塊,在彈出的對話框中去掉ro

30、tation和scale項(xiàng)目前的勾選,在第0幀建立一個位移關(guān)鍵幀。然后在時間欄內(nèi)配合鍵盤上的shift鍵用鼠標(biāo)將第0幀的關(guān)鍵點(diǎn)拖拽到第18幀,將第一幀虛擬體的位置信息復(fù)制到第18幀,使0-18幀虛擬體靜止。(見圖6.3.9)圖6.3.9(10)、將時間滑塊撥到第23幀,使用移動工具將dummy01虛擬體移動到如圖所示的位置。然后右鍵點(diǎn)擊dummy01虛擬體,在彈出的菜單中選擇properties項(xiàng)目,在彈出的object properties(物體屬性)面板中勾選左下方的trajectory(軌跡),則視圖中沿dummy01前進(jìn)的方向出現(xiàn)了一條紅色的軌跡線。這條紅線記錄著物體在動畫過程中的空間

31、位置信息,實(shí)際上就相當(dāng)于物體運(yùn)動的路徑。(見圖6.3.10)圖6.3.10(11)、將時間滑塊撥到第23幀,使用移動工具將dummy01虛擬體移動到如圖所示的位置。(見圖6.3.11)圖6.3.11(12)、保持dummy01虛擬體處于被選擇狀態(tài),按下工具欄中的(曲線編輯器)按鈕,在彈出的曲線編輯器窗口中執(zhí)行controller(控制器)out-of-range types.(越界類型)命令,在彈出的param curve out-of-range type(越界參數(shù)曲線類型)窗口中按下relative repeat(相對重復(fù))項(xiàng)目對應(yīng)的兩個按鈕,最后按下ok關(guān)閉該窗口。在視圖中可以看到虛擬體

32、的路徑顯示并不是原來只有一段了,而是現(xiàn)在的循環(huán)狀態(tài)了。(見圖6.3.12)圖6.3.12(13)、下面就是表達(dá)式大顯身手的時候了。我們首先分析一下臭蟲在爬行過程中六只腿的運(yùn)動有沒有規(guī)律可言:左前、左后、右中三條腿運(yùn)動頻率應(yīng)該是相同的。而右前、右后、左中三條腿運(yùn)動頻率也應(yīng)該是相同的。所以我們只需要知道一只腿的運(yùn)動情況,其余各個腿的運(yùn)動狀況用表達(dá)式也就可以輕松實(shí)現(xiàn)了。(見圖6.3.13)圖6.3.13(14)、由于左后腿和左前腿運(yùn)動頻率是一樣的,所以在視圖中選擇左后腿,進(jìn)入面板,點(diǎn)選positionnposition xyz(位移控制器),然后按下上方的(指定控制器)按鈕,在彈出的assign p

33、osition controller(指定控制器)窗口中選擇position list(位移列表)控制器,點(diǎn)擊ok關(guān)閉窗口。(見圖6.3.14)注意:position list(位移列表)控制器的作用是可以使多個控制器能夠更好地協(xié)同工作。在本例中的作用是保留原來的position xyz(位移控制器)的同時,又可以在下一步中加入position expression(位移表達(dá)式)控制器。圖6.3.14(15)、可以發(fā)現(xiàn),將控制器類型修改后,在列表中位移項(xiàng)目最頂部是position list,下面有兩個分支依次是position xyz和available(可用的),點(diǎn)擊available,按下

34、列表上方的按鈕,在彈出的assign position controller(指定控制器)窗口中選擇position expression(位移表達(dá)式)控制器,點(diǎn)擊ok關(guān)閉窗口。(見圖6.3.15)注意:position list(位移列表)控制器中可以加入多個控制器,方法就是按下available按鈕,再按下列表上方的按鈕,可以將任意多的控制器加入到列表中。圖6.3.15(16)、在上一步關(guān)閉窗口后,右側(cè)列表中在position xyz和available的中間新增了一個position expression控制器項(xiàng)目。而視圖中央馬上彈出一個expression controller(表達(dá)式

35、控制器)窗口。在create variables(創(chuàng)建變量)項(xiàng)目下,name旁的文字輸入框中輸入“l(fā)imb”(下肢),然后點(diǎn)選下方的vector(矢量)項(xiàng)目,并按下右側(cè)(創(chuàng)建)按鈕,創(chuàng)建一個名字叫“l(fā)imb” 的矢量。可以看到下方vectors列表中出現(xiàn)了 “l(fā)imb”項(xiàng)目。(見圖6.3.16)注意:表達(dá)式窗口分為四個部分:創(chuàng)建變量(create variables)、變量列表(variables list)、表達(dá)式窗口(expression)和描述窗口(description)。被賦予表達(dá)式控制器的項(xiàng)目(如位移、旋轉(zhuǎn)等)會根據(jù)控制器所創(chuàng)建的變量和公式,自動產(chǎn)生輸出值。所創(chuàng)建的變量被指定給另外

36、一個動畫對象的位置、旋轉(zhuǎn)角度或時間等可變參數(shù)。這樣當(dāng)變量指定的參數(shù)變化時,當(dāng)前項(xiàng)目也會自動變化。圖6.3.16(17)、點(diǎn)選vectors列表中出現(xiàn)了 “l(fā)imb”項(xiàng)目,按下窗口最下方的(指定控制器)按鈕,在彈出的track view pick(軌跡視圖拾?。┐翱谥姓业絛ummy01項(xiàng)目,展開其前方第二個加號,點(diǎn)擊position:position xyz項(xiàng)目,按下ok確定。此時在表達(dá)式窗口vectors列表下的文字注釋變成了assigned to:dummy01position(指定給:dummy01位移)。然后在窗口右上方的expression(表達(dá)式)窗口中刪除默認(rèn)的0,0,0,輸入limb,并按下窗口右下角的(激活)按鈕使表達(dá)式生效。(見圖6.3.17)注意:此步驟的目的是將左后腿的位移變量指定給代表左前腿的dummy01位移項(xiàng)目。這樣的話當(dāng)參數(shù)dummy01變化時,當(dāng)前的左后腿位移變量也會自動發(fā)生變化。而expression列表中和create variables的名稱欄中內(nèi)容相同,意思是左后腿的位移變化量和左前腿的位移變化量是在任何時候

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論