ift3355: infographie modélisation des solides © pierre poulin dép. i.r.o. université de...
TRANSCRIPT
![Page 1: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/1.jpg)
IFT3355: Infographie Modélisation des solides
© Pierre Poulin
Dép. I.R.O.
Université de Montréal
![Page 2: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/2.jpg)
Modélisation de solides
• Dans certaines applications, il est important de pouvoir caractériser un point par rapport à un objet:– intérieur ou extérieur ou sur la surface
• En considérant un objet comme un volume, on peut utiliser ses propriétés:– interférence entre objets (collisions, déformations)– volume et masse (moments d’inertie)– méthodes d’éléments finis (forces dans l’objet)
![Page 3: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/3.jpg)
Opérations booléennes (régulières)
• Appliquées sur les volumes :– union, intersection, différence
• Ces opérations sont non-fermées sur un solide– il peut en résulter un volume, une surface, une
courbe, un point, le vide• Les opérations booléennes dites régulières sont
fermées sur un solide, donc résultent toujours en un volume ou le vide
![Page 4: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/4.jpg)
CSG
• Combine des solides avec des opérations booléennes (Constructive Solid Geometry)
Dodgson
![Page 5: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/5.jpg)
CSG
• Objet est défini comme un arbre:– feuilles:
• objets simples (primitives)
– noeuds internes:• opérateurs booléens• transformations
![Page 6: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/6.jpg)
CSG - Affichage
• Affichage en transférant sous représentation surfacique, telle B-rep– précalcul complexe– représentation finale sous forme de polygones
• Affichage par lancer de rayons– évalue l’arbre de composition pour chaque
point d’intersection– approximatif (valide seulement aux rayons)
![Page 7: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/7.jpg)
CSG par lancer de rayons
AE
A+EA&EA-E
AE
![Page 8: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/8.jpg)
Division de l’espace
• Décomposition en voxels– objet est représenté par la liste des voxels
occupés• Décomposition en octree
– nombre de noeuds est proportionnel à la surface de l’objet
– bin-tree: alterne l’axe de subdivision– kd-tree: déplace librement le plan de subdivision
• Décomposition en BSP tree
![Page 9: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/9.jpg)
Division de l’espace
voxels octree
Kaufmann, SUNY
![Page 10: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/10.jpg)
Représentations des solides - Difficultés
• Représentation robuste– instabilités dues à la précision machine des
calculs numériques• Transferts des propriétés après les opérations• Domaine d’application (type d’objets, précision)• Efficacité (pré-évaluation)• Espace mémoire requis par la représentation• Interface usager• Transferts d’une représentation à une autre
![Page 11: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/11.jpg)
Représentation surfacique
• Malgré l’intérêt indéniable envers le traitement volumique des objets, la plupart des représentations d’objets en infographie sont surfaciques– polygones– surfaces bilinéaires et bicubiques– surfaces de balayage– surfaces de subdivision– B-rep– points
![Page 12: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/12.jpg)
Balayage
• Balaye un objet le long d’une trajectoire(sweep representation)
• Attention aux self-intersections• 1. Segment : extrusion
![Page 13: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/13.jpg)
Balayage
• 2. Rotation : cylindre généralisé
• 3. Courbe : balayage généralisé
![Page 14: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/14.jpg)
B-rep (Boundary representation)
• Un objet est représenté par sa surface:– sommets, segments, faces
• 2-manifolds:– topologie d’un disque sur un plan– aucune inter-pénétration des faces
• Polygones et polyèdres simples (2-manifolds)– peut être déformé en une sphère
• Représentation utilisée surtout dans les systèmes CAD
![Page 15: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/15.jpg)
B-rep
• Un polyèdre simple satisfait la formule d’Euler:
– nécessaire mais pas suffisant, puisqu’on peut créer un ensemble de faces qui satisfait la formule d’Euler sans former un polyèdre simple
• Représentation simple (NFF):– coordonnées de chaque sommet– liste d’index de sommets
• sens horaire de l’intérieur du polyèdre
– liste de faces4 - 6 + 4 = 2
2=+− FEV
![Page 16: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/16.jpg)
B-rep et winged-edge
• Représentation simple rend parfois certains calculs ou l’accès à certaines informations plus coûteuses, e.g., trouver les voisins d’une face
• Représentation winged-edge• Un segment pointe à:
– ses deux sommets– ses deux faces– les autres segments connectés
à ses sommets
V1
V2
F2F1
E2 E3
E4E5
![Page 17: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/17.jpg)
B-rep et winged-edge
• Un sommet pointe à:– un segment qui part de lui
• Une face pointe à:– un de ses segments
• Les structures et surtout les opérations sont plus complexes
![Page 18: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/18.jpg)
Applications
• Paramétrisation de surface de maillage• Maillages progressifs pour la simplification de
maillages• Strips
![Page 19: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/19.jpg)
Applications – Simplification de maillages
Jeff Somers
Hughes Hoppe
vertexsplit
edgecollapse
![Page 20: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/20.jpg)
Applications – Triangle Strips
1
2
3
4
5
61
23
4
5
Triangle strip Triangle fan
![Page 21: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/21.jpg)
Représentation par points
• Plus les objets deviennent complexes, plus le nombre de primitives de base nécessaires devient grand, et plus ces primitives deviennent petites
• La représentation par point utilise simplement des points avec couleur et normale pour représenter un objet complexe
StammingerRusinkiewicz
![Page 22: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/22.jpg)
Représentation par points
+ Les points peuvent représenter presque n’importe quel objet
+ Rendu d’un point est très efficace en hardware
+ Organisation hiérarchique des points (niveaux de détails) est facile et efficace pour le culling
- Il faut savoir échantillonner suffisamment les objets en fonction du point de vue et des effets (ombres, shading, textures, réflexions, réfractions)
![Page 23: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/23.jpg)
Modélisation d’objets complexes
• Grande variété d’objets à modéliser selon– le type des objets
• surfaciques vs. volumiques• naturels vs. humains
– les échelles de grandeur– le mouvement/comportement
• les rigidités de surface• les degrés de liberté inhérents et souhaitables• les contrôles et les interfaces
– le temps disponible
![Page 24: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/24.jpg)
Modélisation d’objets complexes
• Une grande variété d’objets dits naturels existent pour lesquels les objets (ou phénomènes) complexes peuvent être simulés par des modèles avec des paramètres simples
• Ces modèles permettent une augmentation automatique de leur base de données, dont les détails sont souvent irréalisables par un animateur
ex: arbres, montagnes, vagues, flammes, fumée
![Page 25: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/25.jpg)
Génération automatique - Modèles procéduraux
• Le modèle interagit (communique) avec son environnement (et autres objets):– polygonisation d’une sphère en fonction de sa
projection sur l’écran, ou subdivision d’une patche de Bézier selon la proximité d’un objet
– croissance d’une branche et de son feuillage selon l’ensoleillement, son poids, le vent
– érosion d’une montagne selon le contenu de son sol et l’écoulement des cours d’eau
![Page 26: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/26.jpg)
Modèles procéduraux
Reeves - Fournier
Autres vagues avec unmodèle de Perlin
![Page 27: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/27.jpg)
Modèles procéduraux - Fractales
• Dans la nature, on observe souvent une certaine similarité entre différents niveaux de détails
• ainsi que des perturbations aléatoires
où x et c sont complexes (ensembles Julia, Mandelbrot)
cxx +→ 2
courbe de Koch
![Page 28: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/28.jpg)
Modèles procéduraux - Fractales
• Les subdivisions originales sont souvent visibles• La régularité des grilles sont aussi visibles
– perturbations dans le plan
![Page 29: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/29.jpg)
Montagnes fractales
Terragen
![Page 30: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/30.jpg)
Modèles procéduraux - Grammaires L
• Lindenmayer introduit des grammaires
(L-systems) pour décrire la structure de plantes
![Page 31: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/31.jpg)
Modèles procéduraux - Grammaires L
• Série de règles de substitution– A : AA– B : A[B]AA[B]
• Séquence initiale• Quelques générations:• 0. B
1. A[B]AA[B]
2. AA[A[B]AA[B]]AAAA[A[B]AA[B]]
![Page 32: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/32.jpg)
Grammaires L
w : Ap1 : A -> [ & F L ! A ] / / / / / [ & F L ! A ] / / / / / / / [ & F L ! A ]p2 : F -> S / / / / / Fp3 : S -> F Lp4 : L -> [ ^ ^ { . - f . + f . + f . - | - f . + f . } ]
2e génération 3e génération 6e génération
Duranleau
![Page 33: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/33.jpg)
Grammaires L
Prusinkiewicz
![Page 34: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/34.jpg)
Modèles procéduraux - Particules
• Les systèmes de particules permettent de simuler des objets autrement difficiles à représenter– ex: feu, nuage, feux d’artifice, arbres, herbe,
rivière, etc.• Une particule évolue dans le temps
– création, mouvement, interaction, displarition• Une particule peut contrôler n’importe quel
paramètre– ex: direction, couleur, opacité, grosseur,
primitive, etc.
![Page 35: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/35.jpg)
Particules
Reeves
![Page 36: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/36.jpg)
Particules
Stam
Reeves
![Page 37: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/37.jpg)
Surfaces flexibles (masses-ressorts)
• Une surface contrôlée par des ressorts inter-connectés
• Les ressorts interagissent aussi avec l’environnement
Spanlang
![Page 38: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/38.jpg)
Surfaces implicites (objets mous, blobbies, metaballs)
• Isosurface extraite d’un champ de densité• Quelques charges (positives ou négatives)
suffisent à produire un champ complexe• Squelette contrôle la forme de la surface• Rendu par polygonisation (marching cube) ou
lancer de rayons par intervalles ou analytique
Wyvill
![Page 39: IFT3355: Infographie Modélisation des solides © Pierre Poulin Dép. I.R.O. Université de Montréal](https://reader036.vdocuments.site/reader036/viewer/2022062417/551d9dc4497959293b8e21ee/html5/thumbnails/39.jpg)
Splines hiérarchiques
• Différentes densités de points de contrôle à chaque niveau de la hiérarchie
Forsey