Top Banner
Visible Surface Determination (Hidden Surface Removal)
21

Visible Surface Determination (Hidden Surface Removal)

Apr 03, 2015

Download

Documents

Jori Nicolle
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Visible Surface Determination (Hidden Surface Removal)

Visible Surface Determination

(Hidden Surface Removal)

Page 2: Visible Surface Determination (Hidden Surface Removal)

Introduction

Définition:

Techniques permettant depuis un point de vue de déterminer les surfaces visibles d’une scène.

Page 3: Visible Surface Determination (Hidden Surface Removal)

Introduction

2 familles d’algorithme de détermination des surfaces visibles:

•basés image(Z-buffer, Scanline, RayCasting, …)

•basés objet(Backface Culling, Frustum Culling, Hidden Surface Removal, …)

Page 4: Visible Surface Determination (Hidden Surface Removal)

Hidden Surface Removal

Famille d’algorithmes:

• Utilisés au niveau Application du pipeline 3D

• Diminuent le nombre de vertex à traiter

• Généralement utilisé pour rendre une scène de manière conservative

Page 5: Visible Surface Determination (Hidden Surface Removal)

Hidden Surface Removal

Plusieurs étapes:

• Partionnement de l’espace (Spatial partitioning)

• Détermination des surfaces potentiellement visible (PVS)

• Elimination en fonction du point de vue (Frustum culling)

Page 6: Visible Surface Determination (Hidden Surface Removal)

Spatial partitionning

Définition: techniques permettant de subdiviser un espace. Ainsi, on transforme un problème complexe en un ensemble de sous problèmes plus simple.

Principales techniques:

• BSP (Binary Space Partitionning)

• Quadtree, octree

Page 7: Visible Surface Determination (Hidden Surface Removal)

BSP: généralités

Plusieurs approches:

• Face

• Espaces convexes

Page 8: Visible Surface Determination (Hidden Surface Removal)

BSP: par face

0

1 2 3

4

5

0

Vide1

4f

4b

4f

Vide5

2

Vide3

Vide4b

Page 9: Visible Surface Determination (Hidden Surface Removal)

BSP: par face

Avantages:

• Pré-calculé

• Facilitation de l’ordre d’affichage

• Pas d’artéfact à l’affichage

Inconvénients:

• Construction

• Non optimal dans les espaces ouverts

Page 10: Visible Surface Determination (Hidden Surface Removal)

BSP: par espace convexe

Face :

•Disjointe (D) : si pas à l’intérieur de la cellule

•Transversale (T) : si intersection avec ces deux extrémité et la cellule

•Couvrante (C) : si confondu avec un cote de la cellule

•Incidente (I) : si non

a

bd

c

g

fe

e

a = C, b = D, c = C, d = C, e = C, f = D, g = D

a = C, b = C, c = C, d = D, e = C, f = I, g = If

a = C, b =C, c = D, d = D, e = C, f = C, g = I

a = D, b = C, c = C, d = D, e = C, f = C, g = D

g

a = C, b = C, c = D, d = D, e = D, f = C, g = C

a = C, b = D, c = D, d = D, e = C, f = C, g = C

a = C, b = C, c = C, d = C, e = T, f = I, g = I

Page 11: Visible Surface Determination (Hidden Surface Removal)

BSP: par espace convexe

Avantages:

• Pré-calculé

• Facilitation de l’ordre d’affichage

• Repérage facile dans la scène

Inconvénients:

• Construction

• Non optimal dans les espaces ouverts

Page 12: Visible Surface Determination (Hidden Surface Removal)

Quadtree/Octree

Page 13: Visible Surface Determination (Hidden Surface Removal)

Quadtree/Octree

Avantages:

• Pré-calculé

• Construction

• Repérage facile dans la scène

Inconvénients:

• Non optimal dans les espaces fermés

• Génère de nouvelles faces

Page 14: Visible Surface Determination (Hidden Surface Removal)

PVS: Généralités

Définition:C’est l’ensemble des cellules potentiellement

visible depuis une cellule donnée.Plusieurs étapes:• Graphe d’adjacence• Ligne de vue à travers une séquence de

portails

Page 15: Visible Surface Determination (Hidden Surface Removal)

PVS: Graphe d’adjacence

a

bd

c

g

fe

e : O

{a, c, d, e} f : NO

{b, c, e, f}

g : NO

{a, e, f, g} {a, f, g, b}

Plan opaque : O

Plan non opaque : NO

Page 16: Visible Surface Determination (Hidden Surface Removal)

PVS: Ligne de vue

AB

CE

D

Depuis A, on peut potentiellement voir :

A (B)A (B, C)A (B, C, D)A (B, C, D)

Page 17: Visible Surface Determination (Hidden Surface Removal)

Frustum culling

Effectué pendant l’exécution car dépend du point de vue.

Plusieurs techniques applicables à nos arbres de scènes.

Nous allons traiter la technique du Portal

Page 18: Visible Surface Determination (Hidden Surface Removal)

Portal

AB

CE

D

Page 19: Visible Surface Determination (Hidden Surface Removal)

Portal

A

B

CE

D

Page 20: Visible Surface Determination (Hidden Surface Removal)

Conclusion

• Techniques haut niveau

• Pas d’implémentation hardware

• Algorithme très performant

Page 21: Visible Surface Determination (Hidden Surface Removal)

REFERENCES

Quake’s Visible Surface Determination – Mickael ABRASH – 1995 Computer Graphics : Principles and Practice – James D. FOLEY et al – 1994Visible Preprocessing for Interactive Walkthroughs – Seth TELLER – 1991Visible computations in densely occluded polyhedral environment – Seth TELLER

WEB

http://www.siggraph.orghttp://www.gamasutra.comhttp://hulud.planet-d.net/bsp.html

Moteur de recherche

http://citeseer.nj.nec.com/cs