Выражения. Метод 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 секунд слой остается на месте
}