Показать сообщение отдельно
Старый 26.08.2012, 17:19   #149
Nikich
Бывалый
 
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений
(для 275 пользователей)
Ответ: Вопросы по XNA.

Есть ли более легкий способ поворачивания вектора чем банальная тригонометрия, т.е.
                if (Keyboard.GetState().IsKeyDown(Keys.D))
                {
                    playerAngle += MathHelper.PiOver4 / 10;

                }
                if (Keyboard.GetState().IsKeyDown(Keys.A))
                {
                    playerAngle -= MathHelper.PiOver4 / 10;

                }
                if (Keyboard.GetState().IsKeyDown(Keys.W))
                {
                    playerSpeed += new Vector2((float)Math.Cos(playerAngle) * playerAbsSpeed, (float)Math.Sin(playerAngle) * playerAbsSpeed);
                }
                if (Keyboard.GetState().IsKeyDown(Keys.S))
                {
                    playerSpeed += new Vector2(-(float)Math.Cos(playerAngle) * playerAbsSpeed, -(float)Math.Sin(playerAngle) * playerAbsSpeed);
                }
?
(Offline)
 
Ответить с цитированием