【发布时间】:2020-05-30 16:44:41
【问题描述】:
我目前有一个游戏对象,在按下按钮时,我在y 轴上添加速度,所以角色会跳起来......这可以按预期工作。
public float jumpForce
private void Jump()
{
playerRigidbody.velocity = new Vector2(playerRigidbody.velocity.x, jumpForce);
AudioManagerController.instance.PlaySfx(Util.AudioEffect.PlayerJump);
}
但是,这是非常线性的,玩家以恒定的速度跳跃。我想改变它,让玩家开始缓慢地跳起来,逐渐(指数?快速?不确定这里的正确词是什么)按下按钮的时间越长越快。
有点像缓入:
我尝试在update() 中将速度从0 提高到jumpForce,类似于:
jumpModifier = time.deltaTime; // In start()
...
jumpModifier = jumpModifier + time.deltaTime; // in update()
我已经尝试了其中的一些变体,但它并没有完全达到我想要的效果。
请问如何让我的角色以一种轻松的方式跳起来?
【问题讨论】: