Faking Global Illumination

November 19th, 2006

Instead of waiting 27 hours for a Global Illumination render to finish, it’s possible to achieve realistic results by faking natural light. There are a zillion techniques for achieving that. Here’s one of them.

The first image of mine that actually got printed in a proper magazine (3d World) was geometrically very simple. A few boxes, extruded surfaces etc. What made it stand out, in my opinion, are three things: First, it is proportionally correct, based on a real-world environment studied down to the most ridiculous details, of which many are too small to be seen (big mistake). Second, it uses high-resolution bitmapped textures which were hand-painted and then dirtied in precise places, and third, it uses very diffuse lighting which works well under the circumstances (one very strong light source coming from above), and which is the object of this tutorial. A hi-res version of the image can be found in the cgi section.

Simple model, nice lighting

First steps

I had spent two days trying to light this thing, using preposterous light arrays (10×10x10 attenuated omnis), domelights, whatever. But I found that the following method works well, simply because it gives you precise control over every surface. It’s a bit more tedious, but it works (at least it did for me).

Start by adding one Omni Light in the middle of the scene. A very warm color, a low multiplier (0.2) and a progressive attenuation, it will act as an ambient light surrounding the area where the sunlight hits the floor. It also simulates the subtle yellow light reflected from the beige floor. It shouldn’t affect specular highlights so I turn this off.

Start with almost nothing

Light from the Sun

Next comes the sunlight itself, which is a Direct Light. It shines through a skylight above which is actually modeled, so I don’t need a projection map. The light multiplier is set at 0.8 and there’s no need for attenuation. With shadow-mapped shadows at their defaults you get this, which is an OK shadow.

Add direct lighting

Separate the walls

What I do now is simply separate lights and surfaces using the Exclude/Include function of each light. Now, for example, I add a spotlight which includes all the objects on the front wall, as well as the wall itself.

Almost everything about the light is at its default setting, except the attenuation which start a bit in front of the wall, and ends behind it. Since the spot is at an angle, the attenuation factor varies over the surface and looks quite nice.

Light the back wall

Simulate attenuation

The left wall (and all its associated objects) is going through the same treatment. The spot shines a bit from behind, and has its attenuation factor set to achieve the same principle described above.

Same drill for the right wall.

Light the left wall…

…the right wall…

Finishing touches

In order to obtain a natural-looking light for the floor and the railing, two spots were added (including only the required objects, of course). They are pointing at the floor from opposite directions and are set up so as to attenuate progressively over the surface. Both have their Multiplier at around 0.8 - this prevents overexposure of the surface but still keeps a nice strong light.

…and the floor

Because the right door was to be rendered closely, I dedicated two more spotlights to it. This was enough to consider the image finished.

Conclusion

Another advantage of this technique is that it allows you to quickly render any part of your scene, from almost any angle, without worrying about the lighting at all.

Finished image

Don’t expect to get perfect results the first time. It took a lot of tweaking to get the attenuation, color and multiplier right for each light. 3D artists should consider this as fun, although I had some persons asking why I didn’t just photograph the bloody thing. Anyway, I hope this gave you some ideas.

13 Responses to “Faking Global Illumination”

  1. Ramakrishna Says:

    Nice tutorial i want know more infromation of interior lighting in offices, rooms,etc.
    and also cameras.

  2. Paramasivan Says:

    i want to know different kinds of light, and how it is used in the global illumination. If you have a time you can share your ideas to me.

  3. garvey harris Says:

    i was really pleased you wrote this and its easy to follow

  4. 3d rage Says:

    very interesting tutorial. i’m assuming this tutorial was done in max, i was wondering if this technique can b used for MAYA also?… or will i be wasting my time?

  5. Tal Says:

    It’s obviously possible to apply this technique using any other software tool, especially top-of-the-line applications like Maya. Read the Maya Documentation on lights and you should be fine :)

  6. maddy Says:

    nice tutorials and i like to see more like this

  7. naveen Says:

    nice tutorials and i like to see more like this in maya

  8. myself Says:

    nice one, i like it. however im having hard time to apply it in Maya, I would like to see something tuts like this for Maya…
    every good tutorial i find is for studio max

  9. msadiq Says:

    nice tutorial want to know more

  10. Alek Tutorials » 3D Studio Max: Faking Global Illumination Says:

    […] Faking Global Illumination Filed under: 3D Studio Max, Rendering, Lighting — alek @ 5:20 pm […]

  11. dipu Says:

    this is really a nise job done by you. is better software redering without using render engine.

  12. satish Says:

    You have done a great job. This is really a nice tutorial you have shown. This tutorial helps a lot of 3d begineers.

  13. sachin nagare Says:

    Wonderful tutorial

    really like to know more about it

    thank u

Leave a Reply