Original Post
Hello. I am currently exploring making a space ship game with DirectX using C#. My current dilema is how to control the space ship correctly. My aim is to create a mechanism where in order to change the direction the ship is going you have to roll left or right and then pitch to travel in the correct direction. This is how the ship starts: http://jenova.defcon-gaming.com/game/game-start.jpg Then when I roll: http://jenova.defcon-gaming.com/game/game-roll.jpg And when I pitch: http://jenova.defcon-gaming.com/game/game-pitch.jpg And, finally, the combination of the two: http://jenova.defcon-gaming.com/game/game-combined.jpg The white arrow indicates the dirctions the ship should be looking in. My code is as follows: renderDevice.Transform.World = Matrix.Scaling(renderObjects.Scale, renderObjects.Scale, renderObjects.Scale) * Matrix.RotationYawPitchRoll(renderObjects.Yaw, renderObjects.Pitch, renderObjects.Roll) * Matrix.Translation(renderObjects.X, renderObjects.Y, renderObjects.Z); this little bitty is scaling the model being rendered, applying the correct yaw,pitch and roll and moving it to it's correct co-ordinates in world space. Can anybody please suggest the correct matrix math to achive the desired effect?