【转】Unity3d:读取FBX中的动画

从模型中获得切割好的动画clip,并且对其中设置好的动画事件进行修改方法:

1.动画模型后缀为.FBX.在Unity3d中,能够显示FBX中的动画。要加载模型中的AnimationClip,只要AssetDatabase.LoadAssetsAtPath(fbxPath,typeof(AnimationClip))就可以了。

这样就加载出了FBX中的动画。

void AnimLoad(string fbxPath)
    {
        AnimationClip clip = AssetDatabase.LoadAssetAtPath(fbxPath, typeof(AnimationClip)) as AnimationClip;
    }

2.想要加载FBX中切割好的多个AnimationClip。既然知道FBX中包含的类型我们都可以加载到,那么就全部加载出来,在遍历得到我们想要的类型:

void AnimLoad(string fbxPath)
    {
        Object[] objs = AssetDatabase.LoadAllAssetsAtPath(fbxPath);
        foreach (Object o in objs)
        {
            if (o is AnimationClip)
            {
                Debug.Log(o.name + "is clip");
            }
        }
    }

3.我想要操作animationClip中的其他信息,可以用AnimationUtility

void AnimOperation(AnimationClip clip)
    {
        AnimationEvent[] evs = AnimationUtility.GetAnimationEvents(clip);
        foreach (AnimationEvent e in evs)
        {
            Debug.Log("do something");
        }
    }

原文地址:https://www.cnblogs.com/timeObjserver/p/8310668.html