文章出處
文章列表
角色已經人形化(Humanoid)了,那它的動畫可以用在其它的模型上了也就是可以共用一套模型動畫了但是你有沒有發現那動畫是和fbx模型綁在一起的,沒關系你可以選中這幾個動畫文件按Contrl+D就可以提取出來了,然后你可以把整個fbx模型都刪掉了,新生成的動畫已經不再基于fbx了,這樣可以大大減小資源大小,如果是一個程序員的話你可能會想那這個實現代碼是怎樣的呢,于是我下午進行了測試終于弄出來了,看見圖上的菜單欄多了個
AnimationClip了嗎,那個就是代碼生成的了,同樣選中動畫剪輯然后按AnimationClip里的一個項就可以實現同樣的功能了,而我寫的代碼動畫剪輯會生成在Assets/AnimationClip文件夾下,好了貼代碼
using UnityEngine; using UnityEditor; using System.Collections; using System.IO; public class AnimationClipTool{ [MenuItem("AnimationClip/GetFilteredtoAnim",true)] static bool NotGetFiltered() { return Selection.activeObject; } [MenuItem("AnimationClip/GetFilteredtoAnim")] static void GetFiltered() { string targetPath = Application.dataPath + "/AnimationClip"; if(!Directory.Exists(targetPath)) { Directory.CreateDirectory(targetPath); } Object[] SelectionAsset = Selection.GetFiltered(typeof(Object),SelectionMode.Unfiltered); Debug.Log(SelectionAsset.Length); foreach(Object Asset in SelectionAsset) { AnimationClip newClip = new AnimationClip(); EditorUtility.CopySerialized(Asset,newClip); AssetDatabase.CreateAsset(newClip,"Assets/AnimationClip/"+Asset.name+".anim"); } AssetDatabase.Refresh(); } }
文章列表
全站熱搜