Как персонаж прыгает и падает — что такое гравитация в игре?
В платформерах герой прыгает вверх, а потом плавно падает вниз. Как сделать такой прыжок? Как в игре работает гравитация простыми словами?
2 ответа
В игре есть понарошку-гравитация — невидимая сила, которая всё время тянет героя вниз. 🪂
Представь: ты подбросил мячик. Он летит вверх, замедляется, на секунду замирает и падает обратно — всё быстрее и быстрее. В игре делают точно так же, только числами.
У героя есть скорость по вертикали. Когда ты жмёшь «прыжок», игра даёт герою сильный толчок вверх. А дальше каждый кадр гравитация чуть-чуть отнимает эту скорость:
скорость_вверх = скорость_вверх - гравитация
герой_y = герой_y + скорость_вверх
Сначала скорость большая — герой летит вверх. Потом она становится нулём (высшая точка прыжка). Потом отрицательной — и герой падает вниз, разгоняясь. Получается красивая дуга, как у настоящего прыжка! 🌈
Когда герой касается земли, игра ставит скорость в 0 — он стоит.
Хочешь прыжок повыше — дай толчок посильнее. Хочешь «лунную» гравитацию, где всё парит — сделай гравитацию маленькой. Поиграйся с числами, и почувствуешь разницу. 🌙
Кстати, многие движки считают гравитацию за тебя — нужно лишь включить её для героя! 🎮
Гравитация в игре — это просто число, которое каждый кадр тянет героя вниз.
Прыжок = резкий толчок вверх. Дальше гравитация постепенно гасит этот толчок, поэтому герой замедляется, останавливается в воздухе и падает обратно, разгоняясь.
Хочешь долгий «парящий» прыжок — уменьши гравитацию. Хочешь резкий — увеличь. Это одна из первых настроек, с которой весело экспериментировать. 🚀