ANIMATION 1 : ANIMATION D`ACTEURS VIRTUELS PAR
Transcription
ANIMATION 1 : ANIMATION D`ACTEURS VIRTUELS PAR
ANIMATION 1 : ANIMATION D’ACTEURS VIRTUELS PAR ARMATURES ET SKINNING Rémi Ronfard, Animation, M2R IICAO Plan du cours Cours 1: Armatures (squelettes) et attachement a la surface du corps (skinning). Cours 2: Animation par keyframes + techniques d’interpolation TP : animation procédurale dans Blender Cours 3: Cinématique inverse TP : programmation d’un rig dans Blender TP : animation d’une marche dans Blender Cours 4: Animation physique TP: animation faciale dans Blender Motivation : virtual movie making Movie example : A few good men Machinima example : a few good g-men Other motivating examples : The wizard of Oz Blender movies : The beast by Roland Hess (Animating with Blender) Sintel by Colin Levy (Blender Foundation) PRINCIPES DE L’ANIMATION ~1930, Studios Disney The Illusion of Life 1 Squash & Stretch 5 Déformations - Pseudo physique <<motion blur>> Conservation du volume 2 Anticipation 6 Guide l’attention, annonce l’action… …prépare un gag mouvement C2… 3 Staging 7 [Mise en scène] Atmosphère, éclairage, … « Present the idea so that it is unmistakably clear » 4 Rigging & pose to pose animation 8 Préparation des personnages Skelettes, articulations, etc. etc. 5 Follow-through et Overlapping 9 Enchaînement des actions 6 Slow in & Slow out 10 Fluidité des mouvements (Continuité C2 des déplacements) 7 Secondary actions 11 Donner de la richesse Hiérarchie/articulations En retard 8 Arcs 12 Courbes naturelles Non-synchronicité des mouvements 9 Timing 13 Masse Taille 10 Exaggeration 14 11 Solid drawing The principle of solid drawing means taking into account forms in three-dimensional space, giving them volume and weight 12 Appeal Appeal in a cartoon character corresponds to what would be called charisma in an actor Cours 1: Rigging et skinning Introduction : techniques génériques qui s’appliquent à l’animation de tous les « acteurs », humains ou non Squelette et cinématique Chair et peau : skinning, smooth skinning, muscles, graisses, plis Vêtements : maillages, éléments finis, Référence : Marie-Paule Cani, Caroline Larboulette, Nadia Magnenat-Thalma, Pascal Volino : les techniques d’habillage : peau, vêtements et chevelures, chapitre 8 du traité de réalité virtuelle, tome 5 : les humains virtuels. Animation et interpolation Animation par keyframes Comment interpoler les mouvements entre deux positions « clés » Mouvements articulés Mouvements articulés Mouvements rigides et articulés Le mouvement de chaque articulation est rigide Dans le repère d’axes de son père Dans le repère d’axe du monde Un mouvement rigide est une matrice 3 X 4 Mouvements articulés : translation, rotation et changement d’échelle Mouvements rigides : rotations Convention de Denavit-Hartenberg Skinning Nous avons un squelette articulé, qui définit des transformations de l’espace Le problème – comment associer la « peau » des personnages avec leur « squelette » ? Skinning rigide: chaque sommet de la « peau » bouge avec un seul « os » P(vi)= Tf P0(vi) où Tf est la transformation du bone Smooth skinning Aussi appelé « Skeleton Subspace Deformation » Chaque sommet de la peau bouge avec tous les « os » voisins Calcul automatique des poids de chaque sommet P(vi)= (sum_f wif Tf )P0(vi) où les poids wif sont normalisés (sum_f wif = 1) Par exemple wif = 1/dif2 Ou dessin des poids de chaque sommet Interpolation non linéaire Matrice de transformation homogène Tf = [SR|t] contient 12 paramètres non indépendants 3 translations, 3 rotations, 3 changements d’échelle Controler séparément les 12 composante de la transformation Tf Calcul automatique des poids Wang et Philips, Multi-weight enveloping: least-squares approximation techniques for skin animation, SCA 2002 Calcul des poids : Bone Heat Weighting Automatic Rigging and Animation of 3D Characters Ilya Baran and Jovan Popovic, SIGGRAPH 2007. Quelques exemples Interpolation de quaternions Skinning with Dual Quaternions Ladislav Kavan, Steven Collins, Jiri Zara, Carol O'Sullivan. Symposium on Interactive 3D Graphics and Games, 2007. Deformation de cages L’armature déforme une « cage » (lattice) qui déforme la peau Roland Hess, Animating with Blender, A suivre Demain : TP programmation d’un rig en python 3.0 dans Blender 2.55 La semaine prochaine : Animation par keyframes + techniques d’interpolation