Этот вопрос закрыт для ответов, так как повторяет вопрос Как сделать так, чтобы скорость по диагонали не складывалась?
@Yurenty
In Gamedev we trust

Как сделать так чтобы скорость Х и Y не складывалась при движении по диагонали?

Здравствуйте! Не так давно задавал вопрос, сейчас хотел бы уточнить кое что:

У меня складывается скорость по векторам Х и Y, игра top-down, хотел бы, чтобы такого не происходило.

Я прошу Вас подсказать мне решение, потому что личные потуги не принесли результата. У людей в гайдах (даже в официальных документах GMS) сохраняется та же проблема, но они её попросту игнорируют (или не считают проблемой). Под предыдущим вопросом мне посоветовали "Найти вектор движения, нормировать к единице, умножить на скорость. ", честно, пытался, так и не придумал как это сделать с использованием функции move_and_collide.

(Если Вы можете посоветовать другой способ которым можно было бы сделать передвижение и коллизию, я был бы признателен)

Вот код:
var x_input = keyboard_check(ord("D")) - keyboard_check(ord("A"));
var y_input = keyboard_check(ord("S")) - keyboard_check(ord("W"));

move_and_collide(x_input * global.spd, y_input * global.spd, Obj_collision);
  • Вопрос задан
  • 170 просмотров
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы