I took a current animation and broke out the leg into a leg and a foot when they were connected previously. now when I export the animation and use it the feet are not changing from jumping to walking and I have a new leg attachment for the jump that doesn't change.

What part in the process am I missing?

Thanks!

Related Discussions
...

I'm not really sure from your description what is going on. 🙁

Ok, let me see if I can elaborate.

I created an animation of a character walking.

  • Head
  • Body
  • Left and Right Arm
  • Left and Right Leg

I animate him and everything looks good.

Then I decide to break the legs and feet apart. So I update my vector image, export it into spine. Create a new bone for the feet, reuse the bone from the previous leg with feet for the new broken out leg. Everything looks good so far when I update the animations to use these new pieces.

I decide to create a new attachement, like the dragon wings in the example project. When the character jumps I replace these images so the legs look good when the feet are pointing down as the character jumps.

When I play it in the game I am experiencing an issue where my new feet and legs aren't resetting to the BindPose and the leg attachment isn't changing back to the new leg.

Thoughts?

Not much I can say. If it works in Spine then it should export and work in your game. AFAIK there aren't any problems like this in the runtime. I'd say it seems most likely you aren't using the updated exported data in your game.

Thanks. It looks like you didn't key the feet or legs in one of the animations. If an animation changes the skeleton, it remains changed until another animation changes it again. The is true for both bone positions and attachments.

It's hard to tell what animation has the problem, but it could be something like when you jump the leg images change to be angled at the ankle, then when you apply the walk/stand/idle animation it doesn't change the leg images so they remain as the jump animation changed them.

To fix it, you can key the leg images at the start of the walk/stand/idle animation. Or, you can key the leg images at the end of the jump animation to put them back to normal. If the jump animation loops then you could have an intermediate "landing" animation between jump and walk/stand/idle. Then when you go from jumping to standing, you'd do something like:

state.setAnimation("landing");
state.addAnimation("stand");

The first call (set) sets the animation state to a new animation. The second call (add) queues an animation to be played. Since no delay parameter is given (you may need to specify 0 depending on the runtime) it will play after the previous animation. The animation state handles all the mixing when the animations change.

Thank you! I will look at this!

Edit: Perfect! Exactly what I needed. Thank you so much for your help.