linear(), ease() и т.д.

linear_1

linear(), ease(), easeIn(), easeOut() это функции, занимающиеся интерполяцией, или сглаживаением графиков функций по определенному правилу. Вы с ними уже знакомы, если хоть раз ставили ключевые кадры и назначали им сглаживание типа easeIn, easeOut, easy ease.

С помощью этих функций можно заставить объекты двигаться, и при этом не используя ключевые кадры.

Рассмотрим структуру на примере функции linear (она идентична для всех остальных).

Аргументы этой функции (аргументы это то что в скобках).
time — время
t1 — начальное время
t2 — конечное

val1 и val2 соответственно начальное и конечные значения.
Если время меньше t1, будет использоваться значение val1, если больше t2, то — val2.

Попробуем передвинуть шэйп за 2 секунды из точки A в точку В. Здесь я сделал Separate Dimensions и применил это к положению по оси ОХ.
пропишем в position

Магия.
Но вместо времени мы можем использовать любую другую величину.
Создадим второй шэйп, пропушем ему в положении следующее:

Теперь мы транслируем перемещения первого шэйпа с 500 до 1000 в перемещение второго с 1500 до 750. Попробуйте и поймете.

Немного философии

Если вас интересует моделирование реальных процессов, то стоит запомнить, что в реальности линейных зависимостей практически нет.
Ease делает из линейной зависимости нечто похожее на квадратичную. Просто поменяйте linear на easeOut и посмотрите как изменится движение объектов.

Теперь применим вышеупомянутые функции так, как раньше еще не делали.

Артем Третьяков попросил написать выражение для грузовиков, останавливающихся в случайных местах.

Используем seedRandom для управления случайными числами. Если написать seedRandom(число, true) то следующее за ним случайное число, вызванное в random(), всегда будет одинаковым. Попробуйте убрать true — и random будет генерить новое число каждый кадр.

Дублируем объекты, сдвигаем их по оси ОУ и любуемся магией.
Как видите, объекты останавливаются в случайных местах, хотя я задал слишком большой разброс.

linear_2

Советую к внимательному изучению статью на motionscript.

Как разминка — попробуйте сделать так, чтобы объекты начинали и заканчивали двигаться в немножко разные моменты времени.

Если вы не поняли, почему работают случайные числа, рекомендую к прочтению цикл из трех статей по этой теме:

Часть 1. Вводная
Часть 2. seedRandom
Часть 3. Шум Перлина