2013年9月8日 星期日

Unity3D 教學 ﹥21 Unity Mecanim 動畫系統

http://www.cg.com.tw/Unity/htm/Unity_021.asp

Mecanim 是 Unity 4.0 版本新增的角色動畫系統,只需要透過簡單的設定,即可利用 Unity 完成真實的角色動畫。
從 Asset Store 下載 Mecanim Example Scenes 1.0 資源包,並且匯入一個新的空白遊戲專案。
您可以從 Finished > Scenes 資料夾開啟 Tutorial-done 場景檔案,瞭解完成後的遊戲。
自已練習的話,從 Tutorial 資料夾開啟 Tutorial-start 場景檔案。
您可以在這個 Tutorial 資料夾中看到一個 Robot 機器人模型,我們需要將這個機器人綁定骨架,因為這個機器人並沒有附帶動畫。
切換到 Rig 標籤,並將 Animation Type 動畫類型設為 Humanoid,目前的 Avatar Definition 預設項目為 Create From This Model,按下 Apply 按鈕,再按下 Configure 按鈕進行組態設定,Unity 將會彈出一個對話框詢問是否存檔,請按下 Save 儲存。
提示:若您沒有先按 Apply 按鈕,將無法使用 Configure 進行組態設定。

此時,屬性檢視器將切換到綁定骨架的畫面,左下方的 Mapping 對應下拉選單,請選擇 Automap 自動對應。需要注意的是使用「自動對應」功能,角色模型必須擁有正確的階層關係,您可以從 Hierarchy 階層視窗看到機器人的父子物件階層。
如果在 Scene 場景視窗出現了紅色的警告訊息 Character is not in T pose 代表角色的姿勢不是雙手平展的標準姿勢,修正這個問題的方法是在 Inspector 屬性檢視器下方的 Pose 下拉選單選擇 Enfore T-Pose(Pose 下拉選單在 Mapping 選單的旁邊),這樣就完成角色的設定了。
將 Inspector 屬性檢視器切換到 Muscles 肌肉,此時將會出現 Unapplied import settings 對話框,提醒您尚未套用設定,請按下 Apply 按鈕,



Mecanim Example Scenes( Mecanim 範例場景)
With the introduction of Unity 4.0, the new Mecanim character animation system is bound to change the way programmers and animators create and produce game animation. To get started with Mecanim, we suggest spending time examining the example scenes included with this project.

Animator Controller(動畫控制器)
A simple locomotion State Machine and Blend Tree connected to player control inputs. A jump animation is trigger with “Fire1” and “Fire2” triggers waving arm
animation using an override layer and body mask.

Crowd simulation
產生 200 個遊戲角色替身並在場景中任意跑跳,按下 “Fire1”按鈕來生成一隻泰迪熊,玩家操控的角色可以四處走動。

Inverse Kinematics Example 逆向運動範例
See how Mecanim's IK rig gives precise in-editor control over arm and leg placement. Click Play, then tick the “Activate IK” checkbox. Then find the character in the scene view and try moving any of the IK effectors for immediate results.

Target Match
This scene shows how to use “Match Target” API to adjust the trajectory of a jump animation so it ends up at the exact landing spot on top of a box. You can put the box higher or lower and see that target will always be matched!

Teddy Bear Bazooka 泰迪熊火箭炮
Hunt down a bear with a bazooka loaded with balloons! This scene shows weapon handling, aiming and recoil using a multi-layer runtime IK rig. Be aware of the dramatic bear death when hit by a balloon!!

Generic Skeleton Example 骨架範例
此場景展示 Mecanim 動畫系統用於非人類遊戲角色的動畫能力。

Precision Turning on the Spot
This simple example demonstrates precise on-spot turning while keeping animation as believable as possible, using a "Turn on Spot" blend tree with Mecanim's MathTarget call. Details can be found in PreciseTurnOnSpot.cs

Follow Example 跟隨範例
此場景展示 Mecanim 動畫系統如何輕鬆建立真實的跟隨與碰撞行為。

Nav Mesh Example 導覽網格範例
This example demonstrates Unity's nav-mesh feature in tandem with a Mecanim driven animation controller.