Image-Based Ambient Lighting

While ambient lighting has historically been represented by a uniform grey light that fills the entire scene, image-based ambient lighting provides a more intuitive and more efficient way to achieve higher quality results.

Ambient light (or indirect light) is light that is not coming directly from a bright light source. For example, in an outdoor scene, the sun is a direct light, and the ambient light comes from the sky and the ground.

Here's a picture of the shadowed side of an Overgrowth character, showing how it's lit by scattered light from the sky and the ground:

Historically, ambient lighting has been represented by a uniform grey light that fills the entire scene, eliminating any pure black shadows.

This works to make the lighting less stark, but it doesn't fulfill any of the other functions of real ambient lighting: reacting to surface shapes and environmental coloring in order to add definition and bring the scene together.

Here's a comparison of uniform ambient lighting and Overgrowth ambient lighting.

I found that image-based lighting is the most intuitive and efficient way to achieve this effect. The method used in Overgrowth is based on cubemaps, which are groups of six images that combine to form the faces of a cube.

We start out with the cubemap containing the sky and distant terrain, and blur it to create a diffuse lighting cubemap. To blur the cubemap we just perform a cylindrical blur around each axis, as shown here:

This is very fast because the lighting cubemap can be quite small -- ours has faces of size 128*128. To prevent banding artifacts, we have to use a floating-point texture for the blurring, but afterwards it's stored in a DXT1 RGB texture for efficiency.

Now, to find the ambient light color for an object, we can just look up the cubemap in the direction of the surface normal. That's all there is to it! I really like this technique because it's fast, simple, and effective.

It's limited in that it only works well for uniform outdoor scenes, but since that is the most common setting in Overgrowth, it works well for us!

Follow us on the Wolfire Blog!

Facebook iconModDB iconSteam iconTwitter iconYouTube icon

Latest Jobs


Playa Vista, Los Angeles, CA, USA
Senior Level Designer (Zombies)

PlayStation Studios Creative Arts

Petaling Jaya, Selangor, Malaysia
Lead/ Senior Asset Artist


Playa Vista, Los Angeles, CA, USA
Senior Gameplay Systems Engineer - Treyarch

High Moon Studios

Carlsbad, CA, USA
VFX Artist
More Jobs   


Explore the
Advertise with
Follow us

Game Developer Job Board

Game Developer


Explore the

Game Developer Job Board

Browse open positions across the game industry or recruit new talent for your studio

Advertise with

Game Developer

Engage game professionals and drive sales using an array of Game Developer media solutions to meet your objectives.

Learn More
Follow us


Follow us @gamedevdotcom to stay up-to-date with the latest news & insider information about events & more