[ODE] Objects rotating the wrong way ?

Konstantin Voloshin volk6 at mail.ru
Thu Oct 9 15:37:49 MST 2003


Hello

I'm not sure, how wrong rotation matrix interpretation causes backward spinning
(are you using DirectX?),  but you really _are_ mapping orientation axes wrongly.

Let us call X, Y, Z basis vectors of the body's local frame of reference.
Let x, y, z be members of that vectors (coordinates along corresponding
axis of the _global_ frame of reference).

Than dBodyGetRotation returns pointer to array containing:

X.x, Y.x, Z.x, 0,
X.y, Y.y, Z.y, 0,
X.z, Y.z, Z.z, 0.

To meet with your assumption the left 3x3 submatrix of this matrix
should be transposed. Just in case, don't forget that dBodyGetRotation
returns pointer to ODE's internal data, so a copy of that array should
be transposed, not the array itself.

VolK

----- Original Message ----- 
From: "Rob Ruck" <bobruck at btinternet.com>
To: <ode at q12.org>
Sent: Wednesday, October 08, 2003 7:52 PM
Subject: [ODE] Objects rotating the wrong way ?
...
> Am i:
> 
> - Mapping the bodies orientation axises wrongly from dbodygetrotation; in 12 
> element array the first four are right/x, the second four are up/y and the last 
> four are at/z (this is not documented btw, so im going on an assumption)
...



More information about the ODE mailing list