Delay e sequenciamento
Delay é o coração do stagger. Quando você entende como criar delays procedurais, nunca mais ajusta keyframe por keyframe pra criar aquela cascata.
Delay básico
var delay = 0.15;valueAtTime(time - delay)Delay por index
// layer 1: delay 0, layer 2: delay 3 frames, etc — automáticovar delayPerLayer = 3;var d = delayPerLayer * thisComp.frameDuration * (index - 1);valueAtTime(time - d)Controlado por slider
var delayControl = thisComp.layer("CONTROLS").effect("Delay")("Slider");var d = delayControl * thisComp.frameDuration * (index - 1);valueAtTime(time - d)Um único slider controla o espaçamento de todas as layers.
Por posição (não por index)
// layers à esquerda animam antes, à direita depoisvar posX = thisLayer.transform.position[0];var normalizedX = posX / thisComp.width;var delay = normalizedX * 1.0;valueAtTime(time - delay)Delay orgânico
// delay ligeiramente diferente por layer baseado em noisevar seed = index * 100;var delayNoise = noise(seed) * 0.2 + 0.1;valueAtTime(time - delayNoise)Delay reverso: saída antes da entrada
var totalLayers = thisComp.numLayers;var reverseIndex = totalLayers - index + 1;var d = reverseIndex * 3 * thisComp.frameDuration;valueAtTime(time - d)Stagger de texto: Text Animator
Para texto, o Text Animator faz delay por caractere nativamente. Mais eficiente que expressões:
Layer > Animate > Opacity(ou qualquer propriedade)- No Range Selector > Advanced > Based On: Characters
- Anima o
Startdo Range Selector de 0 a 100% - Ajusta Ease High e Ease Low pra controlar a suavidade
Mais rápido e mais estável que expressões pra animação de texto por caractere.