Выражения Методы rgbToHsl(rgbaArray) hslToRgb(hslaArray) After Effects
В Adobe After Effects методы rgbToHsl(rgbaArray) и hslToRgb(hslaArray) используются в выражениях для преобразования цветов между моделями RGBА и HSLА. Эти методы полезны для работы с цветами, например, для динамического управления оттенками, насыщенностью или яркостью.
Список эффектов и не только After Effects
Выражения After Effects список
hslToRgb(hslaArray) или rgbToHsl(rgbaArray) Преобразует цвет из формата HSLA в формат RGBА и наоборот
[h, s, l, a] — H (hue), S (saturation), L (lightness), A (alpha канал).значения в диапазоне [0, 1]
————-
1
Слой меняет оттенок цвета в зависимости от времени
var rgbColor = effect(«Заливка»)(3); // Получаем текущий цвет слоя
var hslColor = rgbToHsl(rgbColor); // Преобразуем в HSL
hslColor[0] = (time % 3) / 3; // Цикл оттенка каждые 3 секунды
hslToRgb(hslColor); // Преобразуем обратно в RGB
————
3
Анимацию, где оттенок цвета (hue) меняется со временем, но насыщенность и яркость остаются постоянными.
// Задаем HSL-значения
var hue = (time % 5) / 5; // Оттенок меняется от 0 до 1 за 5 секунд
var saturation = 0.8; // Насыщенность 80%
var lightness = 0.5; // Яркость 50%
var alpha = 1 // Альфа канал включен
var hslaArray = [hue, saturation, lightness, alpha];
hslToRgb(hslaArray); // Преобразуем HSL в RGB
——-
4
Цвет изменяется в зависимости от положения по оси X в композиции: от синего в начале до красного в конце, используя HSL для более гибкого контроля над оттенком.
transform.position + time * 100; //Выражение для свойства Положение по оси Х
//Выражение для свойства Цвет заливки Слой-фигура 1
xPos = thisLayer.transform.position[0];
normalizedPos = xPos / thisComp.width;
rgbColor = [normalizedPos, 0, 1 — normalizedPos, 1];
var hslColor = rgbToHsl(rgbColor);
hslToRgb(hslColor);
position[0]: Берёт координату X слоя.
thisComp.width: Определяет ширину композиции.
normalizedPos: Преобразует положение слоя в значение от 0 до 1 (0 — слева, 1 — справа).
rgbColor: Создаёт массив RGBA, где красный канал увеличивается, а синий уменьшается при движении слоя вправо (зелёный остаётся 0, альфа — 1).
rgbToHsl(rgbColor): Преобразует RGB в HSL, что даёт нам доступ к hue, saturation и lightness.
hslToRgb(hslColor): Возвращает цвет обратно в формат RGBA, который After Effects использует для установки цвета.