So I’m having a big problem. I am trying to create an melee attack animation. However when I create the attack there is no “Animation” component (Just “Animator”) which means that I can’t turn automatic Repeat off. After some searching I finally added the “Animation” component manually. I attached the “Attack” animation to the component, but now every time I try to play the animation I get the error
“The AnimationClip ‘Attack’ used by the Animation component ‘Mace_unity2’ must be marked as Legacy.” I searched around and found a way to mark it as legacy, but I suppose that that, is on an older version of Unity since I can’t find it anywhere. So my question is :
How can I mark an animation as legacy in Unity 4.3?
Thanks
Select the fbx file which contains the animation. Select the Rig tab in the inspector and choose Legacy as Animation Type.
If you create the animation file on your own in Unity, I guess you can’t use legacy anymore.
you can hit “debug” on the animation component and manually turn the value to “1”
note changes to anim files and use

2 = mecanim, attaching an anim with value type “2” as an animation component on a prefab is legacy and gives error
[note “Wap Mode” methods are located in this debug inspector]

There is no need to use a legacy component though; you can delete this component since it is ONLY legacy
use the Animator with the Anim file that has Animation Type = “2” (that is the >=4.3 default)

drag it into the animator (mecanim).
(*.Anim files marked Animtion Type 1(legacy) will not be able to be dragged into here)
check on the normal inspector to make sure it doesn’t loop time either

I have a problem when I go into debug mode the Animation Type bar is not even there. So could someone help it is really annoying!
Thank You So much!
great! Perfect!
this guide is very helpful to me
thx m8
If you don’t want to mark your animations as legacy, you can use the new Playables API to play non-legacy AnimationClips:
private List<PlayableGraph> graphs = new List<PlayableGraph> ();
// Just call this function when you want to play an AnimationClip on a specific GameObject.
// from https://docs.unity3d.com/Manual/Playables-Examples.html
private PlayableGraph playAnim(AnimationClip clip, GameObject obj) {
PlayableGraph playableGraph;
AnimationPlayableUtilities.PlayClip(obj.AddComponent<Animator>(), clip, out playableGraph);
// save all graphs we create and destroy them at the end of our scene.
// you might need to optimize this if you make a lot of animations.
graphs.Add (playableGraph);
return playableGraph;
}
void OnDisable() {
foreach (var g in graphs) {
g.Destroy();
}
graphs.Clear ();
}
I’m using the standard assets (just 2D and cross-platform input), which don’t seem to include any .fbx files. Help?
Thanks for the clear explanation.