Animation popping

I know probably a million people ask this and I’m sorry.
I just finished a third person character and have animations for walking and idle, and everything is great.
However…It seems that 80% of the time when the animation loops around it sort of pops. It does not do it 100% of the time.
Any ideas?

… i got the same problem in Windows, now i’m using Mac, and everything works fine… maybe a bug… (even if the animation was made in Unity itself…).

What are your settings on splicing (the animation thingy)?

lol, well I would never switch to a mac, ever.
but anyway, i have idle frames 0-240 walk 241-271, no rune animation.
ive seen a video where a guy had the same problem, but ive already done what he did to fix it.
the script i have does the loop for me for idle and walking so maybe the fault is there, so wrap mode is default and loop is not checked.

can you take a snapshot?

of the settings? yeah i will…sec

okay here it is

i should note…
i dont use a run animation, the code i have calls for one, and instead of deleting the part of the code i just used a blank animation.

240 frames for an idle loop?

Did you try playing around with the settings? Change the loops and stuff.

i knew you were going to say that, yeah 240 seems like a lot (its not a serious game its kind of joking and all)
anyway, yeah i tried playing around with the settings, it doest do it all of the time, i can try adjusting the frames, but in the animation from maya it was synced perfectly from the last to the first frame and it looks great in maya

I’m not sure what it is then. Just might be a bug. lets see if its in 3.0…

My guess is: you have very small intervals between your animations (i.e. idle end 240, the next one starts 241). It’s a known problem in Unity. Unity imports whole animation first, then smooths it and then breaks it into parts, so I you have a big jump in curve between240 and 241 it will affect tangent curves on 239 and 242. I know it’s a mess, I tried to fix that for 3.0, by extracting curves exactly as they are from fbx, and I did that for position curves, but I failed to implement it for rotation problems, because of limitations in FBX SDK. I’ll try to fix it later…

So for now just add a couple extra keys. In theory extra 2 keys should be enough (but you can add a couple more just to be sure):

  1. In max first animation should finish on 241 and new one should start on 242
  2. In Unity set 240 as animation end and 243 and next animation start

okay, i kind of had a feeling that might have something to do with it, i’ll try that now. thanks a lot! :slight_smile:

This is still an issue. Example: “Popping” an object from place to place in Maya results in bad animation in Unity. Unity modifies the curves between keyframes, then samples from those inbetween-frame curves during playback. The user has no direct control over those curves.