PlugPak
tutorials
Behind
the scenes: Overcaster and spinning lights
Overcaster scripts, which are a part of Eki's PlugPak, rely on three lighting
tricks that are rather well known by experienced LightWave users.
First and most important is the spinning light trick. The others are the
use of morph mixer and channel follower for controlling light properties with
sliders and the use of duplicated lights with different properties for semi-transparent
shadows. Each scene that's created with Overcaster or any other Eki's PlugPak
script could have been just as well made manually by the user. The scripts
only automate the setup.
LightWave calculates motion blur by rendering a different time step at each
anti-aliasing pass, and combining these to a single image. If the anti-aliasing
setting is low and there's fast motion in the frame, a series of ghost images
can be seen. The spinning light trick uses this phenomena to multiply the
apparent number of lights in the scene. When high enough anti-aliasing setting
is used, the shadows from the lights are blended together giving the appearance
of a single soft shadow.
Chastity model lit with Overcaster spot. Medium anti-aliasing with dithered
motion blur.
With a basic spinning light setup, the goal is to make the light
rotate a full revolution, 360 degrees, during the anti-aliasing passes. LightWave's
default motion blur length is 50%, so to get 360 degrees of rotation the
light has to turn 720 degrees each frame. When the user runs an Overcaster
script, the script first reads some parameters from the scene. The most important
is the motion blur length of the current camera. If the user has set the motion
blur to for example. 5%, the amount of spinning must be increased to 7200
degrees to get a full revolution during the anti-aliasing passes as the desired
360 degrees is 5% of 7200.
With high anti-aliasing and normal motion blur, a single spinning light
will shine from 17 different positions. There's no difference in render time
compared to a regular light.
Overcaster automatically creates the spinners according to the current frames
per second rate and motion blur amount. If the user changes these after applying
Overcaster, nasty flickering errors may occur. To enable field rendering,
Overcaster actually creates the spinning keyframes at frame 0.5, which causes
both fields to get an equal amount of motion. However, with field rendering
enabled, the Overcaster lights will by default rotate only half a circle.
This phenomena can be fixed by halving the motion blur length temporarily
before applying the Overcaster lights when field rendering is used.
Most Overcaster setups come in multiple resolutions. The Overcaster EZ rigs
are the most basic form of spinning lights. The script adds the necessary
spinner nulls with correct settings to a single light, and all the light's
properties are set up as if the light was a regular, non spinning light. There's
usually only one slider control, for the softness of the light. The normal
resolution Overcaster setups are exactly the same as the EZ versions as far
as the spinning light trick is concerned, but they incorporate the other
Overcaster niceties, such as semi transparent, colored shadows. The dual
and quad rigs multiply the number of lights, giving better results especially
at lower anti-aliasing settings. The drawback is a hit in the render times.
Overcaster spot interface. The user can select various options
for the spinning light setup.
In these rigs, each light is broken to it's base components. There are separate
lights for at least diffuse and specular shading, as well as lights that only
affect the shadows. The principle of the shadow trick is simple. If we have
two lights that are identical except that one has it's intensity set to 100%
and the other to -100%, they cancel each other out, having no effect on the
scene whatsoever. If we turn shadows on for the positive light, the lights
cancel each other out everywhere else except in the shadow area, which gets
darkened by the negative light. These two lights would now cast only shadows,
and have no effect on diffuse or specular shading. If we set the light intensities
to 50% and -50%, the shadow will become half transparent.
All these separate lights are controlled with sliders. Each setup has a
control object which has multiple built in endomorph targets. These morph
targets do not actually deform anything, but they give access to designated
morph mixer channels. These can be controlled with LightWave's slider banks,
or by adjusting them directly in the endomorph mixer.
The properties of the spinning light rig can be adjusted with sliders. A
rough estimate of the result is seen in the OpenGL preview.
When the user adjusts a slider for specular shading, a channel follower
applied to the specular light's intensity channel will modify the specular
light's intensity envelope. In practice, the user will see the specular shading
change it's intensity.
Depending on the type of light that's emulated with Overcaster, various
things may happen when the user modifies the shadow softness slider. With
Overcaster sun, the slider actually modifies the pitch of all the lights
in the rig. The lights are parented to a spinning null object. The more the
lights are rotated realtive to the spinner null, the softer the lighting
and shadows will appear. As all the lights in the setup are distant lights,
their position does not matter, only rotation.
With Overcaster spot, the slider controls the light's distances from the
spinning null. The lights are targetted to another null, and will form a torus
like light source, pointing towards the target null, when motion blur
is applied.
Many variants of the spinning light trick do not actually use spinning motion.
Overcaster tube, which attempts to emulate a fluorescent tube similar to LightWave's
linear lights, moves the lights on a linear path during the anti-aliasing
passes. Overcaster ambimage has up to 24 lights that rotate, but only a few
degrees each.
|