Replying to
@archo@mastodon.gamedev.place From looking at it, it makes sense to me (there might be edge cases I am missing). Slerp computes a rotation with constant angular velocity around a fixed axis from q0 to q1. Now keep in mind that a rotation quat basically encodes axis angle (v* sin a/2, w*cos a/2) so it is already similar. The second method computes the relative rotation (q0 to q1), extracts axis + angle from that and interpolates the angle, so it is a constant angular velocity around a fixed angle, just like the first!