Maîtriser les Expressions After Effects pour des Animations Dynamiques
Adobe After Effects est un outil puissant pour la création d'animations et d'effets visuels. L'une de ses fonctionnalités les plus remarquables réside dans les expressions, qui permettent d'automatiser les animations et de créer des connexions dynamiques entre les propriétés des calques, réduisant ainsi la nécessité d'animer manuellement chaque image clé.
Les expressions dans After Effects sont des fragments de code JavaScript qui peuvent être appliqués aux propriétés animables. Elles permettent de définir des valeurs uniques pour une propriété de calque à un instant donné, créant ainsi des mouvements fluides et complexes sans effort. Cette approche est particulièrement utile pour répliquer des effets comme l'inertie, le rebond ou pour créer des animations continues.
Les Fondamentaux des Expressions After Effects
Le moteur JavaScript d'After Effects, basé sur V8 sous Windows, évalue ces expressions. Les expressions manipulent des valeurs au sein d'une hiérarchie d'objets, incluant la composition, les calques spécifiques et les effets. Le menu Langage d'expression est une ressource précieuse pour insérer des méthodes et des attributs prédéfinis directement dans votre code.
Certaines descriptions de valeurs renvoyées dans la documentation des expressions incluent un nombre entre crochets, indiquant la dimension de la propriété ou du tableau renvoyé. Il est important de noter que l'utilisation de thisLayer est facultative car il représente l'objet par défaut, c'est-à-dire le calque contenant l'expression.
Types de Valeurs et Arguments Courants
Les expressions peuvent renvoyer divers types de valeurs, tels que :
- Comp (composition)
- Footage (métrage)
- Layer (calque), Light (lumière) ou Camera (caméra)
- Property (propriété)
- Number (nombre)
- Array (ensemble)
- String (chaîne)
- Boolean (booléen)
Les arguments des fonctions d'expression varient également. Par exemple, la fonction timeToFrames() prend un argument framesPerSecond (un nombre) pour définir la cadence d'une propriété. D'autres fonctions comme timeToTimecode() utilisent des arguments tels que t (temps), fps (images par seconde) et isDuration (booléen).

Fonctions Essentielles pour l'Animation
After Effects propose une multitude de fonctions intégrées pour enrichir vos animations. Voici quelques catégories importantes :
Fonctions de Gestion du Temps
Ces fonctions permettent de manipuler le temps dans vos expressions :
- timeToFrames(t, fps) : Convertit une valeur temporelle en nombre d'images.
- framesToTime(frames, fps) : Convertit un nombre d'images en valeur temporelle.
- timeToTimecode(t, ntscDropFrame, isDuration) : Convertit le temps en une chaîne représentant le code temporel NTSC.
- timeToCurrentFormat(t, timecodeBase, isDuration) : Convertit le temps en une chaîne au format d'affichage actuel du projet.
L'utilisation de timeToCurrentFormat() est recommandée pour formater et animer du texte de code temporel, offrant un contrôle plus précis que l'effet "Code temporel".
Master After Effects: Revealing How to Show Time to Frames
Fonctions de Calcul Vectoriel
Ces méthodes globales traitent les ensembles comme des vecteurs mathématiques, sans nécessiter le préfixe Math..
- Opérations de base : Addition, soustraction, multiplication, division de vecteurs.
- length(vec1, vec2) : Renvoie la distance entre deux points.
- normalize(vec) : Renvoie un vecteur unitaire dans la même direction.
- lookAt(fromPoint, atPoint) : Crée une expression pour la propriété Orientation afin de pointer un calque vers un point spécifique.
Ces fonctions sont particulièrement utiles pour des manipulations géométriques précises et pour orienter des caméras ou des lumières.
Fonctions Aléatoires et de Bruit
Pour introduire des variations imprévisibles dans vos animations :
- random(maxValOrArray, minValOrArray) : Renvoie un nombre ou un tableau de nombres aléatoires.
- gaussRandom(maxValOrArray, minValOrArray) : Similaire à random, mais avec une distribution gaussienne (en forme de cloche).
- noise(position, tiling) : Renvoie une valeur basée sur le bruit Perlin, utile pour des mouvements apparemment aléatoires mais cohérents.
La méthode wiggle(frequency, amplitude, timeless, octaves, grandient) est une expression autonome qui fait varier une propriété de manière aléatoire. Elle est souvent utilisée pour simuler des mouvements naturels.

Fonctions d'Interpolation
Permettent de lisser les transitions entre différentes valeurs :
- linear(t, tMin, tMax, value1, value2) : Interpolation linéaire entre deux valeurs.
- easeIn(t, tMin, tMax, value1, value2) : Interpolation avec un ralentissement au début.
- easeOut(t, tMin, tMax, value1, value2) : Interpolation avec un ralentissement à la fin.
- easeBoth(t, tMin, tMax, value1, value2) : Interpolation avec un ralentissement au début et à la fin.
- bezier(t, t1, t2, value1, value2) : Interpolation basée sur les courbes de Bézier.
Ces fonctions sont essentielles pour créer des animations fluides et naturelles, en contrôlant la vitesse et l'accélération des transitions.
Fonctions de Manipulation de Couleurs
Pour travailler avec les couleurs dans vos expressions :
- rgbToHsl(rgbaArray) : Convertit un tableau RVB en HSL.
- hslToRgb(hslaArray) : Convertit un tableau HSL en RVB.
- hexToRgb(hexString) : Convertit une chaîne hexadécimale de couleur en tableau RVB.
- degreesToRadians(degrees) et radiansToDegrees(radians) : Conversion entre degrés et radians.
Accès aux Calques et aux Repères
Les expressions permettent d'interagir avec d'autres éléments de votre composition :
- thisComp.layer(name or index) : Récupère un calque par son nom ou son index.
- thisComp.layer(otherLayer, relIndex = 1) : Récupère un calque situé à un certain nombre de niveaux au-dessus ou en dessous d'un autre calque.
- marker.key(name or index) : Récupère un repère de composition par son nom ou son index.
Il est important de noter que les noms de repères sont des chaînes de caractères (String) et que la valeur d'une clé de repère est également une chaîne.
Expressions pour le Texte et les Styles
After Effects offre des possibilités avancées pour animer et contrôler le texte via des expressions :
Contrôle du Texte Source
La propriété sourceText d'un calque de texte est interprétée comme une chaîne JavaScript. Vous pouvez lire le texte lui-même avec sourceText, mais pour modifier les attributs de style, vous devez utiliser la méthode setText() sur l'objet Style.
- Utilisez \r dans une expression de chaîne pour créer un saut de ligne.
- Les attributs de paragraphe peuvent être appliqués à l'ensemble du calque Texte.
- Pour référencer les polices dans les expressions, utilisez un "nom système" spécial via le menu Texte > Police.
Styles de Caractères et de Paragraphes
Il est possible de définir des attributs de style pour des caractères individuels ou pour l'ensemble du calque de texte. Les méthodes getStyleAt(index) et setText(value) sont essentielles pour lire et écrire les styles de texte.

Des fonctions supplémentaires comme setTilling(), setLeading(), setBaselineShift() permettent de contrôler finement les aspects du texte. Il est possible de lier plusieurs calques de texte à un contrôleur de police principal pour gérer le style de manière centralisée, ce qui est particulièrement utile pour les directives de marque ou les modèles.
Créer un Effet d'Écriture de Texte
L'effet d'écriture simule l'apparition progressive du texte, comme s'il était écrit à la main. Bien qu'il puisse être réalisé avec des outils tiers, After Effects offre des méthodes intégrées pour y parvenir.
Méthode avec l'effet "Stroke"
- Créez un calque de texte.
- Sélectionnez l'outil "Stylo" et tracez un masque qui suit la forme de chaque lettre du texte.
- Appliquez l'effet "Stroke" (Coup) à votre calque de texte.
- Dans les paramètres de "Stroke", réglez "Paint Style" sur "Reveal Original Image" (Révéler l'image originale).
- Animez la propriété "End" (Fin) du masque, en partant de 0% à une image clé, puis en allant à 100% quelques secondes plus tard.

Utilisation d'Expressions pour l'Animation de Texte
Bien que les expressions ne soient pas directement l'effet "Stroke", elles peuvent être utilisées pour contrôler l'animation du texte de manière dynamique. Par exemple, une expression peut être appliquée à la propriété "Source Text" pour afficher un compteur, un code temporel ou des données variables.
Plugins et Outils Complémentaires
Pour accélérer le processus et obtenir des résultats professionnels, plusieurs plugins et outils sont disponibles :
- Sabre : Offre des effets de lumière brillants et fluides pour les animations textuelles.
- Red Giant Universe : Propose une variété de préréglages d'animation de texte, y compris "Type-On" et "Text Motion".
- Animation Composer : Spécialisé dans la création rapide d'animations de texte avec des préréglages de mouvement.
- Text Animator : Permet un contrôle précis des mouvements des lettres et des révélations de style manuscrit.
- Stroke FX : Se concentre sur les révélations de traits fluides pour des effets d'écriture réalistes.
- CapCut (Éditeur Vidéo de Bureau) : Bien que différent d'After Effects, CapCut offre des effets de texte prêts à l'emploi, des animations basées sur l'IA et des outils de suivi de mouvement pour simplifier la création d'animations textuelles dynamiques.
Master After Effects: Revealing How to Show Time to Frames
Conseils et Bonnes Pratiques
- Pré-composer les calques : Pour appliquer un effet à plusieurs calques de manière cohérente, pré-composez-les d'abord.
- Ajuster la synchronisation des images clés : Pour personnaliser la vitesse d'écriture, ajustez la durée entre les images clés des propriétés d'animation.
- Utiliser les expressions pour le contrôle : Les expressions peuvent offrir un contrôle dynamique sur la vitesse et le comportement des animations textuelles.
- Sauvegarder les expressions réutilisables : Enregistrez vos expressions favorites comme animations prédéfinies pour les réutiliser facilement dans d'autres projets.
- Expérimenter : N'hésitez pas à expérimenter avec différentes fonctions et combinaisons pour découvrir de nouvelles possibilités créatives.
tags: #adapter #banniere #texte #after #effect #expression
