Title: RENDU DE TERRAIN
1RENDU DE TERRAIN
- Problématique
- Rendre une très large zone de terrains en la
simplifiant au maximum pour réduire le nombre de
polygones à afficher.
2Représentation du terrain
- Le terrain est représenté par une grille
délévation
X
1
10
20
17
15
12
16
21
32
16
8
14
Y
3Techniques de rendu de terrain en temps réel
- Continuous LOD rendering of heigh fields (1996)
- ROAM Real-time Optimally Adapting Meshes
(1997) - Comparaison des 2 méthodes
4Real-Time, Continuous Level of Detail Rendering
of Height Fields
5Représentation du terrainLa surface
- La surface correspondante est composée dun
ensemble de blocs de triangles de taille 3x3
points
6Représentation du terrainLes blocs
- Chaque bloc peut être décomposé en une grille de
sous-blocs de même dimension
7AlgorithmeÉtapes
- Cet algorithme se décompose en deux étapes
- Simplification dun bloc point par point.
- Simplification de la surface par bloc.
8AlgorithmeSimplification par point
- Les deux triangles droit et gauche dun quadrant
peuvent être fusionnés selon quune certaine
condition soit vérifiée
9Simplification par pointCondition de
simplification
- Soit ? la distance verticale maximale entre les
deux triangles obtenus après simplification
10Simplification par pointCondition de
simplification
- ? projeté sur le plan de projection indique
lerreur maximum perceptible entre les deux
triangles fusionnés et le triangle résultat de la
fusion. - Si ? est inférieur à un certain seuil ? alors les
triangles peuvent être fusionnés. - Lopération est répétée récursivement avec le
triangle obtenu et un triangle adjacent.
11AlgorithmeSimplification par bloc
- Pour ne pas avoir à considérer tous les points de
la surface pour la simplification, lalgorithme
procède par bloc.
12Simplification par blocPrincipe général
- Si toutes les valeurs ? des points dun bloc sont
inférieures à ? alors le bloc peut être
directement remplacé par un bloc de moindre
résolution. - De plus, de larges zones de terrain peuvent être
éliminées par test avec la pyramide de vue.
13Résultats
14ROAMing Terrain - introduction
- Algorithme populaire de LOD
- Utilisé dans simulateurs de vol, jeux, réalité
virtuelle - Principe de découpage et fusion de facettes
ingénieux
15Structure de données arbre binaire
? Calculé dans pré-processeur
Va
(Vo,V1)
Vo
V1
16Structure de données arbre binaire
Va
(Vo,V1)
Vo
V1
Vc1
(Vc1,Va,Vo)
(Vc1,V1,Va)
Level 2
17Accès aux structures de données Split / merge
opérations
- 3 cas
- La face fait partie dun diamant - Split la face
et  Base Neighbor . - La face est à coté du maillage - Trivial, split
la face. - La face nappartient pas à un diamant Forcer le
découpage du  Base Neighbor .
18Forcer le découpage dune face
Base neighbor
Current triangle
- récursivement, forcer le découpage jusquÃ
trouver un diamant !
- le triangle original peut maintenant être
découpé.
-  Current triangle nappartient pas à un
diamant
19Optimisation par files de priorités
- Priorités sur chaque facette.
- Si point de vue change modification des
priorités selon les frames précédentes. - Split file contient les triangles à raffiner.
- Merge file contient les triangles à fusionner.
- Cohérence frame-to-frame ( pour les grands
terrains !) - Maillage optimal 1ère frame coûteuse, le reste
peu coûteux grâce aux files.
20Étude de performances
- Performance proportionnelle au nb de changements
de triangles de la frame précédente ! ?et non la
taille de la carte ! - Tests sur Indigo2 Silicon Graphics
- View frustum culling ok - flags pour chq
triangle de larbre binaire. - T-Stripping bien, dû à la structure du terrain
21Évolutions
- Diamond Terrain algo (2001) H.Hakl
- Basé sur ROAM, avec une structure de triangle
quadtrees. - 4 files LIFO (à la place des files de priorités)
- Meilleur pr triangle stripping
- Moins dopérations split/merge
- ex 5 Splits pr Diamond pr réduire une face en
16 sous-facettes. ROAM fait 15 splits !
22Quelques graphiques
23Comparaison des méthodes