Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ténicas de Culling
Ténicas de Culling
Backface culling
Clustered Backface culling
Hierarchical view-frustum culling
Portal culling
Detail culling
Occlusion culling
Concepto de Culling
“Cull” significa “Seleccionar de un grupo”
En el contexto de computación gráfica:
No procesar datos que no vayan a
contribuir a la imagen final
Una forma más práctica de definirlo:
backface
l occlusion
porta
Backface Culling
Simple algoritmo que descarta poligonos
que no miren al usuario.
Usado para:
– Mejorar la estética de los objetos ocultando
partes que no se ven.
– Minimizar la cantidad de poligonos que debe
dibujar la tarjeta gráfica.
Backface Culling
Clustered Backface Culling
Consiste en la misma idea del Backface
Culling sin embargo remueve un
conjunto de poligonos en vez de
removerlos uno por uno.
Tiene la misma funcionalidad que el
backface culling, pero con una
complejidad un poco mayor.
Es muy útil para escenas donde la
cámara no se mueve.
Clustered Backface Culling
View-Frustum Culling
Consiste en sólo dibujar los poligonos de
objetos que se encuentren parcial o
completamente dentro del campo de
visión de la camara.
La tecnica usa el Bounding Volume de
cada objeto para determinar si el objeto
se encuentra dentro del rango de visión.
Si no se encuentra no se dibuja.
View-Frustum Culling
Sin Aplicar View-Frustum Culling
Aplicando View-Frustum Culling
Hierarchical View-Frustum Culling
Es una optimización del View-Frustum
Culling, en donde cada Bounding Volume
es ordenado jerárquicamente usando
estructuras de árboles AABB,BSP u
Octrees.
Cada Nodo padre representa una zona de
vision que acumula objetos, siendo la raíz
la zona más amplia, y los nodos hijos son
cada unos de los objetos dentro de la
escena.
Hierarchical View-Frustum Culling
El algoritmo recorre, empezando por la
raíz, cada Nodo Padre y determina si
está dentro del rango de visión.
Si está, entonces se verifican sus hojas
(objetos) y si tambien se encuentran en
el rango de visión se dibujan en caso
contrario no se dibuja.
Si no está, entonces se ignora y se
continua con otro nodo
Ejemplo de Hierarchical View
Frustum Culling
root
camera
Hierarchical View-Frustum Culling
Con esta técnica se puede sacar mucha ventaja de
la coherencia temporal, esto quiere decir que
probablemente muchos de los objetos dentro del
rango de visión aun se encuentren ahí después de
algún desplazamiento.
Se optiene de un 0%-99% de incremento en la
fluidez de la aplicación gráfica
Portal Culling
Se actualiza el
View Frustum
Culling en el
portal por cada
portal
movimiento de la eye
cámara
Portal Culling Estático
Imágenes
preprocesadas
Se muestran una
cierta cantidad de
imágenes
preprocesadas portal
Detail Culling
El detail culling consiste en eliminar
poligonos de un objeto dependiendo de
que tan lejos este del espectador.
Mientras que otras técnicas de culling
aumentan rendimiento sin sacrificar
calidad el Detail Culling por contra
sacrifica calidad en favor de rendimiento
Detail Culling
Detail Culling
El método consiste en proyectar el
Bounding Volume asociado al objeto y
determinar cuantos pixeles ocupa dentro
de tú visión, dependiendo de ciertos
umbrales definidos por el programador,
el objeto se dibuja con mayor o menor
calidad o sencillamente no se dibuja.
Recordemos View-Frustum Culling
Occlusion Culling
El método consiste en revisar si existe
solapamiento de polígonos y objetos por
otros objetos. Si se determina que existe
tal solapamiento se eliminan los
polígonos ocultos.
Existen dos maneras en aplicarlo:
– Hierarchical z-Buffering
– Hierarchical Occlusion Maps
Occlusion Culling
Hierarchical z-Buffering
backface
l occlusion
porta
Ventajas del Culling
Dependiendo de la técnica se puede
mejorar la estética de la escena
Se aprovecha mejor el pipeline gráfico
obteniendo un mejor rendimiento de la
aplicación gráfica
Desventajas del Culling
Algunos algoritmos pueden ser
complejos de implementar
Pueden en algunos casos no beneficiar a
a la aplicación