whereamI Thank you for the email. I've checked the files you sent. This isn't an implementation issue in Godot, but rather a problem with the original animation settings. If you play the animation you want to loop continuously in Spine's Preview view, you'll see similar strange behavior:
The reason for this outcome is that the bones used to flip the character between these two animations are different. In R/slithering-rotate-1
, the character's inversion is achieved by modifying the scale of bone2
, while in L/slithering
, it is achieved by modifying the scale of the root
bone, with bone2
's scale returning to normal. This caused two mixes: one where the root bone, which was not originally flipped in R/slithering-rotate-1
, became flipped, and another where the bone2
bone, which was originally flipped, reverted to its normal state. This resulted in the strange behavior you observed.
To resolve this issue, please standardize which bone is used to flip the character.