Почему этот пример Mathf.Clamp не работает?
Я пытаюсь просто получить от 0 до 1 за 2 секунды, не превышая 0 или 1.
Mathf.Clamp(buttonPercent += (0.5f * Time.deltaTime), 0, 1.0f);
Это заставляет мое число увеличиваться за 1.
Я знаю простой способ сделать что-то подобное
buttonPercent += 0.5f;
if(buttonPercent > 1){
buttonPercent = 1;
}
... но мне любопытно, почему мой метод зажима не работает.
Спасибо!
1 ответ
Решение
Mathf.Clamp возвращает фиксированное значение и не меняет входные данные, поскольку это вызов по значению.
Измените это на:
buttonPercent = Mathf.Clamp(buttonPercent + (0.5f * Time.deltaTime), 0, 1.0f);