Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parLothair Jacquot Modifié depuis plus de 9 années
1
Credits : Joëlle Thollot, Hector Briceño, Edmond Boyer
Synthèse d’images Antoine Bouthors Credits : Joëlle Thollot, Hector Briceño, Edmond Boyer
2
Plan du cours Cours 1,2 : le pipeline graphique Cours 3 : GPU
Cours 4,5,6 : rendu temps-réel Calcul des ombres Niveaux de détails Image-based rendering Visibilité Cours 7 : illumination globale
3
Calcul des ombres - plan
Pourquoi les ombres ? Ombres planes Shadow map Shadow volume Ombres douces Reflets
4
Importance des ombres Position dans l’espace Points de contact
Eclairage Réalisme
5
Indication de la position
6
Indication de l’éclairage
Position de la lampe Type de lampe Directionnelle, ponctuelle, étendue Colorée
7
Ombre dure Quand la source est ponctuelle
Un point est dans l’ombre s’il ne voit pas la source
8
Ombre douce Quand la source est étendue Agrawala & al. Soler & al.
9
Ombre douce 3 zones : Ombre : la source est totalement cachée
Pénombre : la source est partiellement cachée Eclairée : la source est totalement visible
10
Calcul des ombres - plan
Pourquoi les ombres ? Ombres planes Shadow map Shadow volume
11
MIT EECS 6.837, Durand and Cutler
Ombres planes Dessiner les primitives une seconde fois projetées sur le sol MIT EECS 6.837, Durand and Cutler
12
Ombres planes +/- + Simple et efficace
- Pas d’auto ombrage, pas d’ombres sur des surfaces courbes, sur d’autres objets MIT EECS 6.837, Durand and Cutler MIT EECS 6.837, Durand and Cutler
13
Calcul des ombres - plan
Pourquoi les ombres ? Ombres planes Shadow map Shadow volume Ombres douces Reflets
14
MIT EECS 6.837, Durand and Cutler
Dualité ombre/vue Un point est éclairé s’il est visible de la source Le calcul des ombres est donc similaire au calcul d’une vue MIT EECS 6.837, Durand and Cutler
15
Utilisation des textures
Séparer obstacle et récepteur Calculer une image de l’obstacle vu de la source L’utiliser comme texture sur le récepteur Vues de la source Vue de l’œil Moller & Haines “Real Time Rendering”
16
Shadow map (carte d’ombre)
Texture et profondeur 2 passes de rendu : Shadow map : image de profondeur vue de la source Rendu final en regardant pour chaque pixel s’il est dans l’ombre ou pas ShadowMap(x’,y’) < z’ ? (x',y',z')L (x,y,z)W Foley et al. “Computer Graphics Principles and Practice”
17
Shadow map
18
Shadow map +/- + Implémentation en hard
- Pixel éclairé : ShadowMap(x’,y’) z’ => ajouter un biais ShadowMap(x’,y’) + eps < z’ OK biais trop faible biais trop élevé
19
Shadow map +/- - Angle de vue de la lampe
=> spot light ou cubic shadow map
20
Shadow map +/- - Résolution de la carte de profondeur : aliassage
=> Trouver la bonne résolution => Perspective shadow maps => Filtrage de la réponse
21
Calcul des ombres - plan
Pourquoi les ombres ? Ombres planes Shadow map Shadow volume Ombres douces Reflets
22
Shadow volume Représenter explicitement le volume d’ombre
Pour chaque polygone Construction de la pyramide Test d’ombre = clipping
23
Shadow volume Un point qui est dans le volume d’ombre d’une source ne reçoit aucune lumière Calcul : par point visible Compte des intersections avec les volumes de vue Si ≠ 0 : ombre -1 +1 +1
24
Shadow volume : implémentation
Utilisation du stencil buffer : Buffer pour marquer les pixel lors d’une passe de rendu Puis stencil-test avant le z-test
25
Shadow volume algorithm
Initialize stencil buffer to 0 Draw scene with ambient light only Turn off frame buffer & z-buffer updates Draw front-facing shadow polygons If z-pass → increment counter Draw back-facing shadow polygons If z-pass → decrement counter Turn on frame buffer updates Turn on lighting and redraw pixels with counter = 0 +1 +2
26
Œil dans un volume d’ombre
counter = 0 : Pas toujours la bonne réponse Initialiser le compteur correctement Clipper le shadow volume z-fail test -1 -1
27
Optimisation Ne calculer le volume d’ombre que pour les silhouettes des objets
28
Shadow volume +/- + Calcul exact - Rajoute de la géométrie => lent
- Rajoute de grands polygones => fill rate
29
Calcul des ombres - plan
Pourquoi les ombres ? Ombres planes Shadow map Shadow volume Ombres douces Reflets
30
Ombres Douces
31
Idée : rajouter des polygones le long de la silhouette et coller dessus une texture qui imite l’ombre
37
Video
38
Calcul des ombres - plan
Pourquoi les ombres ? Ombres planes Shadow map Shadow volume Ombres douces Reflets
39
NVIDIA's stencil buffer tutorial (http://developer.nvidia.com)
Reflets Un rendu de la scène complet Un marquage du miroir dans le stencil buffer Un rendu pour le miroir (caméra symétrique) avec le stencil buffer activé NVIDIA's stencil buffer tutorial (
40
Conclusion Shadow maps massivement utilisées dans les jeux vidéo
Shadow volume en production mais reste coûteux Questions ouvertes : Accélération des calculs Précision Ombres douces
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.