I’ve spent a bit of time looking into this, and unfortunately the images didn’t submit properly in my initial post. Just to make it clear what I’m talking about, here are the curves generated by rotating an object on its local y-axis a little bit more each frame using the rotation handle for this action clip. You can see the attached image. The basic idea is, as soon as one of the euler components exceeds 360, or is below 0, the keyframe tool is instead storing an equivalent euler rotation. But that’s really bad in terms of actually recording rotation keyframes.
[attachment file=”2170″]
You can compare this to what Unity’s animation recording does in the other image I’ve attached. In Unity’s animation window, continued local rotation of a bone preserves the full euler angle.
[attachment file=”2169″]
Looking at the Slate code, I see that the rotation handle is actually just getting a quaternion value, which it converts into a vector3. It won’t preserve any non-normalized-/over-rotation.
So is there a way around this? Another option for storing rotation values without normalizing them like this?