Got it, and that's fixed, thanks!
If it helps your testing, I've noticed some weirdness on IK bend directions. We have a skeleton with 2 arms that have the Positive bend direction ticked (in the editor), and 2 legs without this ticked. The animations in the editor play back fine, however in the runtime, both arms are bent in the wrong direction.
I've been debugging it, and the code loads the bendDirections from the JSON ok, and sets up the spIkConstraints ok when the skeleton is initialised.
However, when it comes to applying the IK in spIkConstraint_apply2(), the bendDirection is always -1!
Digging further, this code in _spIkConstraintTimeline_apply() in animation.c is setting the bendDirection to be -1, instead of 1, resulting in the wrong direction when drawn:
if (time >= self->frames[self->framesCount - 3]) { /* Time is after last frame. */
ikConstraint->mix += (self->frames[self->framesCount - 2] - ikConstraint->mix) * alpha;
ikConstraint->bendDirection = (int)self->frames[self->framesCount - 1];
return;
}
Commenting out the bendDirection assignment fixes it, but presumably this will cause other bugs at some point!