Synopsis:
This material does several different little things. First of
all, it allows the users to add behaviors to a material that may have,
intentionally or not, been overlooked by the developer. Second, it
allows you direct access to the outputs of the material's shade equation
(sc.out.c and sc.out.t - color and transparency) so the user can really
take a brute force approach to building a material. Third, it allows
the user to control object visibility based upon ray level (the number
of times a ray has bounced) so that you can render an object's reflections
without rendering the original object.
Motivation:
Usage:
To override or add material extensions (requirements, bump maps, displacement
maps, etc) to an existing material, just put a material in the Sub Material
slot of the Utility Material and set up whatever you need in the Basic
Material Extensions.
By using the Base Material Params, you have direct access to the outputs of max's shading equation. In short, these are the rendered fragment's color and transparency. For example, using a Falloff map with the type set to Shadow/Light in the color slot of the Base Material Params, you can approximate the look of a diffuse shade without specular highlights. You can blend between these Base Material Params and the output of the Sub Material by setting the amount on the Sub Material. The Sub Material is Composited over the Base Material Params.
Ray Level Visibility can be used to control the visibility of an object based on how many times a ray has bounced. For example, you can render the reflection of an object without rendering the object itself by making the Ray Level Visibility render between 1 and 100. Or you could render the the object and all of it's reflections except for the 3rd bounce by setting the RayLevel between 3 and 3 and clicking the invert button. This should work with transparent object's too.
An example max file and an avi are included. These demo the effect of rendering only the reflections of an object. In the avi, note the reflections of the ground in the bottom of the teapot - the ground is in the scene, but only renders in the reflections on the teapots. The summary info on the max file explains the motivation for this.
Version History:
Version 2.01 of Utility Material allows you to override the 2sidedness
of sub-materials. If a submaterial of the UtilMtl has a 2-sided material
anywhere in it, the UtilMtl's 2-side flag will be in a grayed out state
- you can then uncheck the flag to turn off the 2-sidednesstivity of the
submaterial(s).
To
Be Done:
Maybe
just add a checkbox to automatically do the "make it invisible, but still
render it in reflections" mode.
General:
The
usual disclaimers apply - Blur studio cannot support or guarantee this
thing in any way. Its gratis - enjoy. If you have any comments or questions,
direct them to blurbeta@blur.com - If we have the time, we'll do what we
can. See also: the license agreement.
our
generic readme, this plugin's current bug list.
You may not distribute this without permission from blur studio.
If you use it, your company has cool T-Shirts, and your looking for a way to show your gratitude, send a shirt or two to:
R&D
at Blur Studio, Inc.
1130
Abbot Kinney Blvd.
Venice,
CA 90291
software@blur.com
Scott
Kirvan - Blur.
Last Modified : 08/17/99