Lighting and Textures in 3D Max
by Shawn Lewis

Lighting and texturing a muppet-style character head.

In this tutorial, we’ll cover some texturing and lighting techniques that I have found useful in my own work. Some of the techniques discussed come from various readings while others are the result of trial and error. As another note, this tutorial was written for Max 2.x, but most of it will also work with Max 1.x as well other packages. Ready? Here we go…


Figure 1

Meet the cast

Figure 1 shows the model that we’ll be using (although any simple model (or even a scene with a strong focal point) would work fine). I chose a simple model because it is much easier to see changes from one rendering to the next in a simple model; as such, it’s hoped that by choosing a simple character you’ll be able to more readily see the desired changes from rendering to rendering.

The character is currently illuminated with the default Max lighting and has no textures applied. Lets fix that now.

The chicken and the egg

Before we start we need to decide how to deal with the "chicken and egg" problem of texturing and lighting: the effectiveness of a texture is (unfortunately) dependent on the lighting in the scene; additionally, lighting a completely "blank" model doesn’t really give one a good feel for how effective the lighting is. Because of this dependent behavior, starting with texturing usually requires additional tweaking once the lighting has been added; conversely, starting with lighting usually means tweaking it after the texturing has been applied.

Most of the dependency between lighting and texturing arises from how bump maps, specularity, reflectivity, etc. rely on the light source for their effectiveness. Therefore, it is usually best to add them after the lighting.

So, in this tutorial we’re going to apply the diffuse coloring to the model, switch over to setting up the lights, and then switch back to assigning the appropriate specularity, bump maps, etc.

Staying with in the lines (simple coloring)

The first step is to decide what type of texturing you want: realistic, cartoonish, stylized, or other. We’ll try to create a more "realistic" looking texture with the goal of creating an image which looks like its a "muppet."

As muppets tend to be a uniform color and bears tend to be brown, I’ve chosen a ruddy brown color (167, 91, 49) for the ears and face (I’ve also locked the ambient and the diffuse coloring together). The eyes are going to be white (255, 255, 255) with blue (90, 50, 220) colored pupils (technically, there should be blue irises with black pupils, but since this is a muppet, we can get away by having a pupil/iris complex) and the nose will be red (223, 49, 49). Figure 2 shows how the "colored" bear looks with the default lights.


Figure 2

Step into the light

Once you’re happy with the coloring (including whatever bitmaps/noise/etc. you want to use for diffuse and/or ambient coloring), it’s time to light the model. We start by changing the ambient color from black to a dark violet color. In "the real world" pure black is a very rare color; as such, removing it from your 3D scenes helps to add to their realism. Since the main lights will be yellowish (218, 218, 192), I have chosen a complimentary purplish hue (18, 11, 25) for the ambient light. Choosing complimentary light and shadow colors in this manner helps to add "depth" (and hence realism) to your image.

For lighting the character we’ll be using techniques borrowed from "standard" cinematography. We start with the key light. As this is the main light source for the model, great care should be taken in its placement. Place it below the character if you want him/her to seem large and imposing, place the light way above the character if you want to make him/her seem smaller and less imposing, place it a little above the camera to achieve a "neutral" amount of imposition.

At this time you should also decide whether or not the light is "motivated" or "unmotivated." A motivated light has an apparent (or at least strong implied (such as the sun)) source in the scene. An unmotivated light simply exists. Use unmotivated lights carefully in "realistic" scenes because they can make your audience wonder (either consciously or unconsciously) where the light is coming from and therefore can break the viewer’s suspension of disbelief.

In this scene, I’m using a motivated light which could either be the sun or a strong spot light. Because real world light is seldom white or a shade of gray, I’ve set the light’s color to a yellowish hue (218, 218, 192).

As for light placement, I’ve placed it off to the right above the character (See figures 3a, 3b, and 3c). As you can tell from these figures, I’ve attenuated the key light. Real world lights do not go on forever, they all have finite ranges. Adding attenuation to your lights helps to produce more gradations of colors, which, in turn, make the images look more 3 dimensional. I have also turned on shadows for the light. The result of this light (and the change to the ambient light) can be seen in figure 3d.

     
Figures 3a, 3b & 3c


Figure 3d

Filling out quite nicely

As you might have noticed in figure 3d, even though the ambient light isn’t black, the left side of the model tends to blend into the background. To help address this issue, we add another light to the scene: the fill light. The fill light provides illumination to the model on the side "opposite" of the key light. If the key light is on the right, the fill light will be on the left; if the key light is above the model, the fill light will be below the model (see figures 4a, 4b, and 4c). Usually, the fill light is 1 / 2 to 1 / 5 the strength of the key light. In this case, I’ve set its multiplier to 0.22. For a bit of added color contrast and depth, I’ve also set the fill light to have a bluish/violet color (205, 192, 218). Just as I did with the key light, I have also attenuated the fill light (again, refer to figures 4a, 4b, and 4c). Figure 4d shows the affects of all of the lights we have added so far.

     
Figure 4a, 4b & 4c


Figure 4d

Backing it up

Although we have filled out the model’s left side, it still tends to blend into the background. To help address this issue, we add another light to the scene: the back light. The primary purpose of the back light is to provide a small sliver of illumination along the back edge of the model to help separate it from the background. I usually create this light by cloning the key light and moving it around behind the model. Figures 5a, 5b, and 5c show the placement of the back light in the given scene. Since I based the back light on the key light, it has the same color, employs attenuation (which I have modified appropriately) and also casts shadows. Figure 5d shows the added illumination offered by the back light.

     
Figure 5a, 5b & 5c


Figure 5d

Kick it in the eye

There are two more lights traditionally used in lighting characters: the kicker and the eye light. Much in the same way the back light is used, the kicker light is used to help pull the model out of the background by adding some more bright illumination to the side of the model currently in shadow. Traditionally it is placed low if the key light is placed high; however, I’m trying to achieve a "spot light" feel so I placed the kicker higher in the scene. Figures 6a, 6b and 6c show the placement of the kicker light for this scene. Figure 6d shows the resulting render.

 

The other light traditionally used with characters is the eye light. This light is used to make the character’s eyes "pop" thereby making the character’s emotions easier to read. It is especially important with characters that who have deep-set eyes. As our character has eyes which are flush with the face and we are going to apply a texturing trick to help make them pop, I’m leaving out the eye light.

Note: if I were going to animate this scene, I would probably include the eye light and animate its values over time to make sure that the proper illumination was achieved through-out the course of the animation.

     
Figure 6a, 6b & 6c


Figure 6d

Play-time!

Now that all of the lights have been added, take the time to move them around to try to find the best placement. For me, this meant moving the back light closer to the kicker light (thereby making it a back-kicker combo light (see figures 7a, 7b and 7c). The result  can be seen in figure 7d.

     
Figure 7a, 7b & 7c

Surface texturing

So now that we have a colored, lit model, it’s time to apply surface texturing to the model. Surface texturing is what makes the model stop looking so flat and uninteresting.


Figure 8

Because they’re a key focal point, we’ll start texturing with the eyes. First, we want to make the iris/pupils look less flat. To do this, change the shading type to metal; make the ambient color  (26, 26, 26) much darker than the diffuse color (90, 50, 220); make the shininess 90 and the Shin. Strength 100. Now the iris/pupils seem more lifelike, see figure 8. Next we do the sclera (whites of the eyes).

First, make sure the whites are suitably shiny (Shininess 61 and Shin. Strength 90). Now comes the trick which should enable us to avoid using a key light: turn on reflection, select ray-tracing, and set the amount to 71%. The result is Figure 9.


Figure 9

You probably noticed that the ray-tracing caused the eyes to pop more, but now they look really bad. The problem lies in the fact that the rest of the face is being reflected in the eyes. What we really wanted was just the area around the eyes to be reflected. So go into the ray-tracing settings (click on material’s reflection map button (which should say raytrace)) and turn on attenuation setting it to exponential (start: 0 end: 100 exponent: 2). Now only a small portion of the face is reflected in the eyes and they still pop off of the head (see Figure 10).


Figure 10

Now it’s time to texture the head and ears. I have chosen to apply a box coordinate system to the head (I then "acquire" it to apply it to the ears (this keeps the size of the texture the same on both parts)). I know that I want these parts to be textured like felt, so I look through my textures for an appropriate choice. For this image, I settled on using TREEZ86.JPG for the texture. This may seem like an odd choice, but TREEZ86.JPG is fairly noisy, very organic and has subtle changes in color which lend themselves well to the texturing we want (see Figure 11).


Figure 11

Since the model is using "box" coordinate system, we want to mix some noise (which is 3D and not dependent on the coordinate systems used) with the texture to break up the seams which would otherwise arise. This also helps to break up any noticeable tiling/mirroring artifacts that might occur. I mix the noise with the base texture using a uniform 40% mixture method. The result is shown in Figure 12.

For more depth

And we’re done! For further experimentation, you could try to increase the amount of realism in this scene through the use of gels. In cinematography, a gel is a lens or colored film added to a light to change it’s characteristics. In 3D work you can do this through the use of projection maps. For instance, use a noise-based projection map on a light to help break up the uniform flatness the 3D lights typically have and add even more depth/realism.

Yet another way to increase realism is through the use of volumetric light. Real world light (especially spot lights) tend to illuminate the dust particles in the air. Adding a little bit of volumetric lighting to a scene can help to mimic this behavior and again increase a scene’s believability.

Happy rendering!

Shawn Lewis
Visual Scream Gallery

For other examples of the work of Shawn Lewis, see DPM's Gallery page here

For other books on 3D Studio Max, click here.