I have a model that I want to rotate across the X and Y axis. My issue is that when I rotate across the Y axis, I always want the rotation to occur as if the axis was vertical in terms of world space.
If I multiply by my X rotation first, obviously the Y axis moves with it, so rotating about the Y axis will rotate it about its transformed axis.
If I multiply by my Y rotation first, the X axis moves with it, so my X rotation is now turned along with it.
I basically want to rotate downward and then left/right independently from what the actual transformed axes become...or, rotate left/right and then downward independently. When I rotate about the X, it should always rotate straight down, and when I rotate about the Y, it should always rotate left/right, no matter which rotation came first. The axes from local space should remain the same forever. If that makes any sense. :)
It seems like I need to do a Matrix.CreateFromAxisAngle() (or the quaternion equivalent), however I cannot seem to find the parameters which make it do what I want.
I'm sure I'm just being stupid...any help appreciated.
Thanks!