MotionBuilder綁定C3D動作到(dào)模(mó)型身上
【一、動(dòng)作文件的導入】
打(dǎ)開MotionBuilder以後,選擇 File 菜單,然後選擇 Motion File Import。MotionBuilder支(zhī)持導入.fbx .bvh .htr .trc .asf .amc .c3d等多種格式的運動文件,不過需要注意的是,運動文件所(suǒ)在路徑不(bú)能含有中文名,如果含有(yǒu)中文名程序直接崩潰退出,不過有意思的是,MotionBuilder的打開和保存功能並沒有這個問題。
選(xuǎn)擇文件後會出現如下的對話框,motion.c3d即為導入的文件。
由於C3D文件的頭(tóu)部(bù)記錄了第一幀的序號,所以這裏實際的(de)第一幀的序(xù)號為126,雖然在MotionBuilder或其他軟件中做動畫並不會出現問題,但是如果編寫程序調用該動作時可(kě)能會有些問題,建議雙擊開始時間修改為0,修改(gǎi)完開始時間結束時間會自動修(xiū)改(gǎi)。當然,如果現在(zài)不修改的話,也可以導入後在 Navigator 裏找到 Takes,然後再找到剛才添加的這(zhè)個Take,然後修改 Local start 也可。
點擊 Import 後,在(zài)MotionBuilder中即會出現導入的動作捕捉(zhuō)點。
【二、界麵控製】
在界麵的(de)左上角可以在 View 菜單中控製與顯示有關的設置(zhì),比如:
- 選擇 Viewer Layout 可以設置(zhì)同時顯示(shì)幾個(gè)顯示麵板。
- 選擇(zé) Perspective -> Producer Perspective 可以使用透視相(xiàng)機。
- 選擇 Orthographic -> Producer Front / Back / Right / Left / Top / Bottom 可以使用不(bú)同(tóng)的正交相機,快捷鍵分別是切換到前後為Ctrl+F,右左為Ctrl+R,上下(xià)為(wéi)Ctrl+T。
- 選擇(zé) Default Camera View 或按快捷鍵(jiàn)Alt+Home可以(yǐ)複位為該攝像機的默認設置。
在界麵上方的五個按(àn)鈕
是(shì)用來調(diào)整攝像機的(de),都是將鼠標按在指定按鈕上然後用鼠標(biāo)拖動實現調整的。
-
Orbit (L) | Pan / Tilt (R)
- 鼠標左鍵 左右拖動為沿(yán)水平軌道調整攝像機位置,上下拖動(dòng)為沿垂直軌道調整攝像機位置。
- 鼠標右鍵 左右拖動為調整(zhěng)攝像機轉動角度(Pan),上下拖動(dòng)為調整攝像機傾斜角度(Tilt)。
- 除此之外 按住Shift+Ctrl鍵(jiàn)拖動鼠標也可(kě)實現同樣(yàng)功能。
-
Travelling with Interest (L) | Travelling (R)
- 鼠標左鍵 上下左右四(sì)個(gè)方向拖動即(jí)為(wéi)調整攝像機的位置(zhì)。
- 除此之外(wài) 按住Shift鍵拖(tuō)動鼠標也可實(shí)現同樣功能。
-
Dolly (L) | Dolly with Interest (R)
- 鼠標左鍵 上下(或(huò)左右)拖動為推拉(lā)攝(shè)像機。
- 除此之外 按住Ctrl鍵拖動(dòng)鼠標(biāo)或使用鼠(shǔ)標滾輪也可實現同樣功能。
-
Zoom (L)
- 鼠標(biāo)左鍵 上下(或左右)拖動為調整攝像機視野(Field Of View)角度。
-
Rool (L) | Roll +15 deg (R)
- 鼠標左鍵 左(zuǒ)右拖動為左右轉動攝像機(Roll)。
- 鼠標(biāo)右鍵(jiàn) 左右拖動(dòng)為(wéi)每次左右轉動攝像機(jī)(Roll)15度。
除此之外,還可以在 Navigator 中選擇 Cameras,然(rán)後選擇 Producer Perspective,同樣可以進行攝像機的相關設置。
【三、綁定動作到Actor】
要實現動作與模型的綁(bǎng)定,首先需要(yào)將動作綁(bǎng)定到 Actor 上,首先在界麵右側的 Character Controls 麵板中選擇 Create 裏的 Actor。
然後界麵中將會出現一個人(rén)物模型,如下圖所示,由(yóu)於動作捕捉點與 Actor 不對齊,首先需要將使用平移、旋轉和縮放工(gōng)具將其對齊。
其中如果要調整所有(yǒu)運動捕捉點的話,可以點擊上圖中人腳下的白色球體,選中後會變為綠色,然後分別按T鍵、R鍵和S鍵可以分別(bié)實現平(píng)移、旋轉和縮放(fàng)。其中按R鍵後會出現如下圖所示(shì)的界(jiè)麵。
其中紅色、綠色、藍色和褐色的(de)圓圈(quān)為按不同方向進行調整,也可使(shǐ)用灰色的圓圈為任意方向。選(xuǎn)中要調整的圓圈,其會變成白色,然後使用鼠標拖動即可。
同樣的,按T後會出現如下所示的界麵,同樣也是紅、綠、藍三個(gè),分別點擊移動鼠標調整即可。
當動作捕捉點整體與 Actor 在(zài)同一位置後,可以再(zài)調整身體上的部位,使得身體上的部位與捕捉點對應即可。為了便於調整也可以(yǐ)點擊 Display 菜單,選擇 X-Ray 模式,顯示出 Actor 的(de)骨骼(gé)來,然後點(diǎn)擊骨骼也可以進行調整,方法(fǎ)與調整整體一樣,隻不過調整起(qǐ)來更複雜些罷了。
然後點擊 Navigator 麵板下的 Actors,選擇(zé) Actor,然後在右側的 MarkerSet,然後點擊 Create 即可,如下圖所示。
然後(hòu)在 Navigator 中將會出現 MarkerSet 一項,同時在 Actor Settings 的 Actor 中出現一係列表示關節的圓圈,表示(shì)這(zhè)個部位綁定的捕捉點數(shù)量。
其中各部位的名稱如下,由於左(zuǒ)右對稱,所以隻標注(zhù)了一邊:
接(jiē)下來隻需(xū)要選擇捕捉點然後拖動到(dào)指定的圓圈中即可。選擇的方法有兩種:
- 在視圖中選中捕捉點顯示的方塊,可以按住空格鍵多(duō)選,然後按Alt鍵將其拖(tuō)動(dòng)到指定關節所表示的圓圈。
- 在 Navigator 中選擇 Opticals,然後在其中找到導入的動作,比如(rú)這裏叫 C3D:optical,然後選中指定名稱的捕捉點,可以按住Ctrl鍵多(duō)選,然後直接拖動到指定關節所表(biǎo)示的圓圈即可。
其中我這裏使用的(de)捕捉點與骨骼的對應關係如下,當然有時候因為數據也需要靈活調(diào)整,或者有些部位不綁定:
| Actor 部位 | C3D 捕捉點 |
| Head(頭部) | LFHD(左太陽穴)、RFHD(右太陽穴)、LBH(左後腦)、RBHD(右後腦) |
| Chest(胸部) | C7(頸(jǐng)椎根(gēn)部,脊椎第七節)、T10(背部中點,胸椎第十節)、CLAV(胸骨上端)、STRN(胸骨劍突位)、RBAC(右後背心) |
| Hips(臀部) | LFWT(髖(kuān)骨左(zuǒ)前(qián)方)、RFWT(髖骨右前方)、LBWT(左髂後(hòu)上棘)、RBWT(右髂後上棘) |
| Left shoulder(左肩) | LSHO(左肩肩骨末端突出處) |
| Right shoulder(右肩) | RSHO(右肩肩骨末端突出處) |
| Left elbow(左手肘) | LELB(左(zuǒ)手(shǒu)肘關節外圍突(tū)出處(鷹嘴突)) |
| Right elbow(右手肘) | RELB(右(yòu)手肘關(guān)節外圍突出處(鷹嘴突)) |
| Left wrist(左手腕) | LWRA(左手手腕靠拇指端)、LWRB(左手手腕靠小指端) |
| Right wrist(右手腕) | RWRA(右手(shǒu)手腕靠拇指端)、RWRB(右手手腕靠小(xiǎo)指端) |
| Left hand(左手) | LFIN(左手中指關節(jiē)下方) |
| Right hand(右手) | RFIN(右手(shǒu)中指關節下方) |
| Left knee(左膝) | LKNE(左腳膝蓋關節外緣) |
| Right knee(右膝) | RKNE(右腳膝蓋(gài)關節外緣) |
| Left ankle(左腳(jiǎo)踝) | LANK(左踝關節(jiē)外緣突(tū)出處) |
| Right ankle(右腳踝) | RANK(右踝關(guān)節外緣突出處) |
| Left foot(左腳掌(zhǎng)) | 忽略 |
| Right foot(右腳掌) | 忽略 |
| Left toe(左腳趾) | 忽略 |
| Right toe(右腳趾) | 忽略 |
在綁定所有捕捉點(diǎn)後可以點擊 Actor Settings 中的 Snap 按鈕,此時 Snap 按鈕左側的選項(xiàng)將會(huì)勾上,即可完成綁定,現在點擊播放按鈕,Actor 就會隨著捕捉點進行運動了,然後保存為fbx文件即可。
如果播放後發現綁定的效果不好(hǎo),可以取消(xiāo)勾選 Snap 按鈕左側的選項,然後編輯後重新綁定,此時會出現(xiàn)如下的(de)對話框,選擇TR(Translate / Rotate)即可。
若要綁定到(dào)模型,首先需要把(bǎ)模(mó)型角色化,如果模型已經角(jiǎo)色化(huà)過,可以跳過這節。首先打開一(yī)個模型,出現如(rú)下圖所(suǒ)示:
在 Character Controls 麵板中點擊 Defination,如果出現的(de)如下圖所示則表示沒有角色化,如果模型已經角(jiǎo)色化,則下圖中左數第二個鎖定圖標應為鎖定狀態並且顯示為灰色的骨骼應該顯示為綠色。
綁定骨骼時隻需要雙擊指定(dìng)骨骼,然後除了該骨骼外的其他(tā)骨骼將會變暗,表示現在(zài)正在(zài)綁定該(gāi)骨骼,然(rán)後在(zài)視圖中(zhōng)點擊對應的骨骼即可。比較(jiào)智能的是,默認時左邊數第三個圖標 Mirror Matching 是選中的,所以如果(guǒ)綁定了一邊(biān)的骨骼,另(lìng)一邊會(huì)自動綁定,當然也可以手動將其去除。除(chú)此之外(wài),點擊手邊和胸部的下三(sān)角還可以綁定更多骨(gǔ)骼,胳膊與腿旁邊也有(yǒu)一些骨(gǔ)骼可以綁定,但這些骨骼不(bú)綁定也不會影(yǐng)響角色化。
在身體上(shàng)的所有骨骼均綁定成功後,右(yòu)上角驗證狀態(Validation status)的圓圈會變為綠色。
然後選擇左數第二個 Lock Character,然後(hòu)會出現如下圖的對話框,選擇Biped(兩足動物)即可完成綁定。
在模型角色化(huà)以後就可(kě)以與之前綁定好動作的Actor進行綁定了,在MotionBuilder打開角色化後的模型後,選擇 File -> Merge,然後打開剛才(cái)保存的動作fbx文件(jiàn),與打開的對話(huà)框(kuàng)稍(shāo)有(yǒu)不(bú)同,直接點擊 Merge 即可。
此時在視圖中發現之前綁定好的 Actor 與(yǔ)當前模(mó)型在一起顯(xiǎn)示了:
然後選擇 Character Controls 麵板中的 Source,然後選(xuǎn)擇 Actor 即可(如果(guǒ)沒有角色(sè)化,則選擇 Actor 時會提示錯誤):
然後模型就會與之前綁定好動(dòng)作的 Actor 一起動了,此時可以點(diǎn)擊播放(fàng)查看效果(guǒ)。
後,點擊 Character Controls 麵板左側的菜單,選擇 Bake (Plot) -> Bake (plot) To Skeleton 然後保(bǎo)存文件即可。
- 上一篇:Unity3D引用dll打包發布的問題及解決 2018/9/12
- 下一篇:motionbuilder錄製動捕數據流程 2018/9/6
