L'objectif de l'UE est d'aborder l'animation en synthèse d'images sous différents aspects : de l'animation basée donnée (essentiellement issues de capture de mouvements, permettant des animations de personnage de grande qualité) à l'animation basée sur des modèles physiques (permettant la simulation de phénomènes réels tels que les fluides, le feu, le mouvement de tissus, etc.). Les cours théoriques seront illustrés par des réalisations pratiques.
Notions abordées en cours et/ou TP
Animation par modèles physiques
- Dynamique des particules : rappel de cinématique (position, vitesse, accélération), systèmes de particules, lois de Newton, forces (friction, ressort, gravité, équilibre).
- Moteur physique : méthodes d'intégration numérique (Taylor, Euler, Runge-Kutta, Verlet-Leapfrog), stabilité des méthodes d'intégration numérique.
- Animation d'objets déformables : caractéristiques des objets déformables, Mécanique des Milieux Continus (MMC), système masses-ressorts.
- Dynamique des objets rigides : concepts de la dynamique des objets rigides (repère objet, repère monde), évolution de l'état de l'objet rigide, structure de données de l'objet rigide, algorithmes de simulation.
- Détection et traitement des collisions : points de collision, réponse à la collision (force d'impulsion, force de contact), détection des collisions.
Animation de personnage virtuel
- Cinématique directe, quaternion, interpolation de rotation/transformation.
- Skinning, rigging.
- Cinématique inverse : géométrique, Gradient, Jacobien, heuristique comme CCD/Fabrik.
- Pilotage d'un personnage : machine à état, graphe d’animation, motion matching.
- Ouverture vers les approches récentes de Machine Learning pour l’animation.
Contrôleur de mouvement
- Animation interactive basée sur la physique : rappels des fondamentaux.
- Conception de contrôleurs de mouvement : contrôle dans l’espace des articulations et feedback. local, contrôle par réseau de réponse à stimulus et contrôle par optimisation de dynamique contrainte.
- Contrôleur proportionnel et dérivé, machine à états finis de poses clés, optimisation de paramètres de contrôleur.
Outils employés en TPs
TPs réalisés en C++/OpenGL avec l’utilisation de la librairie gKit2light développée par Jean-Claude Iehl et du moteur physique Box2D, ou encore utilisation du moteur Unity pour l’animation de personnage virtuel.