RAYTRACED
SHADOWS AND FAKED CAUSTICS
A problem with
the Scanline-Renderer that ships with the base package of MAX is: it
can't do caustics. Caustics are are concentrations of light that appear
with, for example, magnifying glasses when light shines through them.
This is an extreme example, but a wineglass also casts these caustics,
although a little weaker (the doesn't get bundled together as much as
with the lens of a magnifying glass).
The shadows cast by a glass can also only be faked using tricks.
MAX R3 contains many new features which make the task easier.
It would be even easier with a radiosity-renderer, such as Mental
Ray - currently the best solution. It costs a lot of money though.*¹
Let's
assume You've already modeled a glass. The glass is set on a
table, and is being illuminated by a simple spotlight. Shadow
casting has not been activated yet, and no materials have been
applied so far. Your scene could look like the image above.
Let's start with
the material for the glass: Open the Material Editor , select a material
slot and apply the material to Your glass.
First of all You're going to assign a Raytracemap to the Refraction
map channel. To do so, open the Maps Rollout, click on the Refraction
map channel and select "Raytrace Map" from the newly
opened dialog.
Then increase the shininess strength to 100 and the shininess
to 45. Render an example image, it should look somewhat like
the image to the left.
On to
the lighting. Select the spotlight and check the box "Cast
Shadows". Scroll to the "Shadow Parameters" rollout
and change the shadow type to Raytraced Shadows. If You make
a test render now, the glass will cast a shadow, but it is completely
black. To fix this Your glass will need a transparency (opacity)
added to it. The difference between refraction and opacity is
that refraction only applies to bending light, whereas the actual
transparency is determined by the opacity value. If You let the
opacity of a material at 100, the object will not be transparent,
i.e. it won't let any light rays through: the shadow remains
black. If You change the opacity to 0, the material will be completely
transparent, light rays pass through without losing strength.
Note: The shadow will always remain black with shadow-mapped
lights - they do not respect the transparency of a material.
Back to
the Material Editor : Open the Maps Rollout of Your glass material
again, and click on the unused Opacity map channel. Select "Falloff"
in the newly opened dialog. Check the X-axis as the falloff direction
in the "Falloff-Parameters" rollout. Render an image
and compare Your result with the image to the right. By applying
the Falloff map we have not only gotten transparency in our shadows,
but also the base setup for our "Pseudo-Caustics".
Now the shadows need to be brightened, as they are still to dark
as they are now. To do so, select Your spotlight and go to the
shadow parameters. Go to the Color swatch and give it a gray
color at a 170 value. Then increase the density of the shadow
to 2.
The result is shown in the middle image on the right.
In the
shadows cast by the light we now have Caustics, concentrations
of light, even though not real ones. The shadow is, however,
in some areas still too defined - You can clearly see the edge
of the glass.To lessen this effect a little, copy (don't choose
instance!) the spotlight and change the shadow type back to shadow
map. You now have a raytraced- and shadow mapped-shadows light
in the same spot. Change the color of the shadow back to black,
and decrease the density to 0.6. Open the Shadow Map Parameters
rollout and increase the sample range to 8. This will soften
the shadow map's shadows. Now You have to play around a little:
Because of the two spotlights in the same scene everything will,
of course, be a little lighter. You can prevent this my lowering
the multiply values (found in the General Parameters rollout)
of both spotlights to about half their original. This, in turn,
will affect the look of the shadows. So it's just a question
of playing around with the values until You've found the look
You want.
I myself
have reduced the multiply values to 0.7. The result can be seen
in the last image. Lastly I have added a little noise as a bump
map to the material and added a raytrace map to the reflection
map slot. The resultant scene can
be downloaded here. |
|
Notes
from translator :
*¹ - The recently released Bunch of Volumes is a good and
much cheaper alternative.