Rotaci (uhel v radiánech) „zkonvertujeme“ na vektor. Když bude rotace 0, cosinus rotace bude 1 a sinus rotace bude 0. Když to vložíme do vektoru jako směr, gameObjekt poletí rovně doprava.
KeyboardState keystate = Keyboard.GetState(); if (keyState.IsKeyDown(Keys.Left)) uhelPohybu = (uhelPohybu - 0.05f+ MathHelper.TwoPi) % MathHelper.TwoPi; //% je modulo zbytek po dělení else if (keyState.IsKeyDown(Keys.Right)) uhelPohybu = (uhelPohybu + 0.05f) % MathHelper.TwoPi; double elapsed = gameTime.ElapsedGameTime.TotalMilliseconds; //čas mezi dvěma snímky gameObjekt.Position.X += (float)( rychlost* elapsed * Math.Cos(uhelPohybu)); gameObjekt.Position.Y += (float)( rychlost* elapsed * Math.Sin(uhelPohybu));