天天看點

Unity3d的2D骨骼動畫插件Puppet2D的使用1

大家好,我是孫廣東。   轉載請注明出處:http://blog.csdn.net/u010019717

更全的内容請看我的遊戲蠻牛位址:http://www.unitymanual.com/space-uid-18602.html 

開發Cocos2d的程式員都知道,Cocostudio其中一個動畫編輯元件中的。骨骼動畫對于遊戲開發的性能上是很好的,有些時候和序列幀動畫相比。

強大的unity3d雖然也可以開發2D遊戲,可以序列幀實作動畫。 還是沒有2d的骨骼動畫編輯功能。

最近開發了一個第三方的插件,專門對unity實作這個功能。  那就是Puppet2D。

Unity3d的2D骨骼動畫插件Puppet2D的使用1

Walkthrough演練

Introduction:

這是一個快速的演練,如何使用Puppet2D設定一個角色的動畫。首先打開一個新的場景,在Scene視圖中的 2D 按鈕上單擊。可以在視窗頂部的菜單中找到window-> Puppet2D

Unity3d的2D骨骼動畫插件Puppet2D的使用1

Createthe Character:

在Project面闆中你會發現在Puppet2D/Textures/PuppetMan檔案夾中的puppet2d角色精靈。展開它,将每個身體部位拖動到場景視圖排列它們,是以它看起來像圖像bellow。(移動的 z 分量以使胳膊和腿出現在正确的繪制順序)

Unity3d的2D骨骼動畫插件Puppet2D的使用1

CreateLayers:

現在我們想要将角色放到鎖定的圖層上,是以,我們不要無意中選擇他當我們畫的骨頭。要選擇層螢幕右頂部下拉選擇,去編輯圖層和自由層插槽中鍵入Character。鎖定該圖層,然後選擇所有精靈在你的場景中,并從在檢查器中的層下拉清單中選擇該Character。

Unity3d的2D骨骼動畫插件Puppet2D的使用1

現在我們可以制作bones骨骼和control sortinglayer控制排序圖層。在螢幕頂上Layer中下拉,添加兩個排序圖層----叫一個Bones和一個Controls。現在,我們已準備好去取出骨頭的功能。

BoneCreation:

Unity3d的2D骨骼動畫插件Puppet2D的使用1

    首先骨層到Puppet2D視窗中的Bones設定。單擊"Create Bone Tool"按鈕可啟動該工具。現在,您可以單擊到Scene視圖開始繪圖骨頭。1、從hip臀部開始和spine脊柱骨骼和head頭部的骨頭,2、然後右鍵單擊以結束目前的骨。3、點選頂部的spine脊柱joint和開始繪制的左的手臂leftarm、 手肘elbow,然後手hand,4、右鍵單擊要結束的骨。5、現在做相同的right arm右手臂。6、hip骨單擊滑鼠左鍵,開始畫thigh大腿、knee膝蓋,然後foot腳,7、右鍵單擊并重複另一條leg腿。現在要退出骨創作單擊"Finish Bone"按鈕。

現在我們應該命名所有的骨頭,讓事情清楚。您的層次結構如下所示。

Unity3d的2D骨骼動畫插件Puppet2D的使用1

RiggingSetup:操縱設定

Unity3d的2D骨骼動畫插件Puppet2D的使用1

現在我們要建立的控制,我們可以用來制作角色動畫。

首先選擇控制在下拉中,是以控制在排序圖層上建立" Controls "。

選擇 handL 骨,然後單擊“CreateIK Control”。這将建立要進行動畫處理,将容易的手動控制。對于 handR,footL,footR,重複此操作。

接下來我們需要建立身體控制----選擇臀部,然後單擊“CreateParent Control”。這将使一個control來移動和旋轉臀部。

若要建立spine controls脊柱控制,選擇spine脊柱,然後單擊“CreateOrient Control”。如果你注意到在我們的 heierachy 我們有全局的控制-----這是所有控制的父級。選擇 spine_CTRL_GRP,并将它拖到 hip_CTRL。下一步選擇頭部骨骼并單擊“Create Orient Control”。選擇 head_CTRL_GRP,并将它拖到spine_CTRL。

Unity3d的2D骨骼動畫插件Puppet2D的使用1

Skinning:

控制已設定我們需要加入到角色的骨頭。有兩種方法做到這一點------父精靈關節和皮膚:

Parenting:

hierarchy中選擇PuppetMan_armBottom,PuppetMan_armTopand,和 PuppetMan_gunTop,以及所有的骨頭。現在單擊"Parent Objects to bones"。

Skin Binding:

皮膚的身體部位的骨頭,我們首先需要将它們轉換為可更換皮膚的網格。要做到這一點選擇其餘的網格,然後單擊“Convert Sprites to Mesh”.。選擇它們并将它們添加到Character層。

Now select legL,kneeL,footL,hip, spine and PuppetMan_body_GEO and click “Bind smooth Skin”.

Selecthip,legR,kneeR,footR and PuppetMan_leg_GEO and click “Bind smooth Skin”.

Select Spine,armR, elbowR,handR and PuppetMan_armR_GEO and click “Bind smooth Skin”.

Select Spine ,head and PuppetMan_head_GEO and click “Bind smooth Skin”.

FinalSetup

它差不多準備好了要進行動畫處理。但首先,我們需要清理scene和修複一些skin weights皮膚權重。

hierarchy中将臀部和所有的網格拖動到Global_CTRL。現在,選擇全局控制,把它打開和關閉來重新整理它。現在,您可以将可見性的骨頭-------因為你不需要看到他們要進行動畫處理的character。

嘗試移動圓形控件------那裡也許權重的幾個問題喜歡footarea。要修複選擇PuppetMan_leg_GEO 和 PuppetMan_body_GEO,然後單擊" Edit skin weights "。您應該注意出現的小頂點搖桿。選擇它們,你會看到您可以更改inspector中的權重。如果你想要一次更新多個重量-單擊inspector中的“Update Skin Weights”按鈕。

一旦你已經調整了他們讓您滿意,請單擊“FinishEdit Skin Weights”要删除的頂點搖桿。

現在的v應該是準備要進行動畫處理。

Animating:

Unity3d的2D骨骼動畫插件Puppet2D的使用1

動畫 Puppet2D character在一切動畫在 Unity 中以同樣的方式工作。選擇Global_CTRL,在動畫視窗中建立一個新的剪輯clip。移動控制并設定關鍵幀,随便哪裡隻要你喜歡----快樂動畫!