В настоящее время у меня есть игровой объект, и при нажатии кнопки я добавляю скорость по оси y
, поэтому персонаж подпрыгивает ... и это работает, как ожидалось.
public float jumpForce
private void Jump()
{
playerRigidbody.velocity = new Vector2(playerRigidbody.velocity.x, jumpForce);
AudioManagerController.instance.PlaySfx(Util.AudioEffect.PlayerJump);
}
Однако это довольно линейно, игрок подпрыгивает с постоянной скоростью. Я бы хотел изменить его так, чтобы игрок сначала подпрыгивал медленно, постепенно (экспоненциально? Быстро? Не знаю, какое здесь слово) тем быстрее набирал высоту, чем дольше нажата кнопка.
Вроде как легкость:
Я пробовал увеличить скорость с 0
до jumpForce
в update()
, аналогично:
jumpModifier = time.deltaTime; // In start()
...
jumpModifier = jumpModifier + time.deltaTime; // in update()
Я пробовал несколько их вариантов, и он не совсем выполняет то, что я хочу.
Как мне заставить моего персонажа подпрыгнуть в легком прохождении вроде как пожалуйста?