Unity 2D Animation(2D動畫)學習

引言

2D Animation是Unity2018版本之後出來的新功能,我們可以用其在2D圖片上製作骨骼動畫。

例如我們可以將下面這張2D圖片添加一個動畫。

       

由於是簡單的一張圖片,所以效果不是特別好,我們也可以在PhotoShop中一張完整的圖片切割成好幾個部分(圖層),然後導出一個PSB文件(PSD文件暫時不支持)來單獨處理每個圖層的動畫效果。

接着跟着一起,讓圖片動起來吧。

 

準備工作:

官方文檔:https://docs.unity3d.com/Packages/[email protected]/manual/index.html

打開Window->Package Manager,安裝2D Animation,如果需要支持PSB文件,需要安裝2D PSD Importer。

個人使用的Unity版本爲2019.3,2D Animation版本爲3.1.1。

挑一張你喜歡的圖片,放進Unity工程當中。

 

Skinning Editor介紹

首先我們將圖片的Texture Type設置爲Sprite(2D and UI),點擊Sprite Editor按鈕,打開編輯界面

然後我們選擇Skinning Editor

在Skinning Editor中,我們可以進行骨骼網格以及權重的編輯。

在這裏簡單的介紹下界面中這些按鈕的功能

按鈕 快捷鍵 功能
icon_RestoreBindReset Pose Shift + 1 將角色的骨骼關節恢復到原始的位置
icon_VisibilityVisibility Shift + P 打開一個新的面板,在裏面可以設置骨骼和圖片的可見性
icon_PreviewPosePreview Pose Shift + Q 設置好後可以在這通過旋轉骨骼預覽效果
icon_EditJointsEdit Bone Shift + W 編輯骨骼,可以調整骨骼的位置方向和大小等
icon_CreateBoneCreate Bone Shift + E 創建新的骨骼
icon_SplitBoneSplit Bone Shift + R 拆分骨骼,即將原有骨骼拆分爲兩個新的骨骼
icon_GenGeoAuto Geometry Shift + A 自動生成網格
icon_EditGeoEdit Geometry Shift + S 編輯網格,可以調整頂點和邊緣線的位置
icon_CreateVertexCreate Vertex Shift + J 添加新的頂點
icon_CreateEdgeCreate Edge Shift + G 添加新的邊緣線,先選中一個頂點然後拖動即可
icon_SplitEdgeSplit Edge Shift + H 拆分邊緣線
icon_GenWeightsAuto Weights Shift + Z 自動生成幾何權重
icon_WeightSliderWeight Slider Shift + X 通過滑動條調整權重
icon_WeightPaintWeight Brush Shift + N 通過筆刷調整權重

我們可以通過雙擊圖片來顯示網格和骨骼,或者雙擊空白處來隱藏這些。也可以通過按住鼠標左鍵拖動來進行多選,若要取消當前選中,單擊鼠標右鍵即可。

 

編輯圖片

首先我們先簡單的添加一些骨骼,如圖

骨骼添加好後,我們選擇Auto Geometry,爲其添加網格與權重。

Outline Detail 值越大,生成的邊緣線越多,細節越好
Alpha Tolerance 當像素的透明度低於設置的值,在邊緣線生成檢測時,該像素當透明處理
Subdivide 值越大生成的頂點越多,劃分的更細
Weights 選中時,同時生成權重

調整數值後,生成的效果如下:

權重生成出一堆五顏六色的區塊,一開始有點懵,後面通過旋轉骨骼後發現,這些顏色區塊都是對應一個骨骼,當一個骨骼旋轉時,與其顏色相近的部分都會受到影響,進行旋轉。

選中Edit Geometry,可以看見生成的頂點以及邊緣線

此時我們點擊Preview Pose,把骨骼進行簡單的旋轉,發現變形的厲害,這也印證了前面權重的意義。

點擊Reset Pose恢復到原始樣子,重新編輯下我們的骨骼頂點和權重,可以自己添加一些頂點,也可以將自動生成的幾個參數調大一點重新生成。調整後大致如下

    

然後再去轉動骨骼會發現基本效果就好了很多。

點擊Visibility按鈕會打開一個新的面板,如圖

上面兩個滑動條分別控制骨骼和權重的可見性,也就是透明度,然後兩個按鈕Bone和Sprite分別顯示當前的骨骼和圖片。然後我們可以在下面的列表中去隱藏骨骼或者貼圖。(由於我只用了一張圖片,所以沒有Sprite選項)

全部搞好之後,記得點擊Apply提交一下。

 

導入場景中

接着我們可以直接將圖片拖到場景中,然後爲其添加Sprite Skin組件,點擊該組件的Create Bones按鈕即可在子節點下自動生成骨骼。旋轉這些骨骼,圖片也會跟着相應的轉動。

                 

 

添加動畫

最後我們只需要添加上動畫文件就可以讓其動起來了。

在組件上繼續添加一個Animator組件,然後在Project面板中Create一個Animator Controller文件,關聯到該組件上。然後再Create一個Animation文件,雙擊Animator文件,關聯上我們的Animation。

        

雙擊Animation文件打開編輯面板,然後Hierarchy中選中我們的圖片,爲我們的骨骼添加動畫。

 

全部搞好後,點擊運行,我們的圖片就會動起來啦。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章