A new question which has nothing to do with gluUnProject.
Suppose we have the following pseudocode
addChild(Translation)
Translation.addchild(Rotation)
Rotation.addChild(ourShape)
This should create a branch which looks like:
Root --> Translation --> Rotation --> outShape
Supposed our object starts at (0,0,0)
I thought the above would first translate the object (lets say to (0,10,0))
Then it would do a rotation around the origin (0,0,0)
However, when I actually code this up it does the rotation around the center of the object. I’m a little confused by that. I thought if you want to rotate the object around it’s own center you need to do the rotation first then the translation.
Can someone point out where I’m wrong in my thinking?
On another note. Shouldn’t these two blocks of code do the exact same thing? BLock 1 works for me and Block 2 does not.
Block 1: (Position is a vector3f)
translate.setTranslation(position);
translateGroup.setTransform(translate);
Block 2:
(position is the same as above)
Matrix4f transMatrix = new Matrix4f();
transMatrix.setTranslation(position);
translate.set(transMatrix);
translateGroup.setTransform(translate);
Thanks. ~shochu
