HammundsCat We are having an issue where our character ‘breaks’ inside Unity - the rig and animations seem to be okay, and then our character’s bones get into wrong positions. That would result, for example, in the sword arm being ‘stuck’ in a weird place even though the character has performed the animation successfully prior, or shoulders being offset, or foot bones being ‘stuck’.
Sorry to hear you're having troubles! Unfortunately it's hard to tell from videos and prose text alone. Could you please share code that you use to playback animations? What animations are played on which tracks, or does it use a single track? How do you enqueue or stop animations on tracks? Are you using SkeletonAnimation
or SkeletonMecanim
as skeleton component?
Please note that the last pose of an animation is held on a track unless you add the empty animation (AnimationState.AddEmptyAnimation()
) to mix out the animation.
HammundsCat The bones get ‘stuck’ there. To remedy this we had to make a makeshift solution where we adjusted the animation within Spine so it works correctly in Unity.
You should never need to create such workarounds, instead the root of the problem should be fixed.
A side note: please be sure to export with Animation clean up
disabled in the export settings.
HammundsCat Shoulders break seemingly because the bone responsible is not correctly flipped using scale.
How do you flip your skeleton? Do you scale a certain bone in the skeleton, or do you use SkeletonAnimation.ScaleX
? Does the problem not occur if you flip the same bone in the Spine Editor? Please be sure to check whether Inherit Scale
is properly setup, and whether your potential IK setup is setup in a way which reacts properly to flipping certain bones (which you can both check in the Spine Editor).