3D Applications are adding more and more advanced lighting features to their arsenal and are a great option to easily add realism to a scene. Things like area lights for soft shadows and radiosity (global illumination) are great features but unfortunately they come with an extreme trade-off, render time. This tutorial is going to present several "old school" methods for achieving similar results and the great thigs about these techniques is that they render incredable fast in comparison to using these "built-in" features.
Radiosity is available in most 3d applications for creating global illumination or reflective illumination. It enhances the shading in what might normally be shadowed areas and provides more accurate shadowed regions, including areas not directly in a lgihts path.
|1 bounce radiosity - 26 secs||2 bounce radiosity - 2min 42 secs|
|Area Light Med Quality - 7.8secs||Area Light Max Quality - 18.9secs|
Now, in order to speed up the render process of area lights, a similar soft shadow effect is needed but by using standard shadow mapped lights we typically do not get the soft shadow falloff with distance that an area light gives. So we can use a trick to simulate this. Basically, an area light can be thought of as a number of lights within a small area and if all their separate lighting and shadows are combined, we get the same thing as an area light. There is an easy way to do this in most 3D applications however without having to use a slow rendering area light. It is by using what other's have introduced as "Spinning lights".
To do this, any number of separate spotlights grouped together in one area and moved over time (a very short time) will appear to give a soft shadow. Others who have introduced this techinique before have named them "Spinning Lights" because you want to spin the group of separate lights together so that when multi-pass rendering is applied, the shadows from each pass come from a distinct location and will help to smooth the shadows even when using a small number of lights, like in this tutorial, only 5 individual lights were used. Obviously, the more lights you use, the smoother the lighting and nicer the shadows but they will take a little more time to render.
In order to set this up, you need a group of lights positioned around a central point (or a null). That null can then be targeted to control the direction of the lights (or each light can be targeted individually) and the null can be spun about its pointing axis so the lights move around in a circle facing the target. Ideally, you should change the distance of the lights from the null by scaling the null so that the lights not only circle around but also collapse in to the center. This will ensure that the shadows cast are extremely varied and that no visible central white point is obvious. A simple scene with this light rig is shown below.
|Spinner Spotlight Rig|
Now, the timing of how the lights are spun and scaled, plays the most important part of how the render will look. You need to properly understand how the multipass rendering works to achieve the best results. Your light motion will all need to be down in an identical motion pattern for every single frame so it needs to repeat itself every 1 frame and repeat forever so it can be used in animation.
|Spinner Area Spotlight Med Quality - 4.6secs||Spinner Area Spotlight Max Quality - 15.5secs|
A similar technique can be applied to simulate a very fast radiosity stage. This is done by positioning a number of shadow mapped lights around your stage and spinning them in a short time. The rig used and shown below has all the lights parented to two separate nulls. The lower null (at origin) is used to scale the entire rig to best fit around the entire scene and the upper null can be used to position the height of the spotlights by moving it up and down and by scaling it to bring the spotlights either closer or farther from verticle. This effect is not going to actually diffuse any lighting between surfaces but will provide a nice "ambient" lighting that is very similar to using radiosity.
|Spun (Faked) Radiosity Rig|
|Spinner Area and Radiosity Med Quality - 7.6secs||Spinner Area and Radiosity Max Quality - 25.5secs|
Now, the major disadvantage to using point lighting is not having a soft shadow area cast from it. However, this can also be simulated by introducing a spinning point light. It is done in the same manner as a spinning area light but instead of just a couple of spotlights to make up the total light source, now a higher number of spot lights are used to shine an array of spotlights out from a point source. This allows the spot lights to still be shadow mapped for speed (of course, they could also be done with raytraced shadows but with harder edges) but the point source will now offer a soft shadow effect. The amount of soft shadow can simply be controlled by the spun area of the individual lights. The whole rig is again spun every frame so that multi-pass rendering will simulate an even higher number of spotlight directions which will greatly smooth out the emitted light and shadows. This example includes only 15 lights in its rig but the results are very smooth and provide extremely fast soft shadows because all the shadows are still shadow mapped instead of ray traced. The lights are all 70° cone angles with 45° falloff edges. This provides significant overlap between each light but when spun, the overlapped regions are moving so the intensity over any area is smoothed out and is very close to a true point light.
|Spinner Point Light|
|Real Point Light - 3.5secs||Spinner Point Light (Shadow Mapped)- 14.9secs|
Copyright © 2009 Ethereal 3D. All rights reserved.
Email: :: Phone : (403) 670-9921