Télécharger la présentation
Publié parJeannine Audy Modifié depuis plus de 9 années
1
Plan du cours Cours 1,2 : le pipeline graphique
Cours 3,4,5 : rendu temps-réel Calcul des ombres Visibilité Niveaux de détails Image-based rendering Cours 6 : illumination globale Cours 7 : rendu non-photoréaliste
2
Limiter le nombre de primitives à traiter
Temps réel Interactif / immersif -> 15Hz/30Hz Limiter le nombre de primitives à traiter Traitement de l’environnement dépend du point de vue (visibilité, culling) Traitement géométrique Level Of Detail
3
Visibilité Pour un point de vue donnée que voit-on ?
4
Ex : jeux videos id Software Quake 3
5
Microsoft Midtown madness 2
7
Visibilité Que ne voit-on pas ? Ce qui est dans l’ombre;
Modeling Transformations Que ne voit-on pas ? Ce qui est dans l’ombre; Ce qui est caché par un objet; Ce qui est plus petit qu’un pixel; Ce qui est en dehors du volume de vue. Culling et clipping Eliminer les objets le plus tôt possible. Avant le z-buffer pour ne pas avoir à traiter tous les polygones. Visibility - culling Illumination Viewing Transformation Clipping Projection (to Screen Space) Scan Conversion (Rasterization) Visibility / Display
8
Culling
9
Occlusion culling Qui cache qui ?
Approche globale car concerne toutes les primitives de la scène On veut être conservatif : dans le doute un objet est visible En général on construit un PVS (potentially visible set) Problème équivalent au calcul des ombres
10
Taxonomie Différentes méthodes : Point / région
Espace image / espace objet Portails / générique Différents critères de choix : Conservatif / approximatif, tous les objets sont-ils bloqueurs, convexité des bloqueurs, fusion des bloqueurs, 2D / 3D, hardware, précalcul / à la volée, scènes dynamiques…
11
Graphe d’aspect = ombres douces
12
Cellules et portails Construction du graphe d’adjacence des cellules;
Construction du graphe de visibilite de chaque cellule;
13
A D E F B C G H A E B C D F G H
14
A D E F B C G H A E B C D F G H
15
A D E F B C G H A E B C D F G H
16
A D E F B C G H A E B C D F G H
17
A D E F B C G H A E B C D F G H
18
Création de cellules et portails
Algorithme de remplissage avec de l’eau pour trouver les portails Denis Haumont 2003
19
Occlusion maps Espace image, générique
Séparer objets qui cachent et sont cachés : occluders / occludees
20
Occlusion maps On sépare profondeur et recouvrement
View Point X Z Y profondeur recouvrement = occlusion
21
Occlusion maps Représentation de la projection pour tester le recouvrement : carte d’occlusion Rendu des occluders Image Carte d’occlusion
22
Hierarchical occulsion map
Pyramide de cartes d’occlusion Accélère les tests
23
Projection cumulée : Générée par une moyenne récursive
Stocke l’opacité moyenne pour un bloc de pixels => représente l’occlusion à de multiples résolutions. Construction accélérée en utilisant les textures. 64 x 64 32 x 32 16 x 16
24
Scènes 2D ½
25
Visibilité par région Le calcul est amorti
Souvent preprocessing puis prédiction
26
Projection étendue Test de recouvrement Test de profondeur
27
Projection depuis un point
Recouvrement et test de profondeur
28
Projection depuis un volume
Recouvrement et test de profondeur
29
Conservatif Intersection des bloqueurs
30
Conservatif Intersection des bloqueurs Union des objets cachés
31
Conservatif Sur-estime les bloqueurs Sous-estime les objets cachés
32
Fusion des bloqueurs Deux bloqueurs A B
33
Fusion des bloqueurs Projection du premier bloqueur A B
34
Fusion des bloqueurs Projection du deuxieme bloqueur
Aggregation dans une image (pixel-map) A B
35
Fusion des bloqueurs Test d’occlusion
On traite bien la combinaison de A et B A B
37
Autres méthodes Approximation en échantillonnant les bords de la cellule
38
Autres méthodes Calcul volumétrique avec une voxelisation de la scène
39
Retour sur la taxonomie
Région vs. Point Amortissement au cours du temps Prédiction, organisation de la mémoire Pré-calcul, stockage du PVS Pas d’objets en mouvement Objet vs. Image Précision : image = résolution, objet = LOD Objet nécessite une hiérarchie
40
Retour sur la taxonomie
Conservatif vs. approximatif Fusion des bloqueurs Taille moyenne des objets Sont-ils tous bloqueurs ? Scènes dynamiques Part du pré-calcul Approximation des objets dynamiques
41
Structures d’accélération
On ne peut pas tester chaque polygone Il faut organiser et hiérarchiser la scène pour accélérer les calculs Boites englobantes Hiérarchie de boites englobantes Grilles d’accélération
42
arbitrary convex region (bounding half-spaces)
Boites englobantes bounding sphere non-aligned bounding box axis-aligned bounding box arbitrary convex region (bounding half-spaces)
43
Potentiellement Visible
Boites englobantes Permet une réponse conservative rapide Bout de boite visible => potentiellement visible Boite cachée => sûrement caché Potentiellement Visible Caché
44
Hiérarchie de boites englobantes
Testée de haut en bas pour raffiner les réponses Equivalent à un parcours d’arbre
45
Construction de la hiérarchie
Trouver la boite englobante de chaque objet Couper la scène en deux Au milieu ou avec la moitié des objets de chaque coté Recommencer récursivement jusqu’à des régions ne contenant plus qu’un seul objet ou dépassent un seuil
46
Construction de la hiérarchie
47
Construction de la hiérarchie
48
Construction de la hiérarchie
49
Construction de la hiérarchie
50
Construction de la hiérarchie
51
Grille régulière
52
Création de la grille Boite englobante de la scène Longueur
gridx ≠ gridy Cell (i, j) gridy gridx
53
Insertion des primitives
Primitives qui couvrent plusieurs cellules ? Insertion dans chaque cellule (pointeurs)
54
Grille adaptative Subdivision récursive
Arrêt sur nb d’éléments ou niveau de profondeur Nested Grids Octree/(Quadtree)
55
Primitives dans une grille adaptative
Vivent aux niveaux intermédiaires ou aux feuilles ? Octree/(Quadtree)
56
Structures d’accélération - Discussion
Facilité de construction Facilité de parcours Couverture spatiale, remplissage des cellules Lien avec la géométrie
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.