Surfaces à Subdivision Surfaces à subdivision Approximer la courbe limite, au travers d un processus itératif. Raffinement 1 Raffinement 2 Geri s Game (1998) : Pixar Animation Studios Raffinement! Master IVI, module M3DA, cours 2 Subdivision en 3D Approche similaire But des surfaces à subdivision Comment représenter efficacement des surfaces? Optimalité de la représentation Continuité Invariance affine Rendu peu coûteux Lien avec splines/patches? Pourquoi l un plutôt que l autre? Raffinement Types de Subdivision L algorithme de Chaiken Schéma d interpolation P1 La surface/courbe limite passe par les points initiaux. Schéma d approximation L autre cas Q2 Q3 P2 Q4 Q1 Q5 Q0 P3 P0 Application itérative Courbe limite Lien avec les fractales
Subdivision de Loop Fait pour maillages triangulaires Schéma d approximation Continuité partout, sauf aux sommets singuliers Masques de subdivision de Loop Loop: Gestion des bords Masque spécifique Expression matricielle La subdivision peut être exprimé via une matrice S mask de poids w. S mask est creuse Pas pour l implémentation Permet l étude analytique de La courbure La surface limite Loi d aréte Loi de sommet S mask les poids Anciens points de Nouveaux contrôles points Continuité et courbure.. Les poids de subdivision sont dérivés de ceux utilisés par les B-splines. Convergence vers du C 2 presque partout. - les maths fonctionnent partout sauf pour les sommets de valence singulière. On peut montrer pour tous les processus de subdivision qu ils ont une valence ideale, pour laquelle la surface tend vers une surface de type spline. Points ordinaires et Singuliers Subdivision de Loop Valence 6 Subdivision de Catmull-Clark Valence 4 Subdiviser un maillage ne crée pas de points singuliers. Ca n en enlève pas non plus. Solution: adapter les regles a ces points, afin de garder la continuité de la surface.
La subdivision en pratique splines (NURBS) utilisées traditionnellement en animation. Dans certains cas de figure, délicat a manipuler, par exemple pour l animation de personnage.. Subdivision de Catmull-Clark (1978) FACE ARETE SOMMET (Geri s Game, Pixar 1998) Arêtes vives Interet de Catmull-Clark Surfaces continues. Comment contrôller la continuité (ex: arêtes vives)?. Solution: adapter le processus de subdivision 1. Marquer chaque arête comme vive ou pas vives n = 0 pas vive n > 0 vive Pendant la subdivision, 1. Marquer les aretes vives. 2. Si une arête est vive, utiliser la nouvelle regle de subdivision. 3. Sinon, lois classiques. Gestion des arêtes vives FACE (inchangé) ARETE SOMMET Nombre d arête vives adjacentes pointe >2 angle 2 coin 0,1 2. Si une arête est vive, alors on utilise les nouvelles regles. Les nouvelles aretes crées sont associées à n-1. 3. Si une arête est pas vive, usage de la regle de subdivision normale. Angulosité non entière Densité du maillage évolue rapidement. En pratique, 2 ou 3 itérations suffisent. Nécessité d un meilleur contrôle. Principe: on interpole entre les regles classique, et les regles pour arêtes vives.
Exemples Exemples Schémas locaux PN Triangles Besoin d une structure de donnée complexe. Besoin du voisinage pour chaque polygone Chaque sommet doit connaitre ses voisins Schéma d interpolation. Exemple.. Pour faire moins compliqué: Utilisation des normales aux sommets pour deviner le comportement des voisins Regles basées sur les normales subdivision Subdivision locale (PN triangles) Definie à partir des patches de Bézier triangulaires. u,v,w coordonnées barycentriques w=1-u-v, u,v,w!1 Fonction de base de bézier Calcul du maillage de contrôle
Subdivision locale Avantages Subdivision adaptative Facile à mettre en place Pas de structure de données sophistiquées Facile à intégrer à des applications existantes Peut être cablée ATI Radeon 8500 Allure correcte Inconvénients Pas de garantie de continuité élevée. Limitation de courbure sur un patch. Pas de validation mathématique. Subdivision non-uniforme, en fonction de la zone considérée. Utilisation de critère de décision. courbure Résolution écran ( taille triangles < pixel?) Point de vue Distance de vue Silhouettes Dans le cône de visue Attention aux cracks crack subdivise Simplification de maillage Approche inverse de la précedente 55 sec 424,376 faces 8000 faces 1,765,388 faces 80,000 faces Et la texturation dans tout ca? Surfaces à subdivision implicitement paramétrées (ex: Lee&al, Siggraph 98) Jeu de données complet: entre 0.3 et 1 milliard de triangles 8.2 millions de triangles (2 mm de resolution) 6.8 millions de triangles (! mm de resolution)