Post on 04-Apr-2015
IFT3730: Infographie 3D
Modélisation géométrique et animation
Pierre Poulin, Derek Nowrouzezahrai
Hiver 2013DIRO, Université de Montréal
Introduction• La modélisation géométrique porte
principa-lement sur deux questions fondamentales, et d'autres aspects à ne pas négliger– comment représenter un objet– comment créer un objet– comment animer un objet– comment transformer un objet entre
plusieurs représentations
Représentation d’un objet• Il existe une panoplie de façons de représenter un objet.
En voici quelques-unes:• Représentation volumétrique
• Voxels• Arbres• CSG
• Représentation surfacique• B-rep• Surfaces bicubiques• Surfaces de balayage
• Autres• Points• Modèles procéduraux
Représentation d’un objet• Représentation volumétrique
– Voxels– Arbres– CSG
Voxels (1)• Un objet est représenté par une liste de
voxels « occupés »• Un voxel peut contenir plusieurs
données– couleur– densité– température– etc.
Foley,van Dam
Kaufmann, SUNY
Voxels (2)• La représentation par voxels résulte
souvent du matériel (scanner) qui extrait les données
• Elle est très populaire en imagerie médicale
• Le slicing affiche le volume comme une suite de tranches
• Les tranches peuvent aussi être orientées dans n’importe quelle direction
• Taille considérable
Adam Finkelstein
Arbres
DeBry
Foley,van Dam
2D
3D
vs
• Le quadtree (2D) ou octree (3D) permet d’encoder plus efficacement plusieurs voxels adjacents ayant une même valeur de données
• Représentation hiérarchique
CSG (Constructive Solid Geometry)• L’objet est défini comme un arbre• Feuilles
– objets simples (primitives)• Noeuds
– opérations booléennes (régulières)• union, intersection, différence
– matrice de transformation
CSG (2)
Nigel Stewart
Dodgson Nigel Stewart
Représentation d’un objet• Représentation surfacique
– B-rep– Surfaces bicubiques– Surfaces de balayage
B-Rep (Boundary representation)
1 2
3
4
• Un objet est constitué de sommets, segments et faces
• Le maillage (mesh) est un exemple de B-rep le plus simple. Mais il manque d’information topologique locales
• Winged-edge– un sommet pointe à
• ses deux sommets• ses deux faces• ses quatre segments voisins
Edge Vertices Faces Left Traverse Right Traverse
Name Start End Left Right Pred Succ Pred Succ
a X Y 1 2 b d e c
Dr. Ching-Kuang Shene
B-Rep (2)
Surfaces bicubiques• Un objet est représenté par un
ensemble de points de contrôle d’une ou plusieurs surfaces bicubiques (Bézier, NURBs, etc.)
Surfaces de balayage• Balayage d’un objet (ou d’un point ou
d’une courbe) le long d’une trajectoire
Représentation d’un objet• Autres
– Points– Modèles procéduraux
Points+ Les points peuvent représenter n’importe quel
objet, il suffit de générer des points à sa surface
+ Le rendu d’un simple point est très efficace en hardware
+ L’organisation hiérarchique de points (niveaux de détails) est facile
- Il faut savoir échantillonner suffisamment les objets en fonction du point de vue et des effets désirés (visibilité, ombre, shading, textures, réflexion/réfraction, etc.), sinon il y aura des trous...
Points (2)
Stamminger
Rusinkiewicz
Modèles procéduraux• Une grande variété d’objets (dits naturels)
peuvent être créés à partir de l’application de règles, parfois même assez simples
• Lorsque ces règles peuvent être contrôlées, on parle de modèle procédural paramétrique
• Ces modèles simplifient souvent la création par un animateur. Parfois, aucun animateur ne pourrait traiter la complexité ainsi générée
• e.g., arbres/forêt, montagnes, vagues, fumée
Modèles procéduraux (2)• Le modèle interagit (communique) avec
son environnement (et d’autres objets)– croissance d’une branche et répartition
de ses feuilles selon l’ensoleillement– érosion d’une montagne par un réseau
de ruisseaux, ou par le vent, et différences d’aspects (végétation, roches, etc.)
– déformation d’un objet en fonction des collisions dans son environnement
Modèles procéduraux (3)• Fractales• L-systems• Particules• Masses-ressorts• etc.
Fractales
Mandelbrot
cxx +→ 2
courbe de Koch
où x et c sont complexes.
Ensemble Julia, Mandelbrot
• Auto-similarité: certains objets géométriques peuvent être divisés en sous-parties de formes similaires à la forme originale
L-systems (Graftals)
• Les L-systems servent souvent à décrire la structure de plantes
• Série de règles de substitution– A : AA– B : A[B]AA[B]
• Quelques générations– B– A[B]AA[B]– AA[A[B]AA[B]]AAAA[A[B]AA[B]]
L-systems
2e génération 3e génération 6e génération
Duranleau
Ochoa
L-systems (extensions)
Prusinkiewicz
Parish
Scène urbaine
Végétaux
Montagnes
Parish
Particules• Les systèmes de particules permettent de simuler
des objets difficiles à représenter autrement– e.g., feu, nuage, eau, feux d’artifice
• Une particule évolue dans le temps– création, mouvement, interaction, disparition
• Une particule peut réagir selon son environnement– e.g., flocking, densité
• Une particule peut contrôler n’importe quel paramètre– e.g., direction, couleur, opacité, grosseur,
primitive
Particules• Certains comportements de particules
sont inspirés de la physique
• Schéma d’intégration– traitement du temps
• Détection de collisions• Réponse aux collisions
€
ma = f
pi =
x i
y i
zi
⎡
⎣
⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥
˙ p i = vi =
˙ x i˙ y i˙ z i
⎡
⎣
⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥=
dxi
dtdyi
dtdzi
dt
⎡
⎣
⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥=
xi (t )−xi ( t−1)dt
yi (t )−yi ( t−1)dt
zi (t )−zi ( t−1)dt
⎡
⎣
⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥
˙ v i =1
mi
fi(t)
Particules - Liquides
Zhang Xiao
Particules - Fluides
Stam
Nevrax
“Fontaine”
Masses-ressorts• Une surface est représentée par une
distribution de points (masses)• Les points sont interconnectés par des
ressorts linéaires ou angulaires (plis, étirements, aire)
• Les ressorts interagissent entre eux, avec l’environnement, et avec la surface elle-même (auto-intersection)
Syflex
Masses-ressorts (2)
€
d = p − q
f = −ks d − s( )d
d
f = − ks d − s( ) + kd
˙ d ⋅dd
⎛
⎝ ⎜
⎞
⎠ ⎟
⎛
⎝ ⎜ ⎜
⎞
⎠ ⎟ ⎟d
d
Modélisation assistée• L’infographie peut aussi fournir des
outils plus sophistiqués pour modéliser certaines classes d’objets– reconstruction 3D– modélisation directe– FFD– simulation physique
Reconstruction 3D
www.stockeryale.com
Seitz
• Objet de mesure robotisé
• Stéréovision et triangulation
Manipulation directe (non linéaire)
Forme originale Bend Twist Squeeze Noise Displacement
FFD (Free Form Deformation)
Hirota et al.
• Au lieu de manipuler directement la représentation de l’objet, on modifie les points de l’espace autour de l’objet
• La représentation de l’objet est déformée par la déformation locale de son espace, comme si elle était dans gélatine
Physique
Fedkiw
Forme originale Fonte
• On infère aux matériaux des propriétés physiques (distribution de la masse, rigidité/élasticité, fractures, etc.)