Unity3d的2D骨骼動畫外掛程式Puppet2D的 基礎訓練2,unity3dpuppet2d
大家好,我是孫廣東。 轉載請註明出處:http://blog.csdn.net/u010019717
更全的內容請看我的遊戲蠻牛地址:http://www.unitymanual.com/space-uid-18602.html
6、MESH CREATION
Skinning允許單個的對象,將會受到多於一根骨頭的影響。為了做到這一點的精靈需要轉換為一個網格。
隨便選擇一個精靈,然後我們來到 Skinning面板。
先看Type of Mesh 的選項0~3 , 值越大網格越密集。
7、BIND SMOOTH SKIN
事先準備如下:
本節是在上一個Mesh Creation的基礎上的。
產生Mesh後我們來全選,然後單擊 Bind Smooth Skin 這樣就有了綁定,兩個骨骼都會影響精靈了。比如我們做了旋轉。
如果我們不需要這種關係了,我們想解除,很簡單,在Hierachy中我們只點選這個精靈, 再次單擊 BindSmooth Skin 按鈕,在彈出的對話方塊中我們選擇, Detach即可了。
8、FFDs (FREE FORMDEFORMATION)
首先選擇一個精靈,然後我們來到Skinning面板,單擊按鈕 Create FFD Tool 然後我們開始製作包圍圈。
Create FFD Tool – start creating FFDControls
Left Click – draw FFD Controls
Hold Shift or Ctrl – move selected FFDControl
Right Click – Close Current FFD loop andstart creating a new loop
Press Enter/Click “Finish FFD” - Finishescreating FFD
完成後,我們拖拽一點(每個點是一個control)來完成可以看到形變的產生。
現在我們來建立骨骼。
完事後我們選中所有骨骼和 精靈,單擊Skinning面板的 BindSmooth Skin按鈕。現在我們改變其中的一個骨骼的結果可能有的時候我們不希望,就是變形太過了。 那怎麼辦呢。就是調整FFD控制唄。
選擇其中的一個, 在指令碼中的 Weight權重變數,可以調的值大一些。 然後再觀察現象。
清空情境,選擇剛才的精靈。
製作出如下的內容:外層包圍、眼睛包圍、眼皮包圍,和骨骼數為6的Spline 控制。
我們就可以改變眼睛包圍圈的點,來使眼睛形變。
選擇所有的Spline控制的骨骼和精靈,然後單擊Skinning面板的 Bind Smooth Skin按鈕
然後我們調整控制時如果有的形變不滿意,我們就可以選擇附近的FFD control 然後調整Weight權重。
Spline控制的骨骼拖拽到 全域控制 Global_CTRL下。 我們在拖拽精靈擺放如下: 選擇這個精靈然後單擊 Skining面板中的 Convert Spriteto Mesh 這樣就OK產生了Mesh .
在Scene面板中我們滑鼠拖動全選(不要再Hierachy中做)包括新加入的精靈,但是要去掉攝像機。 來到 Skinning面板, 選擇 Num Skin Bones數目為 4(FFD) 然後單擊 按鈕。Bind Smooth Skin . 就這樣這兩個精靈(Mesh) 就結合了, 我們在在動外包為的FFD點這兩個精靈形變是一個的程度。
9、SAVE/LOAD POSES(沒法介紹)
可以儲存姿勢並載入它們。
10、BAKE ANIMATION
開啟情境puppet2DDemo 。
然後我們來到面板 Animatioon 單擊按鈕 Bake Animation 。會在如下檔案夾中產生動畫
然後把這個動畫拖到 Animator面板中右鍵選擇作為預設,刪除原來的puppet2d_shoot動畫。 您還將注意後,你這將禁用Puppet2d global Contrl.cs 指令碼。
我們移動Animation視窗中的主要畫面格動,會看到 :
說明這些將作為骨頭而不是控制上的主要畫面格動畫了。
那麼我們就刪除掉所有的控制,除了全域控制。
我們啟用Puppet2d global Contrl.cs 指令碼 , 然後選中Flip, 角色是反向的, 動畫隨之。這個有時是很有必要的。
11、GLOBAL CONTROL
沒什麼好說的,主要是Puppet2D_GlobalControl.cs指令碼, 每個參數測試一下就可以了。