У меня есть персонаж, который запускается в воздух с помощью
rb.AddForce(direction * punch_strength_value * punch_strength_total);
Я хочу, чтобы этот персонаж замедлялся, чем выше он находится в воздухе, создавая "мягкий лимит", поэтому персонаж не go слишком высоко. Я понял, что это можно сделать, изменив сопротивление Rigidbody в соответствии с ростом персонажа, но я ошибся:
public float height_slowdown = 1;
void Update()
{
heigth = transform.position.y;
rb.drag = height * height_slowdown;
}
Используя это, персонаж взлетает в воздух и затем очень резко замедляется, как будто была невидимая стена (это означает, что значение X больше не меняется). Затем он очень медленно падает на землю.
Персонаж начинает с X: 0 Y: 0, если это может помочь.
Как мне заставить персонажа замедлить рост чем он выше?