XTRA!
    Radiance Effect with Gradients
    BY GERARDO ESTRADA

Overview - Modeling - Surfacing & Texturing - Gradients - Download Objects & Scenes

I designed this technique some time ago to use in a TV spot project. The requirements were high, but I couldn't use Radiosity because of long render times. Baking illumination in textures also required a lot of time and was complicating the process. Even though it wasn't necessary that the indoors illumination, where the story was developed, was mathematically realistic, it was necessary that the scene was visually agreeable and believable and the render was sufficiently fast to use it in animation. Fortunately, this technique fulfilled these requirements.

Some time later I found a thread in the CGTalk Forum where someone showed a render made by Twilight in VRay that took about 1 hour at 800x600 (and 26 hours at double resolution, but his render tests took about 10 minutes). I decided to try this technique with the same scene, and I obtained Figure 1 in 7 min 46 sec at a P4 2Ghz (video) resolution and less than 10 minutes at 800x600 (and almost 37 minutes at double resolution). With Fprime Radiosity the same scene took 4 hours; Interpolated Radiosity required 7 hours, and LW MonteCarlo Radiosity took more than 20 hours.

Click for larger image.
Figure 1 (Click for larger image.)

Due to the results and excellent render times, many people requested details about the technique. You can follow the discussion at http://www.cgtalk.com/showthread.php?t=176195. In that thread I also show that the same principle can be used to simulate SSS. That thread was a basic approach, and here we will explore it in more detail with Figure 2. The original objects of this living room were made by CG artist Andronikos Bisogiannis. You can see some of his great work at http://www.ixor3d.com.

Click for larger image.
Figure 2 (Click for larger image.)

Overview - Modeling - Surfacing & Texturing - Gradients - Download Objects & Scenes

Overview

Author's Note: The method and this tutorial were developed in the LW v8.x cycle, but we can use it with the new nodal shading system or adapt these principles to it.

This method is, in fact, a mixture between surfacing and lighting, since for some overcast scenes it is possible not to use any light at all. The technique uses gradients based on null objects' distance to simulate the bounce light effect. But what is the bounce light effect?

Let's begin with some criteria that help us to understand how to simulate Global Illumination (GI) successfully indoors and how this trick fits inside that scheme.

Several techniques exist to simulate GI in LW and, depending on the scene, some work better than others. Any method that simulates GI should cover the following main aspects:

  1. Scattering effect
  2. Radiance effect
  3. Occlusion effect

In fact, these three effects are three different aspects of the same phenomenon.

Basically, the Scattering effect takes place when light hits a surface. A part of the light will be absorbed by the surface and will spread along it. This propagation will be bigger or minor depending on the material composition and the type of light (hard or diffuse). The effect can be simulated with shaders, spinning lights, gradients, depth maps in post, etc.

Likewise, when the light hits a surface, part of the light won't be absorbed by the surface, but rather it will bounce from one surface to another. This effect, called Radiance, is very important. It is this aspect of light behavior that we'll simulate with this technique. Commonly this effect is faked with "bounce lights," lights with little intensity (shadows and specular disabled), usually poitlights or spotlights, but any type of light can be used.

To be able to control the colorations and their influence along a surface isn't always easy with lights. Their influence is also always additive. Sometimes this is a disadvantage because the bounce effect is so subtle that it should provide color to a surface but its brightness shouldn't increase; in these cases, using gradients based on null objects' distance is an advantage to provide these colorations. More complex techniques also exist, such as those that include IBL (Image Based Lightning) lightrigs, to achieve this same result. (I was introduced to this technique at http://forums.cgsociety.org/showthread.php?p=1507824.)

The ambient occlusion effect can be understood as light obstruction in certain areas of the surfaces. Some people consider it as the soft shadows provided by the light obstruction irradiated by a surface (bounce light's shadows). This effect can be achieved through ambient occlusion maps/pass, Backdrop Radiosity, spinning lights, lights domes, area lights, ambient occlusion shaders, tools like Shadowdesigner (Evasion3D), TB_ShadowComp, TB_ShadowBlur, etc. There are several other ways to achieve these effects; however, any method to simulate GI should simulate these aspects, either in a separate or integrated way.

Tools

FI'sLocalAmbient shader (from the excellent fisjunk shaders) for scattering effect and radiance effect:
http://www2.ocn.ne.jp/~fis_junk/plug/win/FIsLocalAmbient-i-0_1_0.zip

SG_AmbOcc_Exp shader (by the brilliant Sebastian Goetsch) for occlusion effect:
http://www.informatik.hu-berlin.de/~goetsch/AmbOcc/

Note: Both effects can also be composed in post; we can use multiply mode to mix our ambient occlusion (AO pass) with our indirect lighting pass ("bounce lights" effect). However, in this article I'll show how to do it straight in LightWave.

Modeling

The original objects of this living room were kindly provided by Andronikos Bisogiannis.
If you want to know how to optimize the model with this technique, please take a look here.

Determination of the Surfaces

If we don't have a planned interior design, it is necessary to load the object in Layout and determine the colors, textures, and surfaces for our scene. We must simulate each aspect of the light's behavior with this technique. To that end, it is advisable to use reference photographs or to make a small preliminary render with Monte Carlo Radiosity to help analyze the way the light falls within the scene. In this case I've used as reference, the nice sepia image made by Andronikos Bisogiannis with Maxwell render. You can find it at http://www.bisand.com/. Being in sepia, this image serves us as luminance reference, but it doesn't help us with the radiance effect's colorations; besides, we won't use exactly the same surfaces. However, we will deduce this part.

For our scene I chose white walls, pine floor (windows and accessories), white furniture, a wall covered with cedar plaques, metallic speakers, dark stereo, and a red carpet that accentuates the color of our living room.

OK. This technique has 2 variations:

  1. Using LW gradients
  2. Using FI'sLocalAmbient gradients
    (We could use TB_ShaderTree's gradients instead of FisLocalAmbient's, but it may be more laborious to set up for each surface, so we'll stay with FI'sLocalAmbient.)

Deciding whether to use one or the other (or both) will define our work procedure, the final look, and render times depending on the scene. Let's see the differences.

LW Gradients

LightWave gradients offer us very luminous tonalities but with little saturation in the gradients' colorations. On the contrary, its interaction with SG_AmbOcc_Exp offers us an ambient occlusion pass with very vivid and luminous colors. However, the walls' edges appear very contrasted and sometimes not very natural for some lighting situations. Because of that, it is advisable to use it for furniture or accessories only.

Tip: One major advantage of using LW gradients is that we can apply the same surface to several objects and use weight maps as alpha channels to define different material properties for object-specific parts of those objects. For example, we can have a particular detail with a metal material, and another of glass, both using the same surface but defining the properties of each one through weight maps. This is advantageous not only because LW calculates faster, but because it allows us to use a single instance of the occlusion shader for several objects, which can speed up the render considerably. The disadvantage is that the process may become complicated if one is not accustomed to assigning surfaces this way.

FI'sLocalAmbient Gradients

This shader offers us gradients with desaturated tonalities; but together with SG_AmbOcc_Exp offers us a darker ambient occlusion pass and more saturated colors; the result is also softer and more atmospheric in the walls. FI'sLocalAmbient gradients don't have weight maps as input parameters, so we should assign a different surface for each different material if we want gradient effects specific to a material (and we do want that in this tutorial).

Tip: If we use only a few surfaces and weight maps to define the materials' properties, with FI's LocalAmbient we can assign the same gradients at the same time to multiple "surfaces." That is advantageous only when the bounce light effect must affect multiple surfaces in the same way, which doesn't happen very frequently.

I assigned to this scene 25 surfaces, all with the same gray base color. (You can see these surfaces already applied in the object files provided on the Modeling web page referenced above.)

Setting the Scene and Planning the Illumination

We load our object in Layout and position our camera as in Figure 3.

Click for larger image.
Figure 3 (Click for larger image.)

I've used a 20.0 mm focal length on film back size of 35 mm motion picture. This scene will only be a still; but if it were an animation, it is advisable to know how it will be shot and the camera motion before setting the lighting, in order to not work areas that will never be captured by the camera. This is important before even beginning to model.

OK. The first thing is to define the type of illumination that we want (or need). In this case, I preferred to obtain a very clear and luminous atmosphere, with warm and brilliant colors-as if it were an afternoon of spring or summer. I liked Andronikos's idea that the light enters through the windows and falls to an angle from almost 30-35 degrees. My idea was to use a bright yellow color for the direct sunlight, but allow a blued diffuse light to also enter through the windows. (This is very typical of houses that are very close to a beach or in climates where the sky is very clear of clouds and has a deep blue color.) The first thing that we do, then, is to set our ambient intensity for the brightness level that we want for our image. In this case, it is quite high-80%. We can visualize the ambient intensity in OpenGL or activating Viper. Then we apply our favorite oclusion shader (SG_AmbOcc_Exp) to all surfaces.

Figure 4
Figure 4

To apply the shader in a global way, we choose a surface first (I chose the walls) (figure 4). To begin, the ambient occlusion color should be the average of the predominant colors in the scene; in this case, I've begun with a neutralized warm color. Notice that we are using 24 rays (which is enough to cover a wide area like the walls); later on, we'll adjust the colors of this occlusion shader for each individual surface, and we'll optimize the number of rays depending on the surface area and distance from the objects to the camera. Click save_as_default to save these parameters and remove the surface shader.

Then we go to Plugins/Additional and run the SG_AmbOcc_Gen (generic) plugin and click in Apply option. The shader will now be applied to all our surfaces. If you don't find the plugin in Additional, press Alt F10 to open the Configure Menus window and look for the Plug-ins commands list and add it to the Additional menu. Better yet, create a NewGroup for this tool.

Click for larger image.
Figure 5 (Click for larger image.)

The first result we obtain is Figure 5. Later, we'll remove the plugin from all surfaces that don't need it. This commonly happens with surfaces that have a relatively high level of reflection, but that we'll determine later on.

Next is to set our keylight; we choose a bright yellow and about 300% for its intensity. It isn't necessary to move it if it is a distant light (that provides parallel shadows, more parallel even than those of the sun). We activate Viper and make a preliminary render with Ray Trace Shadows (figure 6).

Figure 6
Figure 6

We'll try changing our keylight for a spotlight (I know that their shadows aren't accurate, but they sometimes offer more interesting results), then we move our light outside of the window, more or less as in Figure 7.

Figure 7
Figure 7

Figure 8
Figure 8

This gives us Figure 8. Although the shadows are not accurate, the light spreads in a wider way (radial), which looks better for our indoors. So we'll leave it this way. Let's note, however, that the stereo and the table's thickness sides, especially the table, aren't very defined, so we add a distant light of the same color as the keylight (Shadows Off) with intensity about 50%. This light must affect only these objects and exclude everything else (figure 9).

Figure 9
Figure 9

This type of indirect light can be used in several ways. In this case, we are using it to define the form of certain objects, but this fill light (instead of FI'sLocalAmbient) may also be used to simulate the scattering effect. We can even rotate the light from one frame to another, taking advantage of motion blur to obtain a softer scatter effect if we want a less contrasted illumination than what we'll achieve if we leave this light static. We would be able to do this if, for example, our scene were nighttime.

Basic Surfacing & Texturing

To know the detailed process and useful tips to solve some surfacing effects, please access this part here.

The Radiance Effect with Gradients

Now we are ready to add the bounce light effect!

The first thing is to replace the LW global ambient intensity by FI'sLocalAmbient. As the shader's name suggests, this works like LW's ambient but localized by surface. We then diminish LW Ambient Intensity from 80% to 0% and apply FI'sLocalAmbient to each surface, same color, same intensity to begin.

We do this in order to be able to adjust the intensity of the front scattering effect according to conditions of each specific surface; besides being able to also adjust the radiance effect (bounce light effect) for each case through gradients.

We will begin simulating the rebound of a direct light-the light of the sun that falls on the floor and bounces on the stereo. We add a new Null and name it "one." Position it as in Figure 10.

Click for larger image.
Figure 10 (Click for larger image.)

We enter the texture function of FI'sLA on the stereo's surface and add a "Distance to Object" gradient. For the first parameter we choose the same color as our keylight, but less luminous since this light has bounced against the pine's floor (which is more yellow still) and, in consequence, the bounce light has mixed with the color of the floor. Calculating this mixture is only necessary when we calculate the rebound of light on a reflective surface; on opaque surfaces it is enough to assign the same color of the bounce surface (figure 11).

Cilck for larger image.
Figure 11 (Click for larger image.)

Notice that the second parameter has Alpha at 0%; this is, as we mentioned on the Gradients page, in order that the gradient color, when it falls off, blends with the original texture. Since our exterior has luminosity at 1000%, we've calculated the rebound of this direct light as about 400% (additive mode).

Tip: In interiors we use Additive Blending Mode when we simulate the rebound of a direct light or the rebound of an indirect light of a reflective object. We only use Multiply Blending Mode when we simulate the rebound of an indirect light.

You will be wondering: Is it not easier to make this with a light? Then the only thing we need do is activate Affect Diffuse of the light that is simulating soft reflections for the stereo. Well, in some cases, that is better, but not in this case, since the same reference object that is simulating the bounce light of the floor on the stereo, serves us to simulate the bounce light of the stereo on the wall-something we can't make with just a light.

Let's consider the wall behind the stereo now. Since the wall is white, it reacts in a more sensitive way to light, so we'll increase the intensity from FI'sLA to 90%. What we'll simulate first is the bounce light effect from the floor to the wall. For this, we add a gradient and choose "Y Distance in Local," which is equivalent to "Y Distance to Object" of LW gradients. As reference object we add another Null, renaming it as "two," or we use our living-room floor (figure 12).

Click for larger image.
Figure 12 (Click for larger image.)

Tip: Gradients in LW v7.x remember ID objects without problems, and we can use nulls without renaming them, or we can even use the layers of the same object as reference objects. However, LW v.8.x doesn't recognize ID objects appropriately, so we need to rename each null with a different name, even trying to avoid suffixes. It is also advisable not to use layers of a same object as reference objects.

In this case we choose the same color as the floor and use Multiply Blending Mode (figures 13 and 14).

Figure 13
Figure 13

Figure 14
Figure 14

Above this gradient we add one more ("Distance to Object") to simulate the bounce effect from the stereo on the wall (from the one that we mentioned previously). Choose a dark reddish color and select "one" as the reference object (figures 15 and 16).

Figure 15
Figure 15

Figure 16
Figure 16

Now we'll simulate the direct light rebound of the sun on the speaker, which has a very reflective surface and works by way of a diffuse mirror. We add another Null and name it "three" and position it as in Figure 17.

Click for larger image.
Figure 17 (Click for larger image.)

We add a third gradient in FI'sLA of wall surface (Distance to Object). The first parameter is the color of the sunlight, the second is the same color with less luminosity, and the third tries to represent the warm color of the cedar wall reflected in the speaker (this is something that we cannot make with a simple light) (figures 18 and 19).

Figure 18
Figure 18

Figure 19
Figure 19

We add another Null and rename it "four." With "four" we'll simulate the bounce light from the cedar wall on the white wall. We position it as in Figure 20.

Click for larger image.
Figure 20 (Click for larger image.)

This position is very important since it will allow us to simulate the bounce light of the cedar wall and, at the same time (with the same reference object), we'll adjust its influence so that the white superior part of the cedar wall doesn't affect the other contiguous white wall.

We add a fourth gradient in FI'sLA of wall surface and position it under the "three" gradient, since additive gradients should go above multiply gradients to affect them correctly: We choose a brown color and "X Distance in Local" (figures 21 and 22).

Figure 21
Figure 21

Figure 22
Figure 22

Now we notice that the coloration extends to all the length of the wall, even in the superior part, where it should no longer be. To represent this correctly, we add another gradient above this to neutralize with this new gradient, the previous one. We choose "Distance to Object" as the input parameter and choose the same reference object (four). Use the same white color of the wall for our first parameter and second parameter; the second parameter serves to extend the influence of this gradient the necessary distance to overwrite the previous gradient. The third parameter adjusts the transparency. We adjust the gradient in Multiply Blending Mode at double intensity of the previous one (figure 23).

Figure 23
Figure 23

Another way to neutralize the influence of the previous gradient that extends along the wall is to set this new gradient in Alpha mode instead of Multiply (this would be especially better if our wall contains a texture). Graphically, its influence is as in Figure 24.

Figure 24
Figure 24

Note: As we can see, the position of null objects is an important factor to reduce at the maximum their number (figure 25).

Figure 25
Figure 25

Now we'll simulate the rebound of exterior diffuse light on the windows. Add two other Nulls, naming them "five" and "six," and position them as in Figure 26.

Click for larger image.
Figure 26 (Click for larger image.)

Since the diffuse illumination that enters through the windows is blued (for the scattered light in the atmosphere, the blue sky, or the sea), we should choose a blued color, and not yellow as could be thought (figure 27).

Figure 27
Figure 27

Both gradients are equal: "Distance to Object," Additive mode, both above all gradients, "five" and "six" for each one (figures 28 and 29).

Figure 28
Figure 28

Figure 29
Figure 29

This is enough for this wall. Before closing the FI'sLocal Ambient window, we copy the gradient that has "three" as reference object. Go to floor's FIsLocalAmbient and paste the gradient, adjusting the distance parameters for the floor (figures 30 and 31).

Figure 30
Figure 30

Figure 31
Figure 31

Then go to wood_accessories surface and paste the same gradient, adjusting its intensity for the radiator (figures 32 and 33).

Figure 32
Figure 32

Figure 33
Figure 33

Although the ceiling isn't very notorious in our take, we'll work it too. The idea here is to simulate the rebound of the external light that enters through the window (in the same way as with the windows and the wall). Use the same blued color to set our gradient, and use "five" and "six" as reference objects. However, the effect is too circular and not sufficiently realistic. That is because we need the gradient shape to be lengthened, in an almost conical shape, simulating the light form that enters with the window width and then extends more inside our living room; to achieve it, we add a couple more Nulls ("seven" and "eight") and position them as in Figure 34.

Click for larger image.
Figure 34 (Click for larger image.)

For these gradients (all "Distance to Object" in additive Blending Mode), we use a small action diameter for reference objects near the windows ("five" and "six"), about 90 cm, and little intensity (25-30%) (figures 35 and 36).

Figure 35
Figure 35

Figure 36
Figure 36

For reference objects farther from the windows ("seven" and "eight"), we set a bigger diameter (1.3m) and more intensity (40%) (figures 37 and 38).

Figure 37
Figure 37

Figure 38
Figure 38

Notice that in all gradients we use a parameter (Alpha at 0%) at the end of the ramp, in spite of the fact that the previous parameter also has Alpha at 0%. The purpose of this last parameter is to increase the tension in the previous one so that it provides us a softer falling off (figure 39).

Figure 39
Figure 39

In the same way as the walls, the ceiling reacts in a more sensitive way to the light, so we increase FI'sLocalAmbient to 90%.

For the frames of the windows, we go to simulate the ceiling bounce light in the frames (blued color provided by exterior) and from the living-room interior to the frames (warm color provided by the cedar walls and the floor). Add in FI'sLocalAmbient a blued gradient that extends from the "five" position until more or less the superior half of the frame (figure 40).

Figure 40
Figure 40

We duplicate this gradient and change the reference object for "six" to obtain the same effect in the other window frame (figures 41 and 42).

Figure 41
Figure 41

Figure 42
Figure 42

For the inferior bounce light in the frame, we'll use "three" as reference object (we can use the same gradient used for the radiator and modify it); the influence of this gradient should be until the inferior half of the frame and should be very strong, since it is reinforced by the direct bounce light in the white base of the window toward the frame. All these gradients are additive (figures 43 and 44).

Figure 43
Figure 43

Figure 44
Figure 44

We'll now simulate the bounce light of the red carpet in the table's base. We select table surface and add a gradient (Multiply Mode) with "Y Distance in Local" input parameter; our reference object is "two." The color for this gradient is the same one as the carpet (figure 45):

Figure 45
Figure 45

Then we add another gradient in the tabletop's FIsLocalAmbient (Multiply Mode). This time we will simulate the blued indirect light that enters through the window; use "five" as reference object ("Distance to Object") (figures 46 and 47).

Figure 46
Figure 46

Figure 47
Figure 47

Now we pass to the other wall, beginning with the platform surface. We add a "Y Distance in Local" gradient that will simulate the bounce light from the floor to the platform (we can copy the first gradient wall base and modify it here). In the same way as for wall, we use "two" as reference object and the same yellow color (figures 48 and 49).

Figure 48
Figure 48

Figure 49
Figure 49

(Notice that we always begin with the base gradients.) The following gradient is to simulate the bounce light of the wooden wall toward the platform; we use "X Distance in Local" and "four" as reference object (figures 50 and 51).

Figure 50
Figure 50

Figure 51
Figure 51

In the same way as with the speaker, the adornment at its side is very reflecting, and it will reflect the wall's direct light on the platform. To simulate this we add another Null and name it "nine," positioning it just behind this adornment (figure 52).

Click for larger image.
Figure 52 (Click for larger image.)

Then we add another gradient (Additive Mode) with the sunlight color and choose "Distance to Object," setting "nine" as reference object (figures 53 and 54).

Figure 53
Figure 53

Figure 54
Figure 54

To finish with the platform, we add one more gradient (Additive Mode) that will simulate the blued indirect light of the exterior. We use "five" as reference object (figures 55 and 56).

Figure 55
Figure 55

Figure 56
Figure 56

Before passing to the following surface, we copy the gradient that simulates the bounce light from the wooden wall to the platform ("X Distance in Local"). Go to shelves and paste it there (figure 57).

Figure 57
Figure 57

The same as the walls, platform and shelves are white and more sensitive to the light, so we adjust FI'sLA at 90% (figure 58).

Figure 58
Figure 58

For speakerwood we use this gradient (figure 59).

Figure 59
Figure 59

The first parameter represents the yellow rebound of the floor, the second parameter is to dispel its influence, and the third parameter (80%) represents the window light (figure 60).

Figure 60
Figure 60

Until now, everything has concerned the bounce light effect. But there are some final retouches needed in our scene illumination. Some of the following surfaces don't, in fact, need the bounce light effect, but diffuse reflections. We could do it with lights, but since they are very specific zones we would need the same quantity of lights as reference objects. For a faster render, solve them with gradients too.

The first surface that needs these retouches is tv_frame; we should darken the inferior right area of the TV frame a little-it is a dark zone because the sun decays in that area. We add a gradient (Distance_to_Object) in FI'sLA of tv_frame surface, brown color (as the cedar wall), and select "nine" as reference object (because this null is near) (figure 61).

Figure 61
Figure 61

The gradient is Subtractive Mode to darken this area (figure 62).

Figure 62
Figure 62

Then we add a Null and name it "ten," positioning it in the left inferior extreme of the TV frame (figure 63).

Click for larger image.
Figure 63 (Click for larger image.)

Above the subtractive gradient, we add an additive gradient ("Distance to Object") at 70% with a warm color (we can use the color of the sunlight). This brightness can be justified as a diffuse reflection of the sunlight or as the shelves' reflection beside the TV (figures 64 and 65).

Figure 64
Figure 64

Figure 65
Figure 65

We'll also add another brightness in the opposed extreme of the TV frame (right side); for this, we add another Null and name it "eleven" (figure 66).

Click for larger image.
Figure 66 (Click for larger image.)

We copy the previous gradient and paste it under the one that we have already, adjusting it so that it influences appropiately (figures 67 and 68).

Figure 67
Figure 67

Figure 68
Figure 68

Finally, we complete the last detail of our scene adding some Glow effect in post. We can use Glow, Corona, or SuperGlow (commercial); if is for animation, we can use Better_Bloom (free), or some composition software. If you are considering adjusting its gamma or doing some color correction in post, don't forget to save it in some high dynamic range format.

Conclusion

It is easy to make mistakes with this technique. What is advisable is to observe and study as much as possible the real behavior of light, or render a small reference image of a global illumination solution, or use reference photographs with similar lighting conditions.

For example, something that still bothers me on the final image is that the soft shadows should be a little lengthened toward the interior of the living room, since the light enters through the window in that direction. To solve this, we could add an area light that achieves this effect, or ShadowDesigner, TB_ShadowBlur, TB_ShadowComp, or TBShaderTree-or, better yet, use a spinning lights rig that fakes an area light. Another solution for this type of problem that I am working on is a technique that allows pre-computing an occlusion map and showing it according to the shadows' angle (although this isn't something easy to figure out)-but that is another tutorial theme.

Here you can see a solution achieved with spinning spotlights (that's the quickest thing after the baking solution) (figure 69).

Click for larger image.
Figure 69 (Click for larger image.)

One of the main advantages of simulating the bounce light effect with gradients is the speed. Speed in work, since it isn't necessary to bake a global illumination solution in textures (depending on the maps' resolution, this can take a lot of time) and render is very quick, since the gradients are calculated even faster than a big texture map. This technique can also be integrated together with other illumination solutions, since it is compatible with almost all and it's suitable not only for interiors but also for any other type of scene or lighting condition. For these reasons, I propose to use it more with mixed techniques as a tool to reach the elusive objective of simulating GI successfully.

If you are accustomed to working in LCS (Linear Color Space), you won't have problems with this method; but if you are mixing it with a spinning lighting system, I have found it is better to separate some things from this type of workflow: diffuse shading, front SSS, indirect lighting, etc. (What you can work in LCS: reflections, depth of field, motion blur, glows, blending modes, antialiasing, etc.)

It is also advisable to consider the solutions proposed for the problem of LW v8.x with ID objects. This problem has been solved in LW v.9 if we save the object using the "Save all objects" option.

Depending on the number of objects in the scene, it is recommended to consider assigning few surfaces and using weightmaps to isolate their properties before beginning the surfacing process.

For complex forms, we can use few null objects and move them in the course of a frame (Repeat "Pre Behavior" and "Post Behavior") according to these forms, activating motion blur. Thus, we avoid the use of many null objects to define the gradients' action range.

In conclusion, it is good to remember that gradients can simulate the bounce light effect to achieve a result not necessarily accurate, but indeed overall believable and agreeable.

Overview - Modeling - Surfacing & Texturing - Gradients - Download Objects & Scenes

©DMG Publishing 2006-2007 as bonus content from Issue 11 of HDRI 3D, ISSN 1551-689X