   a matrix math question
  alright, I think I have a handle on how matrix math's visualize 3d space.  Let me ask a question so I can see how well I understand this stuff.  If you had an entity that has a position and an orientation ( a matrix ), how would you take a point that is in front of this entity, move upwards ( or any relative direction, really ) and then turn around entirely (as in, do a 180 around the x axis to look at the entity if the orientation is at the origin where y is up, x is right, etc.)   
Matrix4 Final;Matrix4 scale;Matrix4 translate;Matrix4 rotate;translate.setTranslation( Vector3(0.0f, 5.0f, 0.0f) );rotate.setRotationX( 180.0f );Final = translate * rotate * scale;I know it looks like code, but you should be able to understand easily enough. (of course the matrices for translation and rotation are created differently, but I can't remember right now, and you should be able to find them on any one of the matrix math articles, here on gamedev.   ;  The most critical part of transformations to understand are their order. The "nearer" a transformation is applied to the vector, the more local is the space the transformation occur in. If using column vectors, then the computationv' := T * R * vwill apply the transformation R directly to v, and T to the result of the former transformation.Notice that I've implicitely used the correspondence( T * R ) * v = T * ( R * v )so that one could compute an overall matrix from the particular transformations and apply it at a whole (as long as the order isn't changed, of course). The LHS is typically used in calculations (e.g. in APIs) since it boosts performance in general, while the RHS is better for explanations of what happens.   