PDA

View Full Version : Rotation Order Bug!!


hmn3d
03-27-2008, 10:16 PM
Hi,
I think I´ve found a bug in XSI 6.5.

If I change the axis rotation order of an object with neutral pose defined, then rotate it more than 360 degrees, when I move this object the rotation back to 0.

I´ve made a video showing this:
http://screencast.com/t/oMgPYlSsJJ2

Without neutral pose defined, it works fine.

Does somebody have a solution?

Thanks....
Henrique

thiago
03-28-2008, 04:46 AM
hehe it's not a bug, it's a normal mathematic resolution on euler rotations.

If you think in numbers, 360 degrees in euler is = 0 degree

It's so true that if you put "361" XSI will resample this value to "1"
If you put "359" XSI will send it to -1.
if you put 400, XSI will give you the 40 degrees that last from 400 - 360

If you use multiple axis, XSI will recalculate those values to the current Axis order, and will end up rearranging values for all axis.

The way you can rotate and see the REAL rotation using euler is using the "add mode". This will show you the true axis order and the real degree on each axis with gimbal lock and all. Still as it will work on euler system it will always be managing all values for you.

This will not happen with keyframes in an fCurve because XSI will try to guess a continues rotation angle for that.
If it doesn't, you can still force it in the animation>make rotation key continuous
But obviously it need more than one keyframe.. and if you put 360 in just one axis there's no other reference for that so it will end up with 0 anyway. :P
If you start with a keyframe in 0, and then put another on 360, XSI will use internal functions to make this a continuous rotation curve.

If you need it you can use quaternions you can go on animation>convert euler to quaternions and then you'll have a single solution for all axis. I think quaternions are bad for 99% of the cases but it can be useful, eventually :P

I like numbers but I'm not a mathematician, so I can be explaining it in the wrong way...
But definitely it's not a bug.

hmn3d
03-28-2008, 11:02 AM
Hi Thiago, I undestand but I still think it´s a bug, because the neutral pose or the order of rotation axis. Without neutral pose or with the order in XYZ the rotation works normaly, for me it´s a problem, because I have a rig that calculate the rotation of leg based on rotation of the pelvis, but when I try to move the pelvis the legs flip.

In portuguese:
Opa, melhor assim, meu ingles é muito fraco. Isso só acontece quando eu uso neutral pose ou quando eu mudo a ordem de rotação. Se estiver em XYZ não acontece, por isso que eu acho que é um bug. Eu, tenho um rig com twist na coxa, e uma expressao que controla a rotação dessa coxa baseada na rotacao da bacia. Quando eu tento mover a bacia minha perna "flipa" porque a rotacao volta para 0.

Thanks...
Abraço...


Henrique.