Practical Lights
Practical lights are the light sources that are visible as models within your scene. Indoor examples of practical lights include lamps, light fixtures, television sets, or any other model you’ve built that emits light. Outdoors, practical lights include street lamps, vehicle headlights and taillights, illuminated signs, and lights on buildings.
There are two different aspects to simulating the illumination from a practical light. You need to light the source itself (such as the actual lamp or lightbulb), and then you need to light the surrounding set as if the lamp is casting illumination into the scene.
Lighting the Light
If you want to illuminate a bulb model using a light, you can position a point light in the middle of it where a filament would be located, and give the outside of the bulb a translucent shader that gets brighter when backlit by the interior light source. As discussed in Chapter 2, inverse square (also called a quadratic decay rate) is the most physically correct setting for a light. To get realistic variation in brightness across the bulb’s surface, give the light source inverse square attenuation.
As an alternative to adding a light within the bulb, you can shade 3D models of lightbulbs with a luminosity, ambient, or incandescence map so that they appear bright without regard to the local lighting. The real drawback to adjusting the shader to make the bulb bright is that when you try to isolate your lights and render with only a single light visible, the glowing shader is still present, even when lights around it are hidden. Bulbs need to be texture mapped if they are to be seen up close. A lit bulb may have a bright middle area, but it can become less bright where the glass is attached to the metal base and near the top, as shown in Figure 4.24.
[Figure 4.24] A bare lightbulb can feature a gradient making it brightest in the center.
The immediate area around a light source often requires some dedicated lighting. For example, a lamp surrounded by a lamp shade receives a great deal of bounce light as light is reflected off the interior of the shade. With GI you can allow the lamp shade to bounce light back onto the lamp, or you can add bounce lights to illuminate the lamp itself with simulated indirect illumination.
If you are positioning any light inside a 3D model of a lightbulb and that light casts shadows, then you may want to unlink the light from the bulb model so that it can shine through the bulb and illuminate the surrounding area. Otherwise the bulb model may cast a shadow that effectively blocks any of the light from reaching the rest of the scene.
Set Lighting from Practical Lights
Just because you are simulating a single practical light source doesn’t mean that you need to light it with a single light in 3D. Often you will observe several different effects on the set from a single practical light and use a light in 3D for each of these effects. For example, the lamp in Figure 4.25 emits a soft glow through the shade, a cone of light aimed up through the top of the shade, and a cone of light aimed down from the bottom. You simulate this using a point light that shines out through the shade, plus spotlights aimed upward and downward to simulate the upward and downward cones.
[Figure 4.25] The lamp casts a dim glow through the shade, plus harder illumination through the top and bottom openings, and a little spill around the hard circles of illumination.
Adding Spill
Often, projecting one spotlight in a particular direction isn’t enough. You usually see a broader, dimmer cone of light around the main light source, which is a kind of spill light. For example, if you use one spotlight for the illumination cast upward from a lamp, you may need another spotlight, with a broader cone angle and a much dimmer intensity, to add a spill around the area. Figure 4.26 shows how the lighting in Figure 4.25 was created: Two spotlights aim upward and two aim downward, including the main cones and the outer spill lights. The outer spill lights can simulate light that bounces off the lamp shade instead of being aimed directly from the bulb.
[Figure 4.26] A pair of spotlights are aimed upward, and two more are aimed downward, so that spill can be created around each circle of light.
Lighting Larger Areas
When you want to add illumination to larger areas of your set, sometimes individual lightbulbs in a light fixture just aren’t enough. For example, suppose you have a chandelier in the middle of a room. It may have many individual bulbs within it, and you need one practical light for each bulb in the chandelier. However, turning up the brightness of these lights too high can spread hard-edged shadows all over the set and cause bright highlights on any surface that is shiny or reflective. Instead, you can create a softer type of light motivated by the chandelier, as shown in Figure 4.27, by adding a larger spherical area light above the chandelier.
[Figure 4.27] One of the “secrets” of lighting design is that the actual light source doesn’t have to come from the practical bulbs themselves. Here, a spherical area light (the large orange ball) is responsible for most of the illumination motivated by a chandelier.
You can use shadow linking to prevent the ceiling, and the chandelier itself, from casting shadows in the large area light. This way, the area light fills the room with soft, even illumination, without lots of noise from sampling soft shadows through the complex geometry of the chandelier.
Throw Patterns
The throw pattern is the shape or texture of the light that is cast into the scene from a light source. We can recognize distinctive throw patterns from car headlights, flashlights, burning torches, and many other light sources. In real life, often a complex throw pattern is caused by reflection or blocking by structural elements within the light fixture. Figure 4.28 shows a throw pattern cast by a flashlight. Interestingly, when you study different flashlight throw patterns, you see that no two models of flashlight cast exactly the same pattern into the scene.
[Figure 4.28] The throw pattern from a flashlight. If you used an image like this as a cookie, then you could simulate both the main light and the spill around it all from one single spotlight.
In 3D graphics, you can create throw patterns by applying a cookie or map on the light source. If you use an image such as Figure 4.28 as a cookie on a light, it will help simulate a flashlight’s beam as well as its outer spill light both from the same spotlight. Another way to simulate different throw patterns is to model geometry around the light source. The shape of the geometry can cast a shadow, or the geometry can be transparency-mapped with an image, creating an effect very similar to a cookie directly mapped onto the light.
You can also use a cookie to tint the edges of a spotlight’s beam. In many real spotlights, a more saturated or reddish tint appears near the edge of the beam, just before it falls off to black. A cookie with a reddish edge can help simulate this and make softer, more naturalistic throw patterns for your spotlights. If all you want out of a cookie is to tint the outer edges of a spotlight, then you can also use a procedural ramp or gradient texture, and you don’t even need to paint a map.
Any time you are tempted to aim a spotlight into your scene and have it add just a plain circle of light, stop and think whether a more complex throw pattern could be more natural looking.