La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

IFT3730: Infographie 3D Textures Pierre Poulin, Derek Nowrouzezahrai Hiver 2013 DIRO, Université de Montréal.

Présentations similaires


Présentation au sujet: "IFT3730: Infographie 3D Textures Pierre Poulin, Derek Nowrouzezahrai Hiver 2013 DIRO, Université de Montréal."— Transcription de la présentation:

1 IFT3730: Infographie 3D Textures Pierre Poulin, Derek Nowrouzezahrai Hiver 2013 DIRO, Université de Montréal

2 Textures Pour simuler la complexité des détails sur une surface, on peut augmenter le nombre de polygones (micro-polygones) définissant la surface Cependant, il en résulte une augmentation de la complexité de la modélisation (taille de lobjet, coût de génération, etc.) et du rendu (visibilité, scan conversion, illumination, etc.)

3 Textures Peut simuler leffet visuel des détails en apposant une texture sur la surface, tel du papier peint Texture peut être apposée sur différents objets Traitement des détails est laissé au processus de shading dans le pipeline graphique Devient aussi possible de mieux filtrer les effets des détails au niveau de qualité désiré Matériel efficace pour les polygones texturés

4

5 Textures : applications Une texture peut altérer plusieurs propriétés : –couleur image digitale, motif (quadrillé), procédure (marbre) –normale (bump map) –géométrie (displacement map) –réflexion (environment map) –illumination (photon map) –transparence –etc.

6 Définitions Texture mapping technique consistant à appliquer une texture sur une surface Texture map texture apposée sur une surface Texel élément de base dune texture, analogue au pixel dune image

7 Texture mapping (1) Espace image pixel de limage Espace objet projection du pixel sur la surface 3D Espace texture texels couverts par le pixel u v projection mapping

8 Texture mapping (2) Pixel texel Seulement les texels visibles sont traités Il faut calculer la projection inverse du pixel en espace objet, et puis les coordonnées correspondantes en espace texture Plus complexe, mais orienté vers le traitement du pipeline conventionnel qui procède pixel par pixel Crédit : L.McMillan

9 Mapping (1) On va chercher à identifier une fonction (mapping) qui permet dassocier un texel à un point de la surface Souvent un mapping 1-à-1 est préférable, car cela minimise les distorsions et les pertes dinformation –Exemple : mapper une texture sur un rectangle

10 Mapping rectangle - cylindre Z Y X r h mapping 1-à-1 car chaque point correspond à un et un seul point (u,v)

11 Mapping rectangle - sphère (1) Z Y X

12 Mappings (2) Souvent on veut passer dune surface 3D arbitraire à une texture rectangulaire Une fonction de mapping est souvent complexe et souffre de propriétés indésirables –distorsion des formes et des distances Texture (rectangulaire) Surface sphérique : distorsion

13 Mappings (3) Obtenir le mapping désiré pour une surface quelconque nest pas une tâche facile. Il y a même des topologies qui ne permettent pas datteindre le but désiré.

14 Mappings par fonction intermédiaire Il existe plusieurs fonctions de défaut: –coordonnées cylindriques –coordonnées sphériques –coordonnées de projection (linéaire) La position de lobjet par rapport à la fonction intermédiaire définit le mapping et donc lapparence de la texture sur lobjet

15 Mappings par fonction intermédiaire (2) Exemple: Coordonnées sphériques Placer lobjet 3D au centre de la sphère Associer une coordonnée à chaque point (x,y,z) de lobjet 3D Trouver la valeur (u,v) associée à Associer la couleur T(u,v) au point (x,y,z) (x,y,z) Objet 3D quelconque Texture

16 Mappings par fonction intermédiaire (3) cube map en 3D cube map encodage wikipedia

17 Problèmes avec le mapping 3D à 2D Définition de la fonction de mapping Conservation des distances entre les éléments de la texture Effet de bordure de la texture lorsquelle doit être répétée Donne une impression de papier peint au lieu de matériel 3D

18 Distorsion due au type de projection Mapping par projection (linéaire) à partir d'en haut

19 Mapping en cartographie Miller, wikipedia

20 Mapping en cartographie HEALPix, wikipedia Eckert IV, wikipediaGoode Homolosine, wikipedia

21 Impression de papier peint

22 Effet de bordure

23 Synthèse de texture Quilting, Efros

24 Classes de textures wikipedia

25 Filtrage Ne traite pas de point-à-point mais plutôt daire-à-aire, ce qui crée des problèmes daliassing Lorsque la taille des pixels (une fois projetés dans le domaine texture) est différente de la taille des voxels, il y a 3 cas de figure possibles : Peu de problème : 1 pixel 1 texel Sur-échantillonnage : 1 pixel << 1 texel Sous-échantillonnage : 1 pixel >> 1 texel

26 Filtrage (exemple sur-échantillonnage) Texture Texture projetée sur un rectangle Si la caméra est placée trop près du plan, 1 pixel << 1 texel

27 Filtrage (sur-échantillonnage) Des solutions? Il ny a pas grand chose à faire puisquon a atteint la limite de la texture. Elle ne peut nous donner plus que ce qui est inscrit dans ses texels! –Le filtrage de la texture peut légèrement masquer cet artéfact… –Avoir une deuxième texture de résolution plus élevée…

28 Filtrage (exemple sur-échantillonnage) Sans filtrage de la texture Avec filtrage de la texture

29 Filtrage (exemple sous-échantillonnage) Texture Image résultante Si on approche la caméra du plan… 1 pixel >> 1 texel Artéfacts : Moiré

30 Filtrage (sous-échantillonnage) Laliassing (Moiré) apparaît dans les textures lorsquun échantillonnage insuffisant est utilisé Pour lutter contre ce problème, il faut implémenter une méthode danti-aliassing Lorsque plusieurs texels se projettent dans un même pixel, il faut filtrer leur contribution Si chaque texel contribue également au pixel, peu importe son emplacement dans le pixel, il sagit alors de faire la moyenne des contributions (filtre boîte)

31 Filtrage (sous-échantillonnage) u v projection mapping Image Objet 3D Texture 2D Pixel P Centre du pixel P P est la projection du pixel P sur la texture 2D Lanti-aliassing consiste à associer au pixel P non pas seulement la couleur du centre de P, mais la moyenne de tous les texels couverts par P

32 Supersampling (anti-aliassing) On peut échantillonner régulièrement dans un pixel et pondéré également (filtre boîte) les couleurs des échantillons Un supersampling de 4x4 est souvent considéré comme étant un bon compromis qualité vs. temps de calcul 1 échantillon/pixel 4 échantillons/pixel 25 échantillons/pixel

33 Échantillonnage adaptatif Les nombres minimum et maximum de niveaux de subdivision sont indiqués sous chaque image min 1 max 1 min 1 max 2 min 1 max 4 min 2 max 4

34 Perturbations stochastiques Au lieu déchantillonner régulièrement, on peut perturber aléatoirement (jitter) la position de chaque échantillon On introduit alors du bruit dans limage qui remplace en partie laliassage 1 pixel Pas de supersampling 3x3 supersampling 3x3 + Perturbations

35 Filtrage de pixels adjacents Si la contribution ne dépend pas de la position à lintérieur du pixel, il sagit dune somme non-pondérée Au lieu de faire la moyenne des couleurs des échantillons, on peut leur donner un poids différent en fonction de leur distance du centre du pixel filtre linéaire à base circulaire

36 MIP mapping (multum in parvo) Les éléments de la texture sont préfiltrés (moyennés) dans une pyramide La texture résulte en 4/3 de sa taille originale Lorsque plusieurs texels projettent dans un pixel, le niveau le plus approprié dans la pyramide est choisi Crédit : L.McMillan

37 Textures 3D (solid textures) Par défaut, chaque point 3D peut correspondre à un point dans la texture Textures –table 3D de valeurs discrètes –fonction 3D (procédurale) définit une valeur UVW de texture dans lespace XYZ Surface apparaît sculptée dans un matériel –marbre, bois, etc. Un problème important de ces textures 3D réside dans son filtrage efficace

38 Textures 3D Crédit: Ken Perlin

39 Textures 3D Visualisation de modèles 3D multicouches [McGuffin 03]

40 Autres applications des textures Jusquà présent on a vu que les textures pouvaient servir à modifier la couleur des objets Maintenant, voyons ce que nous pouvons faire de plus… 1.Simuler la réflexion miroir : environment maps 2.Modifier lorientation des normales : bump maps 3.Modifier la position des sommets 3D dun modèle : displacement maps

41 Texture denvironnement (1) Une surface miroir réfléchit son environnement, mais le lancer de rayons est trop coûteux pour espérer un rendu en temps réel On crée une image de la scène (sans lobjet réfléchissant) quon projette ensuite sur un objet intermédiaire –cube (six projections), sphère, cylindre, etc. La direction réfléchie sur la surface est utilisée comme index dans les images de la scène

42 Texture denvironnement (2) Credit:Hakura + photo «fish eye» mapping de la photo sur une sphère 3D mapping par fonction intermédiaire entre le teapot et la sphère 3D

43 Texture denvironnement (3) Terminator 2

44 Texture denvironnement (4) Aucune réflexion multiple ou réflexion de lobjet sur lui-même Puisque limage de lenvironnement est formée à partir dun point de vue arbitraire, les objets près de lobjet miroir seront incorrectement déformés dans limage finale Fonctionne bien lorsque lobjet réfléchissant est petit et près du centre de la texture

45 Bump map (1) La normale à la surface influence grandement lapparence de la surface lors du calcul dillumination

46 Bump map (2) Soit une fonction d(u,v) qui perturbe légèrement un point à la surface le long de sa normale N N

47 Bump map (exemple) Crédit : L.McMillan cylindre Texture bump map Cylindre rendu

48 Bump map (exemple) Crédit : Jim Blinn

49 Displacement Map Même idée que le bump map, mais on déplace physiquement les sommets au lieu de juste perturber leur normale Crédit : L.McMillan + =

50 En résumé Mapping texel/pixel et pixel/texel Mapping cylindrique, sphérique et de projection Texture 3D Aliassage et filtrage de texture 2D Mip mapping Texture denvironnement Bump mapping Displacement mapping


Télécharger ppt "IFT3730: Infographie 3D Textures Pierre Poulin, Derek Nowrouzezahrai Hiver 2013 DIRO, Université de Montréal."

Présentations similaires


Annonces Google