Sujet de stage 2ème année ENSIMAG 2007
Modifications topologiques de surfaces animées
Topological modifications of animated surfaces
Responsables
Antoine Bouthors | Matthieu Nesme | Franck Hétroy |
LJK/EVASION | TIMC/GMCAO et LJK/EVASION | LJK/EVASION |
E-mail : Antoine.Bouthors@imag.fr | E-mail : Matthieu.Nesme@imag.fr | E-mail : Franck.Hetroy@imag.fr |
Tél. : 04 76 61 55 93 | Tél. : 04 76 61 55 04 |
Contexte
Les surfaces implicites sont une représentation classique des
objets en informatique graphique, ou plus exactement de leur surface frontière. Une
surface implicite est définie comme l'ensemble des points de valeur constante
(généralement zéro) d'une fonction définie de R3 dans R. Cette représentation
est particulièrement utile lorsqu'il s'agit de modéliser et d'animer des objets
hautement déformables, comme par exemple des fluides ou des structures
organiques. Cependant, afficher de telles surfaces est très coûteux, et on
préfère généralement passer par une autre représentation : un maillage. Ainsi,
[2] propose une nouvelle approche permettant d'afficher une surface implicite
animée en temps-réel, grâce à la construction de deux maillages successifs
approchant la surface implicite, appelés respectivement "maillage mécanique" et
"maillage géométrique".
La méthode proposée dans [2] souffre de quelques limitations
: en particulier, les objets animés doivent être de topologie constante,
c'est-à-dire que le nombre de composantes connexes et le nombre de trous dans la
surface ne peuvent pas évoluer. On ne peut donc pas avoir fusion de plusieurs
objets par exemple. L'objectif du stage est de résoudre ce problème en étendant
la méthode définie dans [2] afin de permettre un changement de la topologie de
l'objet (modification du nombre de composantes connexes et apparition ou
disparition de trous dans la surface), de manière suffisamment efficace pour que
l'animation reste temps-réel. Le stagiaire programmera en C++ et reprendra le
code existant de la méthode proposée dans [2].
Mots-clés : surface implicite, triangulation, topologie.
Objectifs
- Lire et comprendre la bibliographie afin d'avoir une vision globale du sujet : [2], mais aussi [1,5,7] notamment.
- Afin de se familiariser avec le code à compléter, appliquer la méthode [2] au "surface tracking" [1], en résolvant les éventuels problèmes (gestion des inversions).
- Etudier les méthodes existantes de gestion de la topologie pour les objets animés : [3,4,6].
- S'inspirer d'une ou de plusieurs méthodes pour proposer un algorithme efficace de gestion de la topologie de surfaces implicites animées par la méthode proposée dans [2].
- Tester et valider ces méthodes sur des données fournies par les encadrants.
Modalités du stage
- Durée : deux à trois mois, entre mi-juin et mi-septembre 2007.
- Lieu : laboratoire Jean Kuntzmann, équipe EVASION, dans les locaux de l'INRIA Rhône-Alpes à Montbonnot (38).
- Indemnité : le stage donne lieu à une indemnité forfaitaire standard pour les stages de ce type.
- Pré-requis : maîtrise de la programmation C++, notions de base de géométrie 3D, intérêt pour la synthèse d'images.
Références
- A. Bargteil, T. Goktekin, J. O'Brien, J. Strain. A Semi-Lagrangian Contouring Method for Fluid Simulation. ACM Transactions on Graphics, 2006.
- A.Bouthors, M. Nesme. Twinned Meshes for Dynamic Triangulation of Implicit Surfaces. Graphics Interface, 2007.
- J. Hart, A. Durr, D. Harsh. Critical Points of Polynomial Metaballs. Implicit Surfaces, 1998.
- A. Paiva, H. Lopes, T. Lewiner, L. Henrique de Figueiredo. Robust Adaptive Meshes for Implicit Surfaces. SIBGRAPI 2006.
- H.C. Rodrian, H. Moock. Dynamic Triangulation of Animated Skeleton-Based Implicit Surfaces. Implicit Surfaces, 1996.
- B. Stander, J. Hart. Guaranteeing the Topology of an Implicit Surface Polygonization for Interactive Modeling. SIGGRAPH, 1997.
- A. Witkin, P. Heckbert. Using Particles to Sample and Control Implicit Surfaces. SIGGRAPH, 1994.