Oclusión ambiental del espacio de la pantalla

  • Autor de la entrada:
  • Categoría de la entrada:Diccionario / Videojuegos
  • Tiempo de lectura:4 minutos de lectura

La oclusión ambiental del espacio de la pantalla (SSAO) es una técnica de gráficos por computadora para aproximar de manera eficiente el efecto de oclusión ambiental en tiempo real.

Fue desarrollado por Vladimir Kajalin mientras trabajaba en Crytek y fue utilizado por primera vez en 2007 por el videojuego Crysis, también desarrollado por Crytek.

Implementación de la oclusión ambiental

El algoritmo se implementa como un sombreador de píxeles, analizando el búfer de profundidad de la escena que se almacena en una textura.

Para cada píxel de la pantalla, el sombreador de píxeles muestrea los valores de profundidad alrededor del píxel actual e intenta calcular la cantidad de oclusión de cada uno de los puntos muestreados.

En su implementación más simple, el factor de oclusión depende solo de la diferencia de profundidad entre el punto muestreado y el punto actual.

Sin soluciones inteligentes adicionales, un método de fuerza bruta de este tipo requeriría aproximadamente 200 lecturas de textura por píxel para una buena calidad visual.

Esto no es aceptable para la renderización en tiempo real en el hardware de gráficos actual. Para obtener resultados de alta calidad con muchas menos lecturas, el muestreo se realiza utilizando un kernel rotado aleatoriamente.

La orientación del núcleo se repite cada N píxeles de la pantalla para tener solo ruido de alta frecuencia en la imagen final. Al final, este ruido de alta frecuencia se elimina en gran medida mediante un N x N.

Paso de desenfoque posterior al proceso que tiene en cuenta las discontinuidades de profundidad (utilizando métodos como la comparación de normales y profundidades adyacentes).

Tal solución permite una reducción en el número de muestras de profundidad por píxel a aproximadamente 16 o menos mientras mantiene un resultado de alta calidad, y permite el uso de SSAO en aplicaciones de software en tiempo real como juegos de computadora.

En comparación con otras soluciones de oclusión ambiental, SSAO tiene las siguientes ventajas:

  • Independientemente de la complejidad de la escena.
  • No se necesita preprocesamiento de datos, no hay tiempo de carga ni asignaciones de memoria en la memoria del sistema.
  • Funciona con escenas dinámicas.
  • Funciona de la misma manera consistente para cada píxel de la pantalla.
  • Sin uso de CPU: se puede ejecutar completamente en la GPU.
  • Puede integrarse fácilmente en cualquier canal de gráficos modernos.

SSAO también tiene las siguientes desventajas:

  • Más bien local y en muchos casos dependiente de la vista, ya que depende de las profundidades de texel adyacentes que pueden ser generadas por cualquier geometría.
  • Es difícil suavizar/difuminar correctamente el ruido sin interferir con las discontinuidades de profundidad, como los bordes de los objetos (la oclusión no debe «sangrar» en los objetos).

Enlaces Externos

Categorías: Gráficos de computadora / Gráficos 3D por computadora / Sombreado / Algoritmos de iluminación global

Fuente: Wikipedia


ROSEPAC

Curador Digital y Redactor. Creador del Diario Ciberninjas. Asturiano amante de las nuevas tecnologías.