【Unity Tips】關(guān)于Sprite序列幀動(dòng)畫(huà)的一些想法
前言
????? ?最近都是摸一些小魚(yú),有不少有趣的想法,還是比較適合記錄下來(lái)。有需要補(bǔ)充和糾正,請(qǐng)?jiān)谠u(píng)論區(qū)留言。

關(guān)于Unity序列幀動(dòng)畫(huà)
? ?? ?這里說(shuō)的序列幀動(dòng)畫(huà),指的是通過(guò)動(dòng)態(tài)切換不同Sprite來(lái)展現(xiàn)2D動(dòng)畫(huà),算是比較古早又簡(jiǎn)單的動(dòng)畫(huà)形式。然而Unity的默認(rèn)支持方案,其實(shí)有點(diǎn)反直覺(jué),不是資源導(dǎo)進(jìn)去就可以用的,需要一些小技巧,具體做法見(jiàn)教程連接(官方文檔貌似沒(méi)寫(xiě))。
https://learn.unity.com/tutorial/introduction-to-sprite-animations#
????? ?簡(jiǎn)單來(lái)講就是你導(dǎo)入序列幀的圖片資源后,需要手動(dòng)把導(dǎo)入圖片類(lèi)型調(diào)整為Sprite,再選擇一個(gè)動(dòng)畫(huà)的多個(gè)序列幀,拉入Scene視圖,觸發(fā)保存Animation的對(duì)話(huà)框并保存。
????? ?個(gè)人來(lái)講,這個(gè)屬于勉強(qiáng)能用。但說(shuō)到涉及操作易用性和資源更新,真是一坨Shift。所以大部分情況還是得自己造輪子。
一些啟發(fā)
????? ?最近去The Spriters Resource看到有熱血少女2的提取素材,里面的文檔寫(xiě)了一個(gè)簡(jiǎn)單的說(shuō)明。

????? ?簡(jiǎn)單來(lái)說(shuō)序列幀的文件名格式完全可以當(dāng)時(shí)間軸用,即“動(dòng)畫(huà)名_幀號(hào)”。幀號(hào)可以是單個(gè)數(shù)字,也可以多個(gè)數(shù)字。用“_”連接指的是分別的數(shù)字,用“-”連接指的是范圍的數(shù)字。按照這個(gè)思路,是否為循環(huán)動(dòng)畫(huà),可以另外寫(xiě)表或者按照命名而定。
????

????? ?其實(shí)解決方案也有了,在序列幀的文件夾的同一目錄下,新建一個(gè)同名的空白文件(后綴名自己定)。利用后綴名觸發(fā)Scripted Importer導(dǎo)入操作,加載文件夾的序列幀自動(dòng)生成動(dòng)畫(huà)文件,即可實(shí)現(xiàn)即導(dǎo)即用。
????https://docs.unity3d.com/cn/2021.1/Manual/ScriptedImporters.html
????? ?觸發(fā)導(dǎo)入的文件,也可以寫(xiě)一些配置參數(shù),比如是否循環(huán),動(dòng)畫(huà)事件,觸發(fā)聲效,還有播完后下一個(gè)動(dòng)畫(huà)是什么等等。
其他想法
????? ?畢竟我還是比較少碰2D,所以輪子還是不造給大家了。畢竟要開(kāi)發(fā)輕而小的2D游戲,Unity還不是首選方案。甚至2D變形動(dòng)畫(huà)方案,還是用第三方的插件,如Live2D,Spine,Dragon Bones等。歸根到底,還是因?yàn)閁nity的美術(shù)導(dǎo)入流程有割裂感。而官方給的方案,屬于夠用卻不是很有用。過(guò)幾天,看看能不能再寫(xiě)個(gè)關(guān)于動(dòng)態(tài)加載SpriteAtlas的小想法。