
Ambient Occlusion explicado: SSAO vs HBAO vs GTAO (Guía 2026)
Resumen
Introducción
El ambient occlusion es uno de esos conceptos de renderizado que todo el mundo ha visto en pantalla durante más de quince años y que casi nadie puede definir con claridad. Abre el menú de configuración de un juego y lo más probable es que encuentres un interruptor de "Ambient Occlusion" con opciones llamadas SSAO, HBAO o GTAO. Abre Blender, Cinema 4D o 3ds Max y encontrarás un pase de AO enterrado en la configuración de renderizado. Las capturas de pantalla parecen ligeramente distintas entre sí, el impacto en el rendimiento varía en un orden de magnitud y la documentación rara vez explica el compromiso real.
En Super Renders Farm llevamos ejecutando trabajos de renderizado distribuido en CPU y GPU desde 2010, y el ambient occlusion aparece en aproximadamente la mitad de los tickets de soporte que recibimos para trabajos de archviz y visualización de producto. El patrón es consistente: los artistas o bien dependen demasiado del AO como atajo para la iluminación global, o lo desactivan y acaban con geometría flotante que parece desanclada del suelo. Ambos errores son corregibles una vez que entiendes qué está calculando realmente el AO.
Esta guía explica el ambient occlusion desde los principios fundamentales, recorre los tres algoritmos en tiempo real que la mayoría de motores incluyen en 2026 (SSAO, HBAO, GTAO) y analiza cuándo el horneado de AO es lo bastante rápido para mantenerlo en una sola estación de trabajo frente a cuándo pertenece a un render farm. Lee las preguntas frecuentes al final para obtener respuestas rápidas a las preguntas que recibimos con más frecuencia.
Qué es realmente el ambient occlusion
El ambient occlusion es una técnica de sombreado que aproxima cuánta luz ambiental llega a cada punto de una superficie comprobando en qué medida ese punto está "ocluido" por la geometría cercana. Una esquina donde una pared se encuentra con el suelo recibe menos luz ambiental que el centro abierto del mismo suelo, porque la esquina tiene más geometría bloqueando los rayos entrantes desde el hemisferio superior. El AO oscurece esa esquina. Eso es todo el efecto.
La razón por la que el AO se volvió omnipresente es económica. Una solución completa de iluminación global —hacer rebotar la luz en cada superficie e integrarla correctamente— es costosa. El AO captura un componente específico de la iluminación global (el autosombreado local de la luz ambiental o de cielo) de forma muy barata, muestreando rayos solo a corta distancia del punto sombreado. En el renderizado offline generalmente querrás una iluminación global completa; el AO queda entonces desactivado o se usa como un sutil potenciador de sombras de contacto. En el renderizado en tiempo real, el AO ha sido históricamente la única aproximación factible del sombreado indirecto, razón por la que todos los motores de juego incluyen al menos un algoritmo de AO.
Conviene aclarar algunos conceptos erróneos habituales:
- El AO no es una sombra procedente de una fuente de luz. Oscurece independientemente de la ubicación de las luces, porque representa la oclusión de todo el hemisferio ambiental.
- El AO no es iluminación global. La iluminación global real tiene en cuenta el rebote de color y brillo de la luz indirecta entre superficies; el AO solo oscurece. Usar el AO como sustituto de la iluminación global es una causa habitual de renders de archviz con aspecto turbio.
- El AO no es automáticamente físicamente correcto. El resultado depende por completo del algoritmo y de la distancia máxima de rayo que establezcas. Aumenta demasiado el radio y un interior limpio se convertirá en una cueva sucia.
El manual de Blender cubre el nodo de AO offline en su documentación sobre el shader Ambient Occlusion, que es una referencia útil si quieres leer las matemáticas reales detrás del muestreo.
SSAO vs HBAO vs GTAO: tres algoritmos, un mismo efecto
Los tres algoritmos que encontrarás en los motores de juego de 2026 apuntan al mismo objetivo visual, pero presentan compromisos distintos entre velocidad, calidad y estabilidad según la dirección de visualización.
| Algoritmo | Año de introducción | Qué muestrea | Costo típico (1080p, GPU clase RTX) | Fortalezas | Debilidades |
|---|---|---|---|---|---|
| SSAO (Screen-Space AO) | 2007 (Crytek, Crysis) | Muestras aleatorias en el espacio de pantalla alrededor de cada píxel, solo buffer de profundidad | ~0,3–0,8 ms | Muy barato, presente en todos los motores | Ruidoso, halos alrededor de siluetas, parpadeo dependiente de la vista |
| HBAO / HBAO+ (Horizon-Based AO) | 2008 (NVIDIA) | Recorre rayos en el buffer de profundidad para encontrar el ángulo del horizonte en múltiples direcciones | ~0,8–1,5 ms | Más suave que SSAO, menos halos, consciente de la geometría | Más costoso, sigue siendo de espacio de pantalla, puede ignorar oclusores fuera de pantalla |
| GTAO (Ground-Truth AO) | 2016 (Activision/Intel) | Integra el cono de visibilidad de forma analítica, derivado para coincidir con el AO trazado por rayos offline | ~1,0–2,0 ms | La aproximación más cercana a la referencia trazada por rayos, estable en movimiento, caída calibrada | Ligeramente más costoso que HBAO, requiere una sintonización cuidadosa del radio y la caída |
El artículo original de NVIDIA sobre Horizon-Based Ambient Occlusion en espacio de imagen sigue siendo la referencia canónica para la familia basada en horizonte, y el documento técnico de Activision sobre estrategias prácticas en tiempo real para oclusión indirecta precisa (GTAO) cubre la derivación de GTAO que AMD e Intel adoptaron posteriormente.
Un modelo mental útil: SSAO es un truco rápido con artefactos visibles; HBAO es un truco más inteligente que conoce la geometría; GTAO está calibrado frente a una referencia offline y es lo que querrás cuando puedas permitirte el costo. En cualquier GPU moderna lanzada en los últimos tres o cuatro años, los tres son esencialmente gratuitos a 1080p — la elección es sobre calidad y estabilidad en movimiento, no sobre la tasa de fotogramas.
Existe una línea evolutiva separada para el AO trazado por rayos (RTAO), que utiliza las unidades de trazado de rayos por hardware de la GPU para disparar rayos reales por píxel. El RTAO es lo que activas cuando te queda presupuesto de trazado de rayos después de los reflejos y las sombras; es lo más parecido al "ground truth" en tiempo real, pero todavía no es el predeterminado en la mayoría de motores debido al costo en GPUs de gama baja.
¿Deberías activar o desactivar el ambient occlusion?
Esta es una de las búsquedas más comunes sobre el tema ("ambient occlusion on or off") y la respuesta depende de lo que estés haciendo.
Para gaming, casi siempre vale la pena mantener el AO activado. La mejora visual derivada de las sombras de contacto ancladas bajo muebles, vegetación y personajes es significativa, y en hardware lanzado desde la serie RTX 20 el costo es de unos pocos milisegundos. La única situación en la que desactivarlo ayuda es con una GPU mucho más antigua conectada a un monitor de alta tasa de refresco, donde cada milisegundo importa.
Para previsualizaciones en tiempo real en software DCC (Eevee, viewport de Cinema 4D, viewport de 3ds Max), el AO es útil para las decisiones de bloqueo e iluminación, pero no debería utilizarse para juzgar la imagen final. El AO del viewport suele ser una aproximación SSAO de baja calidad. Hemos visto artistas tomar decisiones de iluminación basadas en el AO del viewport que desaparecen en el renderizado final.
Para renderizado offline final (Cycles, V-Ray, Corona, Arnold, Redshift), la respuesta es más matizada. Si tu escena usa una solución completa de iluminación global —trazado de rutas de Cycles, fuerza bruta de V-Ray o caché de luz, el trazador de rutas de Corona, la iluminación global de Arnold— entonces el AO ya está implícitamente contemplado en la iluminación indirecta, y añadir un pase de AO explícito normalmente hace la imagen más oscura de lo que debería. Si trabajas en un flujo estilizado o NPR donde la iluminación global físicamente precisa no es el objetivo, un pase de AO explícito puede agregar un oscurecimiento de contacto útil; hornéalo como un elemento de renderizado separado para que puedas ajustar la contribución en la composición en lugar de integrarlo en el beauty.
La respuesta corta: déjalo activado en los juegos, desactívalo como efecto de imagen final cuando tengas iluminación global completa, y hornéalo como un pase cuando necesites control estilizado.
Ambient occlusion en juegos vs renderizado offline
Existe una diferencia estructural entre el AO en motores en tiempo real y el AO en renderizadores offline que vale la pena explicitar, ya que aclara buena parte de la confusión.
El AO en tiempo real opera sobre el buffer de profundidad. El motor ya ha rasterizado la escena, tiene profundidad por píxel (y normalmente normales), y el pase de AO recorre los píxeles vecinos en el espacio de pantalla para estimar la oclusión. Esto es rápido, pero tiene dos limitaciones estructurales: cualquier elemento fuera de pantalla no contribuye a la oclusión (de modo que una pared justo fuera del frustum de la cámara no oscurecerá la esquina de un objeto visible), y el patrón de muestreo debe ajustarse cuidadosamente para evitar el ruido y el parpadeo según la dirección de la vista.
El AO offline opera sobre la geometría real de la escena. El renderizador dispara rayos desde cada punto de sombreado y mide la oclusión en el espacio 3D real. Esto es más lento por muestra, pero produce resultados estables y fieles a la realidad que no parpadean cuando la cámara se mueve y no ignoran oclusores que están fuera de pantalla. La mayoría de los renderizadores de producción exponen el AO offline ya sea como un nodo (Blender Cycles, Arnold) o como un pase de renderizado (V-Ray, Corona, Redshift).
Cuando un artista pregunta "¿por qué mi AO luce diferente en el viewport que en el renderizado final?", la respuesta es casi siempre esta: el viewport está ejecutando AO de espacio de pantalla y el renderizado final lo calcula en el espacio del mundo. Son algoritmos distintos que producen imágenes distintas.
Para una mirada más profunda al lado de la GPU, nuestra página de render farm GPU en la nube cubre cómo configuramos hardware de clase RTX para cargas de trabajo de renderizado GPU tanto en tiempo real como offline.
Por qué el horneado de AO ralentiza la producción
La pregunta de rendimiento más relevante para los equipos de producción no es el AO en tiempo real —que es esencialmente gratuito en 2026— sino el horneado de AO offline, que es donde los flujos de trabajo realmente se ralentizan.
Hornear AO significa precomputar el valor de AO para cada texel de un mapa UV y almacenarlo en una textura. Se usa ampliamente en los flujos de trabajo de juegos (donde el mapa de AO horneado se muestrea en tiempo de ejecución en lugar de calcular el AO en vivo) y en algunos flujos de trabajo de archviz para iluminación estática. El costo depende de tres cosas: complejidad de la escena, resolución de la textura y cantidad de rayos.
A continuación se muestra una tabla representativa de tiempos de horneado de trabajos que hemos ejecutado para clientes en la flota de Super Renders Farm. Estos números corresponden a horneados por CPU en Blender Cycles en nuestro nodo CPU estándar (Dual Intel Xeon E5-2699 v4, 44 núcleos, 256 GB RAM); tus tiempos en una sola estación de trabajo serán considerablemente más largos.
| Tipo de escena | Cantidad de polígonos | Resolución del mapa UV | Muestras por texel | Tiempo por nodo | Notas |
|---|---|---|---|---|---|
| Prop principal, baja complejidad | ~50K | 2048² | 256 | 2–3 min | Horneado trivial, una estación de trabajo es suficiente |
| Interior arquitectónico, habitación individual | ~500K | 4096² | 512 | 25–40 min | Límite — depende del plazo |
| Exterior de archviz completo con vegetación | ~5M | 4096² × 8 tiles | 512 | 4–6 horas | Doloroso en una estación de trabajo, rápido en un render farm |
| Entorno de juego, horneado de nivel completo | ~10M | 8 × 4096² atlases | 1024 | 10–18 horas | Bloquea al artista todo un día en una estación de trabajo |
| Lote de horneado de biblioteca de assets cinematográficos | mixto | mixto | 512–1024 | 30–80 horas en total | Secuencial en una estación de trabajo, paralelo en un render farm |
El punto de equilibrio en nuestra experiencia está alrededor de los 30 minutos para un solo horneado. Por debajo de ese tiempo, la sobrecarga de empaquetar la escena, subir y descargar el resultado supera el tiempo ahorrado. Por encima de ese umbral, especialmente cuando un artista está sentado esperando a que termine el horneado, distribuir el trabajo entre muchas máquinas gana claramente. Los horneadores basados en tiles (Blender, V-Ray, Arnold) se paralelizan especialmente bien porque cada tile es un trabajo independiente.
Vemos esto en Super Renders Farm con mayor frecuencia durante la fase de finalización de assets de una producción: docenas de props necesitan horneados de AO frescos, los artistas están bloqueados, y un render farm absorbe la cola durante la noche. Para contexto de precios, consulta nuestra guía de precios de render farm, y para números de referencia en toda la flota, el benchmark de hardware de render farm con Cinebench 2026 cubre cómo se comparan nuestros nodos CPU en cargas de trabajo de CPU paralelas.
Ambient occlusion en los principales DCCs
Cada DCC principal implementa el AO de forma ligeramente diferente, y el consejo práctico varía según el programa.
Blender expone el AO en tres lugares: el interruptor de AO del viewport de Eevee (una aproximación rápida al estilo SSAO/HBAO), el nodo de AO de Cycles (para uso a nivel de shader, p. ej. máscaras de suciedad en materiales) y el pase de renderizado de AO de Cycles (un pase de AO trazado por rayos real junto al beauty). El horneado de AO de Cycles a través del panel Bake es el flujo de trabajo que usa la mayoría de los equipos; la tabla de tiempos de horneado anterior se midió en Cycles. Para artistas que ejecutan Blender en una sola estación de trabajo, nuestra página de render farm para Blender en la nube cubre cómo escalan los horneados de AO de Cycles en nuestra flota.
Cinema 4D ofrece AO tanto en el renderizador Standard/Physical como en Redshift. En Redshift, el AO se usa normalmente como efecto de shader o como pase de composición en lugar de como sustituto de la iluminación global. La página de render farm para Cinema 4D en la nube cubre la configuración específica de Redshift. Vemos que la mayoría de usuarios de C4D + Redshift calculan el AO como elemento de renderizado y lo combinan en After Effects en lugar de hornearlo en el beauty.
3ds Max con V-Ray tiene un material VRayDirt dedicado y un elemento de renderizado VRayExtraTex AO. El enfoque con Dirt es más flexible porque permite controlar la caída, el desenfoque y la oclusión invertida (cavidad) por material; el enfoque con elementos de renderizado es más rápido de configurar pero menos ajustable. Para usuarios de Corona en 3ds Max, el equivalente es el mapa CoronaAO.
Arnold (en Maya, Houdini o 3ds Max) trata el AO como otro problema de muestreo más y lo expone a través del shader aiAmbientOcclusion y el AOV ambient_occlusion. Como Arnold es un trazador de rutas unidireccional con un muestreo de importancia robusto, los horneados de AO convergen más rápido que en algunos otros renderizadores con igual cantidad de muestras.
El hilo conductor: en cualquier DCC, trata el AO como un pase separado que compositas, no como un reemplazo de la iluminación global en el beauty render. Esto mantiene el flujo de trabajo flexible y te permite cambiar la contribución del AO en postproducción sin volver a renderizar la escena.
FAQ
Q: ¿Qué es el ambient occlusion en términos simples? A: El ambient occlusion es una técnica de sombreado que oscurece las áreas donde la geometría bloquea la llegada de luz ambiental a una superficie — como la esquina donde una pared se une al suelo. Aproxima un componente específico de la iluminación global de forma económica, razón por la que todos los motores de juego y renderizadores offline incluyen una implementación.
Q: ¿El ambient occlusion debería estar activado o desactivado en los juegos? A: Activado, en casi todos los casos. La mejora visual por las sombras de contacto bajo muebles, personajes y vegetación es significativa, y en cualquier GPU lanzada en los últimos años el costo es bastante inferior a 2 ms por fotograma. El único momento en que desactivarlo ayuda es con hardware más antiguo donde estás luchando por cada milisegundo.
Q: ¿Cuál es la diferencia entre SSAO, HBAO y GTAO? A: SSAO es el algoritmo original de espacio de pantalla de 2007 — rápido pero ruidoso con halos visibles. HBAO recorre rayos a través del buffer de profundidad para encontrar el ángulo del horizonte y produce resultados más suaves. GTAO es el más reciente de los tres; está calibrado para coincidir con el AO trazado por rayos offline y es el más estable en movimiento. Los tres operan en el espacio de pantalla y tienen un costo similar en GPUs modernas.
Q: ¿Es el ambient occlusion lo mismo que la iluminación global? A: No. La iluminación global tiene en cuenta el rebote de color y brillo de la luz indirecta entre superficies. El ambient occlusion solo oscurece áreas basándose en la oclusión de la geometría local, sin color ni intensidad de fuentes de luz implicados. Usar el AO como sustituto de la iluminación global es una razón habitual por la que los renders de archviz parecen turbios o planos.
Q: ¿Cuándo necesita realmente un render farm el horneado de ambient occlusion? A: Cuando el horneado tarda más de unos treinta minutos por asset, cuando tienes muchos assets que procesar en paralelo, o cuando el artista está bloqueado esperando el resultado. En la flota de Super Renders Farm vemos que la mayoría de los equipos de producción mueven los horneados a un render farm en la fase de finalización de assets — normalmente una cola de decenas de props que tardarían días en hornearse secuencialmente en una estación de trabajo, pero que se completa durante la noche cuando se distribuye.
Q: ¿Por qué mi ambient occlusion luce diferente en el viewport que en el renderizado final? A: El viewport casi siempre usa una aproximación de espacio de pantalla (una variante rápida de SSAO o HBAO), mientras que el renderizado offline final calcula el AO en el espacio del mundo usando rayos de geometría reales. Son algoritmos distintos que producen imágenes distintas. Para decisiones de iluminación finales, haz un renderizado de previsualización con pocas muestras en lugar de confiar en el AO del viewport.
Q: ¿Puedo usar el ambient occlusion como un pase de renderizado en el renderizado offline? A: Sí, y este es el flujo de trabajo recomendado cuando necesitas control estilizado. Todos los renderizadores principales (Cycles, V-Ray, Corona, Arnold, Redshift) exponen el AO como un elemento de renderizado separado o AOV. Extráelo junto al beauty render y combina los dos en la composición — así puedes ajustar la contribución del AO sin volver a renderizar la escena.
About Alice Harper
Blender and V-Ray specialist. Passionate about optimizing render workflows, sharing tips, and educating the 3D community to achieve photorealistic results faster.


