10 likes | 80 Views
Aurélien Barbier LIRIS Université Claude Bernard Lyon 1 Nautibus, 8 boulevard Niels Bohr 69622 Villeurbanne Cedex aurelien.barbier@liris.cnrs.fr http://liris.cnrs.fr/aurelien.barbier. à partir d'images 2D. personnages 3D. Animation de. blanc : hauteur maximale h 1.
E N D
Aurélien BarbierLIRISUniversité Claude Bernard Lyon 1 Nautibus, 8 boulevard Niels Bohr69622 Villeurbanne Cedex aurelien.barbier@liris.cnrs.frhttp://liris.cnrs.fr/aurelien.barbier à partir d'images 2D personnages 3D Animation de blanc : hauteur maximale h1 noir : hauteur minimale h0 hauteur du relief fg(g) h1 h0 distance au contour Définir un premier modèle 3D h = fg(g(u,v)) Algorithme rapide de calcul de la distance d’un point au squelette v : [0, V-1] Les utiliser en tant que squelette de surface implicite u : [0, U-1] Attacher chaque morceau au squelette d’animation • Processus : • choisir une résolution de discrétisation UxV • construire une carte de hauteur grâce à f(g) • définir l’autre côté du morceau (symétrie possible) • Passer à une représentation continue : maillage Ajout d’une « peau » implicite permettant les raccords lisses Définir le modèle 3D final pour l’animation(OPEN-GL) Calcul du maillage par une technique classique de triangulation Plaquage de textures attachées au plans de définition des cartes de hauteurs Texturer Gérer les incohérences d’animation • Que faut-il pour animer facilement une photographie ou un dessin dans un univers virtuel 3D ? • 1) une définition simple des morceaux à articuler • 2) des outils intuitifs pour caractériser le relief de chaque morceau • 3) une solution au problème du raccord lisse entre les morceaux • 4) une définition interne efficace (espace, temps) d’un morceau • 5) une aide à la gestion des incohérences au niveau des articulations lors d’une animation • 6) un moyen simple pour appliquer une texture réaliste au modèle créé Choisir un niveau d’articulation et donner du relief Faire le découpage correspondant Définir le relief • Processus : • détection des contours • caractérisation des seuils de hauteur h0 et h1 • choix du critère g de la fonction d’élévation f associant une hauteur à un niveau de gris g. Une carte de hauteurs associe une altitude à chaque sommet d’une grille 2D. Les surfaces implicites à squelette offrent naturellement des raccords lisses grâce à la « peau » qui entoure chaque squelette. La seule contrainte pour définir un nouveau squelette est de pouvoir calculer la distance euclidienne avec tout point de l’espace. Créer 2 cartes de hauteurs par morceau • Domaines d’application • Principalement pour le cinéma et le jeu vidéo : • animation de photographies • animation de personnages de bandes dessinées • effets spéciaux • Processus : • choisir plusieurs positions limites (lisses grâce aux propriétés des surfaces implicites) • contraindre le maillage sur la surface avec un système de particules • stocker les positions des sommets du maillage • Calculer les poids affectés aux sommets par la technique du « space pose ». • utiliser toutes ces données pour une technique de « skinning » classique. 10/2003