Повернуть спрайт в направлении вектора его движения - PullRequest
0 голосов
/ 19 марта 2012

У меня есть игра XNA для Windows Phone, и вы перемещаете спрайт с помощью акселерометра

Моя проблема в том, что я не могу понять, как заставить спрайт смотреть в направлении, в котором он движется.Пока это мой код:

        arrowPos.Y += -accelState.X*10; 
        arrowPos.X += -accelState.Y*10;

        rotation = -(float)Math.Atan2(arrowPos.Y, arrowPos.X);

1 Ответ

0 голосов
/ 19 марта 2012

Ваш текущий расчет rotation использует текущую позицию спрайта - спрайт может быть в этом положении, движется ли он на север или запад.

Попробуйте вместо этого использовать значения accelState.X и accelState.Y.

...