Добавлен , опубликован

Немного об AnimationCurve

Вот график AnimationCurve
У Curves нет понятий осей XY, однако интерпретировать можно такие значения как time и value (рис.1)
Будем говорить просто - time - это ось Х. Ось Y - это value.
time и value хранятся в Keyframe'ах. Keyframe - это точка, через которую проходит кривая.
В примере ниже, у кривой есть 3 Keyframe'а.
В примере ниже, я покажу как можно использовать кривую:
Здесь я использую специальный метод Evaluate(), который задаёт скорость движения нашему объекту. Это первый пример того, как можно использовать Curves. Для работы с движением. Само движение сделано через Vector2.Lerp(). В данном примере была использована кривая, которая была показана чуть выше.
В основном используют метод Evaluate() для того, чтобы менять значение по кривой. Я также тестировал их в качестве Waypoint's, но это лишь была практика. В действительности, вы должны делать Waypoint's через N'ое кол-во точек, а вот скорость передвижения к этим точкам можно регулировать через кривые, как в примере выше.
Если вы работали со стандартными ассетами Unity, то могли встретить Curves у FPSCharacter'а. С помощью кривых можно делать наиболее реалистичное движение. Также и с авто.
Примеров использования кривых можно перечислять великое множество, например: звук (громкость и т.п.), анимация, видео (вы могли видеть, как в некоторых видео, картинка то быстро менялась, то приходило в исходное состояние, либо так называемый эффект Slow Motion. Его тоже можно сделать через кривые в Unity) и прочее.
`
ОЖИДАНИЕ РЕКЛАМЫ...