使用 2D 圖塊地圖附加功能創建動畫圖塊
驗證環境
- 窗戶
-
- 視窗 11
- 統一編輯器
-
- 2021.3.3f1
- 輸入系統包
-
- 1.3.0
此提示的先決條件
作為此提示描述的前提,已預先進行了以下設置。
此提示的先決條件是什麼?
關於借用地圖材質
它是從以下網站借來的。 僅使用上面的一行。
關於動畫磁貼
玩使用地圖晶元的遊戲時, 即使原地停下腳步,也經常會看到瀑布流動、火光閃爍等動畫地圖晶片。 儘管實現方法可能有所不同,但這些都是通過動畫磁貼在 Unity 中實現的。
MapChips中的許多動畫似乎是通過定期在多個MapTips之間切換而移動的。 還有一些通過逐圖元處理進行動畫處理的那些,以及通過更改紋理座標進行動畫處理的那些。 我們這次要做的動畫,就是通過切換地圖晶元來實現的。
為動畫切片準備地圖提示
這一次,我們將準備以下地圖晶片,並通過切換地圖晶元來動畫波浪的運動。
拆分動畫圖塊的地圖晶片
創建專案后,將剛剛創建的MapChip放入專案中並進行分割。 這裡的解決方法與瓦片地圖的解釋相同,因此我將僅發佈圖像。
您還不需要將其添加到磁貼調色板。
添加動畫磁貼
從專案中選擇「創建 -> 2D -> 磁貼」-> 動畫磁貼“以添加它。
名稱可以是任何內容。 您不會在其他任何地方使用此名稱。
選擇您建立的動畫磁貼以切換檢查器。 將地圖提示放入此矩形框架中。
您可以單獨刪除切片,但如果刪除拆分源,則可以批量註冊拆分的 MapChip。
添加地圖提示,它將看起來像圖像。 否則,動畫磁貼的創建到此結束。
添加到磁貼調色板
創建磁貼調色板。 如果沒有平鋪調色板選項卡,請從功能表中的「視窗 - > 2D -> 平鋪調色板」中顯示它。 調色板的名稱可以是任何內容。 如果在創建遊戲時需要多個調色板,請使其易於理解。
切片調色板設置是在「場景」 資料夾中的新 SeaPalette 資料夾中創建的。 資料夾名稱和位置是任意的。
創建切片調色板后,添加地圖提示。 在普通圖塊地圖中,我們放置了一個拆分地圖提示,但這次我們將放置動畫圖塊。
放置時,僅顯示一個晶元,但在動畫瓷磚的情況下,這就是您所需要的。
放置地圖提示(動畫切片)
將磁貼映射到層次結構,就像添加磁貼地圖一樣。
選擇「磁貼圖」以在檢視中顯示網格。
讓我們在這裡放置一個地圖提示。 從調色板中選擇一個動畫磁貼。
將其放置在檢視中。 它看起來與普通地圖晶元沒有什麼不同。
如果你實際上不移動它,它就不會被動畫化,所以讓我們運行它。
如果運行它,您可以看到地圖提示每 1 秒切換一次並設置動畫。 通過這種方式,無需創建程式即可輕鬆實現僅具有擴展功能的MapTip動畫。
其他設置
更改動畫速度
默認情況下,地圖提示切換間隔為 1 秒。 例如,如果要每0.5秒更改一次:
選擇添加到層次結構的拼貼圖時,檢查器中的拼貼圖元件具有「動畫更新速率」,您可以在此處更改該速率。
這個數位是“1秒內切換多少次”的次數,所以如果你在0.5秒內切換,你會在1秒內切換兩次,所以設置“2”。
嘗試運行它,看看動畫速度是否發生變化。
隨機化每個地圖片的動畫時間
對於相鄰的地圖晶片(例如海邊或瀑布的流動),最好具有相同的動畫間隔,但您可能希望更改每個對象的動畫時間,例如閃爍的火焰。 在這種情況下,您可以隨機化時間或更改起始位置。
選擇「動畫磁貼」 並查看檢查器的底部以查看一些設置。
最小速度和最大速度可以指定為每秒要切換的張數的上限和下限。 放置的地圖提示將使用這些隨機數之一進行動畫處理,因此,如果您放置多個地圖,則每個地圖將以不同的速度進行動畫處理。
例如,如果將最小值運行為1,將最大值運行為2,則可以看到它們將以隨機速度進行動畫處理。
順便說一句,由於它是在十進位級別隨機確定的,因此不太可能是相同的速度。
“開始時間”和“開始幀”指定了動畫的起始地圖提示位置,但我認為它們使用不多。 “對撞機類型”是一個不同的處理故事,所以我會省略它。
設置每種地圖提示類型的動畫時間
例如,您可能希望每 1 秒切換一次波浪的運動,但您希望每 0.5 秒切換一次瀑布的流量。 這可以如前所述設置,“最低速度”和“最大速度”。 如果將最小值和最大值設置為不同的值,它們將是隨機的,因此,例如,如果要將開關速度設置為0.5秒,如果將最小值和最大值設置為2,它們都將加倍。