What is Ambient Occlusion (AO)?
CGI Visualization to Perfection
Danthree Studio turns complex 3D tech into high-converting marketing assets. Get high-end quality for your brand.
Discuss your projectWhat is Ambient Occlusion (AO)?
Definition of Ambient Occlusion (AO)
Ambient Occlusion (AO) estimates the extent to which neighboring geometry obscures the surroundings of a surface point. As a result, recesses and contact areas may appear darker. In product and interior renderings, this helps to highlight joints, transitions, and the point of contact with the floor. However, AO does not calculate the full lighting or the actual color of a material.

How It Works
AO approximates occlusion caused by surrounding geometry. The distance considered and the calculation method affect the result. Common approaches include:
- Baked AO map: a pre-calculated grayscale texture, used, for example, for 3D product images or real-time assets. Learn more: Texture Baking (Map Baking)
- Screen-Space Ambient Occlusion (SSAO): estimates AO based on depth information and, depending on the method, surface normals from the current camera frame. Geometry that is occluded or lies outside the frame is not included in this approximation.
- Ray-Traced AO: scans the surrounding geometry using rays. This can also take into account geometry outside the camera frame, but it remains an AO approximation and is not a complete lighting simulation.
You can find more technical details about ambient occlusion here: Unreal Engine: Fundamentals and Limitations of SSAO
AO view and final interior rendering compared
The slider shows the gray AO rendering and the finished living room image. In the final image, materials, lighting, and other visual elements are added. Therefore, the comparison does not isolate the effect of AO alone.
From Technical Term to Visual Experience
We don't just use these technologies; we master them. See how we create photorealistic worlds for leading brands.
View WorkAmbient Occlusion and Ray Tracing: Different Purposes
| Criterion | Ambient Occlusion | Ray Tracing |
|---|---|---|
| Objective | Approximate occlusion caused by geometry | Tracing rays through the scene, for example, for visibility or lighting |
| Quality | Emphasizes recesses and contact areas; does not replace lighting calculations | Results depend on the lighting model, materials, and sampling |
| Performance | A precomputed map is inexpensive to process; SSAO requires additional processing time | Computational cost depends on the method, ray count, and hardware |
| Real-time | Possible depending on the method and target device | Depending on the engine and hardware, this may be possible; WebGPU alone does not guarantee hardware-based ray tracing |
Ambient Occlusion Workflow
- Determine the intended use: Does the target system require an AO texture, a real-time effect, or a separate render pass? It is not necessary to combine all of these approaches. The foundation is a suitable 3D model.
- Prepare the AO map: For a baked texture, check UVs, resolution, object spacing, and ray distance. Moving parts or changes to nearby objects can make baked occlusion inaccurate.
- Test in the target system: Load AO as non-color data and use the designated material channel. For SSAO, test the radius, intensity, and edge artifacts at multiple camera positions. For AR applications, the performance of the target device is also important.
- Use compositing judiciously: Only add an AO pass when there is a valid reason to do so. Applying a blanket multiplier across the entire finished image can darken directly lit areas or already-calculated contact shadows too much. Learn more about shaders for CGI.
- Compare the results: Turn AO on and off, check light-colored materials and joints, and evaluate the image against the product references. Treat texture, render pass, and final image separately; format and color space depend on how the image will be used.
Checkpoints for Ambient Occlusion
- Use AO sparingly. Dark edges must not distort the material or shape.
- Load AO textures as non-color data, without sRGB color transformation.
- Check the SSAO radius and intensity for halos and flickering when switching between views.
- Keep the AO pass separate for post-processing so you can adjust its contribution.
- Check whether AO Map, real-time effects, and global illumination are darkening the same areas multiple times.
AO in the material: Three.js: AO maps and non-color data (example for a browser application)
FAQ: Ambient Occlusion
What is Ambient Occlusion (AO)?
AO estimates the extent to which the area around a surface point is obscured by neighboring geometry. This allows contact areas and recesses to be emphasized. AO does not replace scene lighting or material testing.
Do I need AO when I use ray tracing?
Not necessarily. Ray tracing is a method of tracing rays, not a particular complete lighting solution. If your renderer already calculates the relevant indirect lighting, additional AO can create overly dark edges. Compare the result with and without AO.
How do I bake an AO map?
In Blender Cycles, you'll need a prepared mesh with a UV map and an active target image or a suitable color attribute. Select the AO bake type, check the settings, and save the result. A separate high-poly model isn't always required for this. For more details, see the Blender manual on baking.
What is SSAO?
Screen Space Ambient Occlusion is an approximation based on depth information and, depending on the method used, the normals of the current camera frame. It requires additional processing time and may be incomplete at the edges of the image or when geometry is occluded. The Unreal documentation explains the SSAO principle.
Can I use ambient occlusion in the browser?
Yes, if the viewer supports the AO map or a suitable real-time effect. In glTF, the occlusion texture’s red channel stores occlusion for indirect lighting. This guarantees neither photorealistic images nor a particular loading time. The glTF specification and the viewer’s implementation determine how it works.
Does an AO map replace the normal map?
No. AO controls shading, while a normal map modifies the surface normals used for lighting. Neither of these, on their own, alters the silhouette. Geometry or displacement may be necessary for pronounced folds or other visible shapes.
What's important when it comes to product images?
AO must not simulate dark seams, joints, or differences in material that the product does not actually have. It is crucial to compare the images with the reference images under the intended lighting conditions. For 3D product images, we tailor the model, material, and image composition to the specific project.
