- Home /
Is it possible to crossfade into another section of the same animation?
I am trying to use CrossFade to transition from one frame to another frame of the same animation but I could not get it to work...
I have this function defined in C# to perform the crossfade.
void PlayAnimation(string AnimName, float crossfadeTime, float playbackrate, int startFrame)
{
animation.CrossFade(AnimName, crossfadeTime);
animation[AnimName].speed = playbackrate;
animation[AnimName].time = ((float)startFrame) / (animation[AnimName].clip.frameRate);
}
It works when transitioning to a different file but fail for the same file. Is there anyway that I can make it work as intended?
Answer by Tasarran · Jun 23, 2011 at 06:21 AM
In the Import settings, I would just define another animation with a different name, containing the same frames as the first one, and crossfade back and forth between the two.
It'll take a bit of coding to make your script keep track of which one is current, and which one is available to be faded, but it's not that difficult.
And how do you do that in the import settings? Do I have to duplicate the animation file in the Assets folder? Like copy and paste all animation .fbx files and append a "-copy" name behind each copy?
This is exactly what I have done. Apparently you can further split a single animation file that has the Actor@Action.fbx na$$anonymous$$g convention into smaller animation clips internally in the import settings. I had initially thought it's one or the other. Thank you for your help.
Answer by Bunny83 · Jun 22, 2011 at 12:07 PM
Crossfade will run both animations at the same time but shift the weight from the old one to the new one. Since your old and new animation is the same it can't play the animation at two different points in time and with different weights at the same time.
You can split the animation at import into seperate animation clips.
http://unity3d.com/support/documentation/Manual/Character-Animation.html
Your answer
Follow this Question
Related Questions
how to crossfade a animation and then loop it 1 Answer
Multiple Cars not working 1 Answer
Animation.CrossFade help please 3 Answers
Distribute terrain in zones 3 Answers
Animation Doesn't CrossFade At End 0 Answers