@ztstzazz

Найти координаты x и y угла?

В игре я нажимая влево или вправо изменяю угол, вместе с этим поворачивается картинка в нужном направлении. Но проблема возникает когда я хочу передвинуть спрайт вперёд. Нужны координаты для x и y. Мне это нужно, чтобы передвинуть спрайт на следующие координаты x и y

На заметку, такой способ не подходит.
pd.x = 180 * cos ( angle ) + pd.x + 64;
pd.y = 180 * sin ( angle ) + pd.y + 64;

pd.[yx] это спрайт персонажа.
64 это половина размера картинки.
angle это угол.
Почему такой способ не подходит, потому что когда у меня поворот спрайта реагировал на перемещение мыши, то вычисление этих углов постоянно поворачивалось в направлении по кругу.
  • Вопрос задан
  • 268 просмотров
Решения вопроса 1
tsarevfs
@tsarevfs
C++ developer
pd.x += sin ( angle ) * 64;
pd.y += cos ( angle ) * 64;
Скорее всего так. Если угол в градусах, то надо перевести в радианы, чтобы считать синус и косинус:
pd.x += sin ( angle / 180. * pi ) * 64;
pd.y += cos ( angle / 180. * pi ) * 64;
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@ztstzazz Автор вопроса
Спасибо, это помогло.
pd.x += sin ( angle / 180. * pi ) * 64;
pd.y += cos ( angle / 180. * pi ) * 64;
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы