Baking Ambient Occlusion using Blender
⚠️ This post was last updated in 2022, meaning its contents may be outdated.
Ambient occlusion is the shadow caused by the mesh itself, so for example in the corners of the mesh. Here's a sample of a crate mesh with only its ambient occlusion texture visible:

Below is the crate mesh with the same ambient occlusion texture combined with the diffuse texture:
This is normally also computed at real time in the game engine, but you may want to bake an ambient occlusion texture for the following reasons:
- Using the ambient occlusion as a mask for something else, for example dirt
- Exaggerating the ambient occlusion for meshes
- Baking an ambient occlusion texture as one of the inputs for a PBR renderer
Pre-Requisites for Baking Ambient Occlusion
There is one main pre-requisite, and that is that your mesh does NOT have overlapping UVs.
If it does, and cleaning them up would be difficult, you can create a new UV map with blender, and when sampling from the ambient occlusion texture, use the second UV map. This does require a new sampler though, so may be less efficient depending on your use case.
Here's the workflow I used to create the texture with Blender:
Add a Material
The first step is to create a material.

Ensure that "Use Nodes" is selected:

Add a Texture
Head over to the Shading tab, and add a new Image Texture to the material graph:

Click "New", and give the texture your desired dimensions:

Important: Do NOT connect the texture to anything! It must float on its own with no connections.
Bake Ambient Occlusion
Go to the "Scene" tab, and select the "Cycles" Rendering Engine:

Under the "Bake" section, select "Ambient Occlusion":

Click the "Bake" button. You may want to reduce the maximum number of samples under the "Sampling" header if it takes too long:

Save the Texture
Go to the "Rendering" tab, and select the name of the texture you created in step #2 from the dropdown box:

From the image menu, click "Save As":

That's it! Your ambient occlusion texture is ready for use.

🏷️ texture ambient occlusion mesh bake sample material blender iframe engine uv map step image connect
Please click here to load comments.