public void ApplyCamera() { UpdateCamera(); // rotate so z axis is up, and x axis is forward PlayerMovement playermovement = PlayerMovement.GetInstance(); GraphicsHelperGl g = new GraphicsHelperGl(); g.Rotate(90, 0, 0, 1); g.Rotate(90, 0, 1, 0); Rot inversecamerarot = camerarot.Inverse(); //inversecamerarot.Inverse(); g.Rotate(inversecamerarot); //g.Rotate(camerarot); g.Translate(-camerapos); }