【前言】
? ? ? ?上一篇《骨骼系統(tǒng)基礎(chǔ)入門(mén)-1》中,通過(guò)幾個(gè)問(wèn)題,解釋一些關(guān)于骨骼系統(tǒng)經(jīng)常涉及的一些概念。看完之后,初步知道骨骼、蒙皮、綁定等是怎么回事,這一篇就初步談?wù)勅绾谓⒐趋馈?/p>
【研究】
看下圖,BONES 翻譯為骨骼,JOINT 翻譯為關(guān)節(jié), JOINT-OBJECT 關(guān)節(jié)對(duì)象 。
一、C4D的骨骼系統(tǒng)基礎(chǔ)來(lái)源于父子關(guān)系。從上圖的對(duì)象列表關(guān)系就可以看出來(lái)。骨骼的組織結(jié)構(gòu)有時(shí)被稱(chēng)為一個(gè)骨架(skeleton),其中的任一關(guān)節(jié)點(diǎn)叫做骨頭(bone)。還有鎖鏈(chain)、骨架(skeleton)、層級(jí)(hierarchy)、連接(link)、 骨頭(bone)、關(guān)節(jié)(joint)、節(jié)點(diǎn) (node)...等,懂翻譯不知道CG,知道CG的人不會(huì)翻譯。
而在C4D中是這樣的:
二、關(guān)節(jié)(JOINT)實(shí)際上是一個(gè)點(diǎn)。一個(gè)骨骼(BONES)是由兩個(gè)關(guān)節(jié)構(gòu)成,由粗指向細(xì),粗的關(guān)節(jié)為細(xì)的關(guān)節(jié)的父。
1、比如,點(diǎn)擊關(guān)節(jié)工具,點(diǎn)擊兩次,建立兩個(gè)關(guān)節(jié)。由于它們?cè)诳臻g位置一樣,沒(méi)有構(gòu)成父子關(guān)系,所以場(chǎng)景什么也沒(méi)有。
2、把關(guān)節(jié)向下移動(dòng)一段距離。場(chǎng)景中什么也沒(méi)有。
3、把關(guān)節(jié)拖到關(guān)節(jié).1的下面,構(gòu)成父子關(guān)系。
4、場(chǎng)景中出現(xiàn)了骨骼。由關(guān)節(jié).1(父)指向關(guān)節(jié)(子),由粗到細(xì)。所以關(guān)節(jié)表示就是一種層級(jí)的邏輯關(guān)系。
5、骨骼在動(dòng)畫(huà)中并不會(huì)被渲染,它的作用相當(dāng)于一個(gè)支架,模擬真實(shí)生物的骨骼和機(jī)械等的動(dòng)力學(xué)構(gòu)架,對(duì)主要的關(guān)節(jié)或軸進(jìn)行移動(dòng)和旋轉(zhuǎn)等操作;然后,通過(guò)各種設(shè)置,為骨骼添加關(guān)鍵幀動(dòng)畫(huà),再由骨骼驅(qū)動(dòng)綁定好的模型。如何才能渲染這個(gè)骨骼呢?
點(diǎn)擊角色菜單--轉(zhuǎn)化--轉(zhuǎn)化關(guān)節(jié)為多邊形。再渲染就有了。
三、如何繪制關(guān)節(jié)呢?方法有很多種,常用就有四種方法:
第一種方法就是用“關(guān)節(jié)工具“。
1、關(guān)節(jié)工具設(shè)置很多,一般情況下默認(rèn)即可。重點(diǎn)要說(shuō)的是下邊“修改”的面板。
2、默認(rèn)控制就是CTRL建,按住CTRL+鼠標(biāo)左鍵,可以自由繪制骨骼。
3、按住SHIFT建可以細(xì)分骨骼。
4、在上面繪制的骨骼中間,按住SHIFT建點(diǎn)擊,骨骼被切分。實(shí)際上就是在兩個(gè)關(guān)節(jié)中間又加了一個(gè)關(guān)節(jié)。
什么都不按,直接點(diǎn)擊關(guān)節(jié),就可以移動(dòng)關(guān)節(jié)。
5、這些設(shè)置可以更改,比如SHIFT鍵可以當(dāng)做量化繪制。
6、量化繪制你懂得,就是直線、45度角、90度角繪制。
7、這是形成的關(guān)節(jié)對(duì)象。
第二種方法先繪制曲線,在轉(zhuǎn)換關(guān)節(jié)。
1、在正視圖繪制曲線。
2、選擇“樣條轉(zhuǎn)化為關(guān)節(jié)”。
3、骨骼會(huì)按照曲線的控制點(diǎn)建立關(guān)節(jié)。曲線白色為開(kāi)始,轉(zhuǎn)為根關(guān)節(jié);藍(lán)色為曲線末端,轉(zhuǎn)化為末關(guān)節(jié)。
4、形成的關(guān)節(jié)鏈。
第三種方法先建立關(guān)鍵點(diǎn),生成關(guān)節(jié)。
1、在場(chǎng)景不同位置建立空白對(duì)象。取其在場(chǎng)景空間的位置。
2、位置如下所示。
3、選擇所有的空白點(diǎn),點(diǎn)擊菜單。(樣條轉(zhuǎn)化為關(guān)節(jié),我認(rèn)為他們漢化錯(cuò)誤)。
4、在不同的空白對(duì)象位置轉(zhuǎn)化為關(guān)節(jié)(位置相同)。
5、當(dāng)場(chǎng)景中并沒(méi)有出現(xiàn)關(guān)節(jié)鏈。
6、把空白3當(dāng)成跟關(guān)節(jié),建立父子關(guān)系。
7、場(chǎng)景中出現(xiàn)了關(guān)節(jié)鏈。
第四種方法:
1、建立一個(gè)圓柱,按C轉(zhuǎn)化多邊形,去掉上下底。
2、選擇邊模式,按UL選擇如下的邊。
3、點(diǎn)擊轉(zhuǎn)化“所選到關(guān)節(jié)”,如果直接點(diǎn)選命令,就會(huì)出現(xiàn)一個(gè)公共的關(guān)節(jié)。
4、它的的秘籍是:點(diǎn)擊這個(gè)命令,同時(shí)按住SHIFT鍵,就會(huì)各自生成一個(gè)關(guān)節(jié)點(diǎn)。
5、在對(duì)象窗口中看到各個(gè)關(guān)節(jié)。
6、同理,建立父子關(guān)系。
7、按照要求生成關(guān)節(jié)。
8、關(guān)節(jié)位置對(duì)的非常好。
小結(jié):制作關(guān)節(jié)鏈方法很多,這里沒(méi)有細(xì)談每個(gè)關(guān)節(jié)坐標(biāo)等問(wèn)題,以后詳談。
四、如何建立骨骼控制器呢?
關(guān)節(jié)最后會(huì)驅(qū)動(dòng)模型運(yùn)動(dòng),但如何控制關(guān)節(jié)呢?
第一種:一般方法是在控制的關(guān)節(jié)位置建立空白對(duì)象:
1、圖中有一個(gè)關(guān)節(jié)鏈,你能知道哪個(gè)是根關(guān)節(jié),哪個(gè)是末關(guān)節(jié)?
2、這是對(duì)象窗口中的關(guān)節(jié)列表?,F(xiàn)在我們想控制末關(guān)節(jié)---關(guān)節(jié).5。
3、選中它,選中角色菜單--轉(zhuǎn)化--關(guān)節(jié)轉(zhuǎn)換為空白對(duì)象。C4D會(huì)在關(guān)節(jié).5位置上生成一個(gè)空白物體。
(注意這是生成空白物體的方法)
4、這個(gè)控制末關(guān)節(jié)的空白物體,不能放在關(guān)節(jié)鏈中,把它拖出來(lái)。
5、為關(guān)節(jié).5添加-角色標(biāo)簽--約束--PSR約束。把”關(guān)節(jié).5“空白物體對(duì)象拖入目標(biāo)欄中。
6、為了觀看方便,設(shè)置空白物體在場(chǎng)景中的顯示。移動(dòng)空白物體,發(fā)現(xiàn)末關(guān)節(jié)也移動(dòng)了。
第二種:常用的方法。用特殊曲線對(duì)象控制關(guān)節(jié)。
為什么用特殊曲線控制關(guān)節(jié)呢?因?yàn)橛每瞻孜矬w控制關(guān)節(jié)也是可以,但是有個(gè)毛病。就是控制點(diǎn)多的時(shí)候,你在場(chǎng)景中直接點(diǎn)擊空白物體,你會(huì)選不到控白物體,你只能在對(duì)象列表中,先選擇要控制的空白物體,然后,到場(chǎng)景中去移動(dòng)它??刂铺闊?!我們要的是“所見(jiàn)即所得”。所以控制關(guān)節(jié)不用空白物體,而用“特殊曲線對(duì)象”。這個(gè)特殊曲線就是你自己做的曲線。
1、在正視圖建立一個(gè)類(lèi)似大腿的骨骼。
2、建立IK,把末尾的”關(guān)節(jié).4“拖入結(jié)束欄,目標(biāo)欄先不管。
3、在場(chǎng)景中建立XZ平面方向的一個(gè)圓環(huán)。
4、按C 編輯成特殊曲線。
5、把它拖到”根對(duì)象“下為子物體,相對(duì)坐標(biāo)歸零。目的使圓環(huán)與根對(duì)象位置相同。(這是對(duì)位的常用方法)
6、然后把特殊曲線-圓環(huán)改名為“上部控制”,作為最上層的父級(jí)。

7、再建立一個(gè)ZX平面方向的圓環(huán),拖到關(guān)節(jié).4下面為子,相對(duì)坐標(biāo)歸零,你懂得。
8、按C ,把曲線編輯成為腳印的形狀。
9、就是這樣。
10、為末關(guān)節(jié)添加PSR約束。
11、然后,把圓環(huán)拖入變?yōu)樯喜靠刂频淖訉?duì)象。
12、這樣我們?cè)趫?chǎng)景中,只要點(diǎn)擊上部控制曲線,那么就能控制整個(gè)骨骼,這是旋轉(zhuǎn)。
13、這是骨骼整體縮放,移動(dòng)也可以,就不演示了??傊@是一個(gè)總控的方法。
14、但當(dāng)你拖動(dòng)腳型的控制器的時(shí)候,發(fā)生了問(wèn)題,只有一節(jié)骨骼跟隨。這個(gè)可是IK關(guān)節(jié),應(yīng)該整個(gè)關(guān)節(jié)鏈移動(dòng)才對(duì)。問(wèn)題出在哪里?
問(wèn)題出在:我們不能直接用特殊曲線制作的控制器去控制關(guān)節(jié)。
15、改正:
選擇IK標(biāo)簽,為末關(guān)節(jié)添加目標(biāo)。
16、然后,把PSR約束標(biāo)簽拖給“關(guān)節(jié).4.目標(biāo)”。圓環(huán)控制這個(gè)目標(biāo)來(lái)控制末關(guān)節(jié),通過(guò)IK系統(tǒng)反向上控制整個(gè)關(guān)節(jié)鏈,要記住。
17、這個(gè)時(shí)候,在場(chǎng)景中點(diǎn)擊圓環(huán),這個(gè)特殊制作的腳形狀控制器,移動(dòng)它,整個(gè)關(guān)節(jié)鏈移動(dòng),正常。
18、我們還可以為這兩個(gè)自己制作的特殊曲線控制器,分別賦予顏色。
小結(jié):
要記住最后控制器制作的常用的方法。
五、關(guān)節(jié)位置凍結(jié)、復(fù)位
關(guān)節(jié)建立以后,就是初始位置。當(dāng)與模型發(fā)生綁定以后,你調(diào)整骨骼,如果導(dǎo)致混亂的時(shí)候,假如在初始化的時(shí)候沒(méi)有凍結(jié)相關(guān)坐標(biāo),任憑你如何按CTRL+Z或者 SHIFT+Z,你的關(guān)節(jié)就再也回不到初始狀態(tài)了。所以,關(guān)節(jié)與模型綁定初始位置的時(shí)候,一定要凍結(jié)關(guān)節(jié)坐標(biāo),這樣你可以再調(diào)亂得時(shí)候,有機(jī)會(huì)恢復(fù)到關(guān)節(jié)初始位置。
1、利用關(guān)節(jié)工具建立如下關(guān)節(jié)鏈。
2、關(guān)節(jié)鏈?zhǔn)且粭l直線。
3、選擇所有關(guān)節(jié),點(diǎn)擊下面的坐標(biāo)面板--凍結(jié)全部。C4D系統(tǒng)就會(huì)記住各個(gè)關(guān)節(jié)的初始位置。
4、現(xiàn)在調(diào)亂關(guān)節(jié)。
5、選擇所有關(guān)節(jié)。點(diǎn)擊菜單 復(fù)位PSR。
6、所有關(guān)節(jié)又回到初始位置。
7、下面再看另一中情況。選擇關(guān)節(jié),右鍵角色標(biāo)簽--IK標(biāo)簽。把末關(guān)節(jié).6拖入結(jié)束欄,再點(diǎn)擊目標(biāo)欄后的添加按鈕,添加一個(gè)控制點(diǎn)。這個(gè)控制點(diǎn)與末關(guān)節(jié).6位置一致。
8、那么這個(gè)關(guān)節(jié)鏈就是IK 反向關(guān)節(jié)鏈(由子控制父,反向上控制),拖動(dòng)末關(guān)節(jié)控制點(diǎn),可以控制整個(gè)關(guān)節(jié)。與FK(正向關(guān)節(jié)相反,由父控制子,逐級(jí)向下控制)。調(diào)整空白點(diǎn)的顯示。
9、你可以選擇全部關(guān)節(jié),但對(duì)于IK關(guān)節(jié)鏈,關(guān)節(jié)的位置變化是受“關(guān)節(jié).6.目標(biāo)”控制。
10、所以,你只要選擇“關(guān)節(jié).6.目標(biāo)”,然后到坐標(biāo)面板--凍結(jié)全部。凍結(jié)IK控制點(diǎn)一個(gè)坐標(biāo)即可,而不用凍結(jié)所有關(guān)節(jié)坐標(biāo)。
11、現(xiàn)在移動(dòng)控制點(diǎn),幾乎所有關(guān)節(jié)位置發(fā)生變化。
12、點(diǎn)擊菜單“復(fù)位PSR"。
13、因?yàn)椤瓣P(guān)節(jié).6.目標(biāo)”控制點(diǎn)復(fù)位,回到原來(lái)初始化位置,所以IK關(guān)節(jié)立刻復(fù)位。
14、利用菜單太麻煩,C4D最大特點(diǎn)就是:可以創(chuàng)建你自己的按鈕和命令(C4D系統(tǒng)提供菜單、按鈕、命令供你使用)如何用命令和建立按鈕呢?
按SHIFT+C,調(diào)出命令窗口,輸入PSR。找到"復(fù)位PSR",回車(chē)即可執(zhí)行。
15、你也可以用鼠標(biāo)把”復(fù)位PSR"拖到一個(gè)位置,用的時(shí)候點(diǎn)擊它即可。
【后記】
1、又沒(méi)少寫(xiě),不寫(xiě)則已,總想用一篇文章把知道的都寫(xiě)出來(lái),如滔滔江水.......沒(méi)辦法,當(dāng)老師的時(shí)間太長(zhǎng)了,你還沒(méi)讓我說(shuō)呢?
2、《骨骼系統(tǒng)-1》寫(xiě)完之后,不少吧友催我趕緊寫(xiě)《骨骼系統(tǒng)-2、3、4》。其實(shí)在博客的草稿箱,我已經(jīng)把這個(gè)系列寫(xiě)到-8了,但我想把角色建模談完之后,再陸續(xù)貼出骨骼系統(tǒng)及動(dòng)畫(huà)文章??墒前捎阎?,那就先避開(kāi)“角色”,只能往外貼了。
3、寫(xiě)的這些東西,初學(xué)者可能不解渴,認(rèn)為是磨嘰。可是如果你不掌握這些基礎(chǔ)的東西,直接操作骨骼關(guān)節(jié)出錯(cuò)的時(shí)候,你都不知道錯(cuò)在什么地方。
4、學(xué)習(xí)骨骼動(dòng)畫(huà),首先要學(xué)會(huì)角色建模,然后學(xué)綁定控制,最后學(xué)習(xí)動(dòng)畫(huà)曲線去控制動(dòng)畫(huà)的姿態(tài)、節(jié)奏等等。沒(méi)有好的角色模型,你用骨骼綁定什么?不深入學(xué)習(xí)動(dòng)畫(huà)曲線,角色動(dòng)起來(lái),感覺(jué)非常別扭。當(dāng)然,還必須觀察生活和多看經(jīng)典的動(dòng)畫(huà)作品。