[ODE] passing scaled matrix to dBodySetRotation
Osborn, Chris USA
cwosborn at nps.edu
Fri Jan 7 15:15:49 MST 2005
Hi, I am working on an open-source game engine called Delta3D (http://delta3d.org) that uses ODE.
I was trying to throw in a simple scale function for our transform matrices by multiplying the scale factors down the diagonal as usual, but I found that the scaled effect is clobbered when we pass the rotation matrix to ODE, calculate physics, retrieve the matrix and reset ours. This is happening because ODE must internally normalize matrices inside of dBodySetRotation. Unfortunately normalizing ditches all scaling, and furthermore reapplying the scale gives the matrix an incorrect rotation!
Simple problem, but we're having a hell of a time coming up with a good solution. Any thoughts? Thanks!
More information about the ODE