matrix-rotation problem - Printable Version
+- iDevGames Forums (http://www.idevgames.com/forums)
+-- Forum: Development Zone (/forum-3.html)
+--- Forum: Graphics & Audio Programming (/forum-9.html)
+--- Thread: matrix-rotation problem (/thread-7253.html)
matrix-rotation problem - <seb> - Mar 6, 2003 01:28 PM
i am doing the following:
i have an object, position and orientation are stored
in a translationMatrix and a rotationMatrix. when rendering
the object, i compose a transformationMatrix with them.
now i want to rotate the object around its own z-axis.
i try to do that by multiplying the rotationMatrix with another
rotationMatrix representing a rotation around the z-axis.
but my object rotates around (0/0/0), not the objects position!
i seem to have followed the example i found in the article from
diana gruber, but the effect i get is not the one i wanted ...
what is wrong?
matrix-rotation problem - Tycho - Mar 6, 2003 02:39 PM
You have to rotate your object while it's still centered around the origin, and then translate it.
matrix-rotation problem - kelvin - Mar 6, 2003 03:26 PM
yeah, reverse the order of the matrix multiplies.
idealy if you're going to have 4 transforms, namely:
Rotation (around a local origin offset)
Scale (around the same local origin offset)
Origin offset (translate)
you want to use the gl(Scale/Rotate/Translate) in the above order when setting up your matrix. Then just draw your polygons as if unscaled/rotated at the origin.