Subsurface Scattering Shaders

Many real world materials do not reflect light at their surface, but scatter or absorb light internally. These optical properties, which are not adequately addressed by the commonly used illumination models in computer graphics, are called "subsurface scattering".

Subsurface scattering is an important element for rendering a variety of naturally occurring materials. Even tiny amounts of scattering enhance the apparent "softness" of the surface for many organic substances such as human skin.

There are two separate sets of shaders and Phenomena to implement subsurface scattering:
the fast, non-physical versions, and the physically correct one.

The fast, non-physical shaders are optimized to efficiently render human skin and other shallow, near furface scattering. While they do support "through" scattering it is not truly volumetric and most suitable for translucency of relatively thin objects such as ears.

The physical shader renders subsurface scattering in a physically correct way. It attempts to simulate reality by applying the same (but simplified) mechanisms which happen in the natural world. Its goal is to provide a complete simulation of scattering beyond the scope of the fast, non-physical shaders, especially when photon tracing is used: photons from the environment need to interact with objects performing subsurface scattering, as well as photons emitted from such objects need to interact with the surroundings. Another example is light scattering trough volumetric geometry, as in a fiber channel.

The fast shader is recommended for:

The physical shader is recommended for:

Before any shader in the base shader library can be used, it must be loaded into the mental ray rendering software. A .mi scene file may use the statements

        link "subsurface.so"
        $include <subsurface.mi>

All shader and phenomena names in this package are prefixed with "misss", for "mental images subsurface scattering".

Copyright (©) 1986-2009 by mental images GmbH