void Update()
{
Jump();
}
private void Jump()
{
if (Input.GetKeyDown(KeyCode.W))
{
var jumpVel = new Vector2(0, jumpForce * Time.deltaTime);
rb.velocity += jumpVel;
}
}
Time.deltaTime
имеет разное значение каждый раз.var jumpVel = new Vector2(0, jumpForce * Time.deltaTime);
- вы пытаетесь вместо силы добавить скорость.rb.velocity += jumpVel;
- вы добавляете скорость, поэтому сумма может равняться хоть нуля. Рекомендую задать скорость жёстко: rb.velocity = jumpVel;