實現精靈表動畫
驗證環境
- 窗戶
-
- 窗戶11
- Unity 編輯器
-
- 2020.3.25f1
- 輸入系統包
-
- 1.2.0
此提示的先決條件
以下設置已預先配置為解釋這些提示的先決條件。
什麼是Sprite Sheet Animation?
在現代遊戲中,角色和效果是通過移動 3D 模型、實時計算爆炸和顯示效果來動畫化的。 這成為可能,因為遊戲機的計算能力有所提高,但由於舊遊戲機沒有那麼強大的功能,因此不斷切換圖像以使其看起來像在移動的精靈表動畫是主流。 原理與電視上播放的動漫相同。 與過去相比,精靈表動畫被更少的遊戲使用,但它們仍然經常被使用,因為計算所需的負載要低得多。
Sprite 表動畫切換並連續顯示多個圖像。 準備盡可能多的圖像檔是很少見的,基本上所有顯示模式都包含在一個圖像中。 這樣可以更輕鬆地管理圖像檔,並減少載入圖像檔的負載。 總結此動畫的圖像檔稱為「精靈表」。
創建Sprite表
精靈表本質上只是一個圖像檔。 由於它與Unity無關,請使用圖像編輯工具創建它。 最終檔案格式將是 Unity 可以處理的 PNG 檔。
此外,創建精靈表還有以下規則。
- 統一所有幀的圖像大小。 例如,如果第一個圖像為32x32圖元,則第二個及後續圖像將為32x32圖元。 例如,如果以 6 幀的“3x2”格式準備一個 Sprite 表,則 Sprite 表的大小將為 96x64 像素。
- 您可以自由對齊圖像,例如“6x4”或“2x8”,但請務必在假設所有幀都將被填充的情況下創建它。 如果是“6x4”,則為 24 幀,依此類推。 如果是 13 幀動畫,請使用“1x13”或“13x1”進行準備。
- 由於它是動畫,因此它被正確對齊,因此前後的幀不會出現錯位。
- 動畫的方向從左上角的儲存格開始,然後向右移動,當您轉到最右側時,它從左側向下一步開始,然後再次向右移動。
事實上,在Unity中,你不必嚴格執行上述操作,但提前確定規格要容易得多。
這一次,我將使用精靈表來切換以下數位。 一個正方形是32x32圖元。 它由 24 個「6x4」幀組成,因此圖像大小為 192x128 圖元。
在 Unity 編輯器中設定 Sprite 表
創建專案后,將Sprite表檔添加到專案中。
這裡假設檔案名是 NumberAnimation
。
NumberAnimation
選擇檔案並填寫檢查器,如下所示:
專案 | 值 |
---|---|
紋理類型 | 精靈(2D 和 UI) |
Sprite 模式 | 複數 |
還有許多其他設置可以配置,但讓我們暫時保持原樣。 配置完成後,按兩下「Sprite Editor」 按鈕。
如果出現以下對話框,請按兩下「應用」 按鈕。 實際上,此檢查器的設置是要保存的,如果滾動到底部,則會出現“應用”按鈕,因此您需要使用此按鈕保存設置。 它也將通過對話框中的“應用”保存,因此以哪種方式保存它並不重要。
出現Sprite Editor。 在本節中,我們將致力於將Sprite從Sprite表中分離出來。
左上角有一個名為「切片」的按鈕,按單下它並將類型更改為“按單元格大小網格”。 在此Sprite表中,Sprite 的一個大小為“32x32”圖元,因此為每個圖元大小輸入 32。 完成後,按兩下「切片」 按鈕。
這張圖片很難理解,因為它似乎從一開始就被清楚地劃分了,但它被 1 個精靈 32px 分割。 按“Ctrl”鍵,分割線將顯示為綠色。
拆分后,使用“應用”按鈕保存。
如果按下項目圖像檔中的三角形將其展開,則可以看到Sprite已被分割。
精靈放置和動畫
將設置的精靈拖到視圖中並放置它。
然後會出現一個對話框,因此將其另存 NumberAnimation
為 .
此檔案包含動畫設置。
第一個精靈被放置在檢視中,並在專案中創建動畫控制器和動畫剪輯。 如果圖像較小,請設置比例以使其變大。
此時,將應用默認動畫設置,因此您只需運行遊戲即可。 您應該能夠看到精靈動畫在遊戲開始后立即移動。
防止動畫迴圈播放
從專案中選擇動畫剪輯檔 (NumberAnimation.anim)。
在檢查器中,有一個「循環時間」複選框,因此請取消選中它。
如果運行遊戲,您會看到動畫在 24 點停止。 它對一次性爆炸效果有效。
更改動畫的速度
從層次結構中選擇要進行動畫處理的Sprite。
然後選擇「動畫」選項卡。 如果沒有「動畫」選項卡,請從功能表中選擇「視窗」 >「動畫」>」動畫”
有一個數位叫“sample”,就是在一秒鐘內切換圖像的次數。 在此示例中,動畫為24幀,因此每2秒重複一次動畫。
如果減小此數字,動畫速度會變慢,如果增加此數字,動畫速度將增加。
關於其他高級動畫設置
各種動畫設置在特定於動畫的提示中單獨說明。 這些設置不是 Sprite 動畫所獨有的,但也不是 它與設置其他運動動畫和 3D 動畫相同。
在本技巧中,我們將解釋如何從精靈表作為動畫移動。