Objectif
Simuler dynamiquement les cheveux, le pagne et les manches du personnage pour donner un aspect plus vivant et fluide à l’animation, sans recourir à des keyframes manuelles.
 Fonctionnement général

Deux approches sont utilisées selon les besoins d’esthétique et de contrôle :
Cheveux : utilisation de nodes Anim Dynamics dans l’AnimGraph pour une simulation légère, fluide et légèrement chaotique.

Accessoires (pagne et manches) : utilisation du Control Rig avec des nœuds Spring Interpolate pour plus de stabilité, de contrôle directionnel et de rebond maîtrisé.
Détail du pipeline (étape par étape)

[Cheveux – Anim Dynamics]
Création d’un Cached Pose puis conversion en Local Space (Local To Component)

Ajout d’une série de Anim Dynamics (Alpha : 0.5–0.8) sur les chaînes de bones des cheveux

Réinjection dans la pose animée pour affecter la simulation en runtime

[Pagne & Manches – Control Rig]
Dans le Control Rig : Get Transform des bones de base en Global Space

Application d’un Spring Interpolate pour simuler une inertie sur la rotation

Set Transform avec le résultat interpolé, appliqué avec Propagate to Children pour entraîner les extrémités
Problèmes rencontrés
Cheveux : trop d’instabilité au départ avec Spring Interpolate (oscillations incohérentes sur plusieurs bones en chaîne)

Pagne : collision manquante avec le corps / clipping trop fréquent

Difficile de rendre l’effet crédible sans dévier du style cartoon
Solution implémentée
Cheveux : basculé vers Anim Dynamics pour bénéficier de la gestion automatique des contraintes sans surprogrammation

Pagne & manches : resté sur Spring Interpolate mais limité à 1 bone par élément, avec damping élevé et Critical Damp activé

Réduction du poids de Set Transform (Weight = 1.0 mais pas Maintain offset) pour éviter l’effet de flottement constant
Tests et validation
Mode simulateur dans l’Editor pour tester les bones dynamiques sans lancer le jeu

Print debug sur la rotation des bones dans le Control Rig

Comparaison du comportement sur terrain plat vs. terrain avec mouvement de caméra
 Visuels
Colle ici des captures d’écran :
Blueprint

Résultat dans le viewport

Console debug si pertinent
Notes personnelles ou améliorations futures

Ajouter un contrôle runtime sur l’intensité des effets via une Curve de gameplay ou un Scalar Parameter (ex : intensité du vent)

Ajouter des collisions de capsule sur les manches et le pagne avec Physics Asset léger

Centraliser tous les réglages de spring (damping, intensité) dans une DataTable pour pouvoir les tweaker sans recompiler le Control Rig

Expérimenter avec Chaos Cloth pour des versions plus avancées en runtime ou cinématique
Back to Top