@Surface-ketch

Как сделать одинаковую силу прыжка в unity?

По клику мышки объект подпрыгивает, кол-во прыжков не ограничено, то есть прыжки можно совершать в воздухе. Если использовать addforce, то при каждом последующем прыжке сила увеличивается во много раз и объект просто улетает в "космос". Как сделать, чтобы все прыжки были одинаковыми?
  • Вопрос задан
  • 1214 просмотров
Решения вопроса 1
MrMureno
@MrMureno Куратор тега Unity
VR for all
docs.unity3d.com/ScriptReference/Rigidbody.AddForc...

Там есть параметр - тип применяемой силы, вам я так понимаю нужен docs.unity3d.com/ScriptReference/ForceMode.Impulse.html

Импульс. разовое применение силы. эдакий пинок под зад)
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
Deerenaros
@Deerenaros
Программист, математик, задрот и даже чуть инженер
GetComponent<Rigidbody>().velocity += new Vector(0, jumpPower); // зависит от оси, по которой прыгаем


Впрочем, при применении AddForce по сути происходит всё тоже самое, только делится на массу (второй закон Ньютона). Поэтому проблема скорее в бесконечных прыжках. Можно сделать небольшой тайм-аут на прыжок, чтобы ограничить скорость роста.
Ответ написан
@Surface-ketch Автор вопроса
Ваш ответ на вопрос

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

Похожие вопросы