lerp бесполезен, потому что он работает с постоянным временем, а не с постоянной скоростью.
lerpangle работал скорее как Слерп, чем лерп, и не имел постоянной скорости.
Когда я хочу перемещаться между двумя местами с постоянной скоростью, я могу использовать вектор2.movetowards, но я не могу использовать float.movetowards, поэтому у меня есть что-то вроде сделал это, сделав это
Код: Выделить всё
theAngle = (Vector2.MoveTowards(new Vector2(theAngle,0),new Vector2(EndAngle,0), lerpSpeed * Time.deltaTime)).x;
Я попросил Google показать мне лерпа с постоянной скоростью, но он продолжает выдавать мне лерпа с постоянной скоростью. постоянное время. Вот что это дает. Не знаю, сколько раз я пытался это выразить, но все время возвращаюсь к этому.
Код: Выделить всё
float tween = t / lerpSpeed;
float angle = Mathf.Lerp(animateFrom, animateTo, tween);
t += Time.DeltaTime;
Подробнее здесь: https://stackoverflow.com/questions/792 ... tant-speed