- Home /
How do you manually override mecanim's interpolation with rotations?
I am struggling with a very simple animated fox. I rotate an object on the npc that holds the sprites for its bicep/forearm/frontpaw etc. The interpolation in mecanim decides not to rotate between my two points in the desirably shortest method. I have set the interpolation to Euler, Quaternion, etc. I have also tried canceling out smoothing problems from free to linear, etc. Essentially, when rotation from 16.5 degrees to 16.2 degrees, instead of rotating the .3 degrees, it forces the arm to rotate 359.7 degrees in the other direction. This is true in both directions, so the same occurs between 16.5 to 16.2 as it does from 16.5 to 16.8. I've been working in unity for a while, and I'm not sure why this happens at all.
Answer by theANMATOR2b · Aug 08, 2016 at 01:29 PM
Review release notes on Unity updates. This was fixed in either the update before 5.4 or in the 5.4 update.
Answer by The_tubby1 · Aug 08, 2016 at 12:50 PM
I'm not an expert at all but maybe i can help. I also have this problem and don't exactly have a fix but the way i go about it is changing from "dopesheet" to "curves" (next to dopesheet) in the animation tab. You can do the animation with the "dopesheet" but once you've rotated the arm for example, you may need to go in to the "Curves" section ,with the over rotating body part selected, and drag the blue line down (to the point below the yellow line maybe) that it still creates the desired animation but now it rotates without doing a full 359 degree rotation for the 1 degree you may want for example. I hope this makes sense. if you need an example, i'll be happy to provide one if you don't understand what i'm saying. As i say, i'm no expert.