Выражения. Метод easeOut(t, value1, value2) в After Effects

Метод easeOut(t, value1, value2) в After Effects используется для создания плавных анимаций с эффектом замедления в конце. Она применяется в выражениях (expressions) для управления изменением значений свойств слоев.

Список эффектов и не только After Effects
Выражения After Effects список

t — это параметр, который определяет текущее время или прогресс анимации. Обычно это значение от 0 до 1, где:
0 — начало анимации,
1 — конец анимации.

value1 — начальное значение, которое будет возвращено, если t = 0.
value2 — конечное значение, которое будет возвращено, если t = 1.

Допустим, вы хотите, чтобы объект плавно перемещался из точки A в точку B с замедлением в конце.

// Пример для свойства «Position»
t = time / 4; // Время анимации (4 секунды)
startPos = [100, 100]; // Начальная позиция
endPos = [1000, 300]; // Конечная позиция
easeOut(t, startPos, endPos);
—————————————

Если нужно, чтобы объект увеличивался с замедлением в конце.

// Пример для свойства «Scale»
startScale = [100, 100]; // Начальный масштаб (100%)
endScale = [200, 200]; // Конечный масштаб (200%)
t = time / 3; // Время анимации (3 секунды)
easeOut(t, startScale, endScale);
———————————-

Для создания эффекта плавного исчезновения объекта.

// Пример для свойства «Opacity»
startOpacity = 100; // Начальная прозрачность (100%)
endOpacity = 0; // Конечная прозрачность (0%)
t = time / 4; // Время анимации (4 секунды)
easeOut(t, startOpacity, endOpacity);
————————————

Для создания плавного вращения с замедлением в конце.

// Пример для свойства «Rotation»
startRotation = 0; // Начальный угол (0 градусов)
endRotation = 360; // Конечный угол (360 градусов)
t = time / 5; // Время анимации (5 секунд)
easeOut(t, startRotation, endRotation)
—————————————

Если нужно добавить задержку перед началом анимации.

// Пример для «Opacity» с задержкой
delay = 4; // Задержка 4 секунды
startOpacity = 100;
endOpacity = 0;
t = Math.max(0, time — delay); // Анимация начнется после задержки
easeOut(t, startOpacity, endOpacity);
————————————

Предположим, вы хотите, чтобы слой двигался вправо от 0 до 1000 пикселей за первые 4 секунды композиции с замедлением в конце.

var t = time/4; // Текущее время
var startValue = [0, 0]; // Начальная позиция X
var endValue = [1000, 500]; // Конечная позиция X
var duration = 4; // Длительность в секундах

if (t <= duration) {
easeOut(t, startValue, endValue);
} else {
endValue; // После 4 секунд слой остается на месте
}