Subsurface scattering (SSS), also known as subsurface light transport (SSLT),
is a mechanism of
light
Light or visible light is electromagnetic radiation that can be perceived by the human eye. Visible light is usually defined as having wavelengths in the range of 400–700 nanometres (nm), corresponding to frequencies of 750–420 tera ...
transport in which light that penetrates the surface of a
translucent
In the field of optics, transparency (also called pellucidity or diaphaneity) is the physical property of allowing light to pass through the material without appreciable scattering of light. On a macroscopic scale (one in which the dimensions a ...
object is
scattered by interacting with the
material
Material is a substance or mixture of substances that constitutes an object. Materials can be pure or impure, living or non-living matter. Materials can be classified on the basis of their physical and chemical properties, or on their geologi ...
and exits the surface at a different point. The light will generally penetrate the surface and be reflected a number of times at irregular angles inside the material before passing back out of the material at a different angle than it would have had if it had been reflected ''directly'' off the surface. Subsurface scattering is important for realistic
3D computer graphics
3D computer graphics, or “3D graphics,” sometimes called CGI, 3D-CGI or three-dimensional computer graphics are graphics that use a three-dimensional representation of geometric data (often Cartesian) that is stored in the computer for th ...
, being necessary for the rendering of materials such as
marble
Marble is a metamorphic rock composed of recrystallized carbonate minerals, most commonly calcite or Dolomite (mineral), dolomite. Marble is typically not Foliation (geology), foliated (layered), although there are exceptions. In geology, the ...
,
skin
Skin is the layer of usually soft, flexible outer tissue covering the body of a vertebrate animal, with three main functions: protection, regulation, and sensation.
Other cuticle, animal coverings, such as the arthropod exoskeleton, have diffe ...
,
leaves
A leaf (plural, : leaves) is any of the principal appendages of a vascular plant plant stem, stem, usually borne laterally aboveground and specialized for photosynthesis. Leaves are collectively called foliage, as in "autumn foliage", wh ...
,
wax
Waxes are a diverse class of organic compounds that are lipophilic, malleable solids near ambient temperatures. They include higher alkanes and lipids, typically with melting points above about 40 °C (104 °F), melting to giv ...
and
milk
Milk is a white liquid food produced by the mammary glands of mammals. It is the primary source of nutrition for young mammals (including breastfed human infants) before they are able to digestion, digest solid food. Immune factors and immune ...
. If subsurface scattering is not implemented, the material may look unnatural, like plastic or metal.
Rendering techniques
To improve rendering efficiency, many
real-time computer graphics
Real-time computer graphics or real-time rendering is the sub-field of computer graphics focused on producing and analyzing images in real time. The term can refer to anything from rendering an application's graphical user interface (GUI) to ...
algorithms only compute the reflectance at the *surface* of an object. In reality, many materials are slightly translucent: light enters the surface; is absorbed, scattered and re-emitted potentially at a different point. Skin is a good case in point; only about 6% of reflectance is direct, 94% is from subsurface scattering.
An inherent property of semitransparent materials is absorption. The further through the material light travels, the greater the proportion absorbed. To simulate this effect, a measure of the distance the light has traveled through the material must be obtained.
Depth Map based SSS
One method of estimating this distance is to use depth maps,
in a manner similar to
shadow mapping
Shadow mapping or shadowing projection is a process by which shadows are added to 3D computer graphics. This concept was introduced by Lance Williams in 1978, in a paper entitled "Casting curved shadows on curved surfaces." Since then, it has b ...
. The scene is rendered from the light's point of view into a depth map, so that the distance to the nearest surface is stored. The
depth map
In 3D computer graphics and computer vision, a depth map is an image or image channel that contains information relating to the distance of the surfaces of scene objects from a viewpoint. The term is related (and may be analogous) to ''depth ...
is then projected onto it using standard
projective texture mapping
Projective texture mapping is a method of texture mapping that allows a textured image to be projected onto a scene as if by a slide projector. Projective texture mapping is useful in a variety of lighting techniques and it is the starting point ...
and the scene re-rendered. In this pass, when shading a given point, the distance from the light at the point the ray entered the surface can be obtained by a simple texture lookup. By subtracting this value from the point the ray exited the object we can gather an estimate of the distance the light has traveled through the object.
The measure of distance obtained by this method can be used in several ways. One such way is to use it to index directly into an artist created 1D texture that falls off exponentially with distance. This approach, combined with other more traditional lighting models, allows the creation of different materials such as
marble
Marble is a metamorphic rock composed of recrystallized carbonate minerals, most commonly calcite or Dolomite (mineral), dolomite. Marble is typically not Foliation (geology), foliated (layered), although there are exceptions. In geology, the ...
,
jade
Jade is a mineral used as jewellery or for ornaments. It is typically green, although may be yellow or white. Jade can refer to either of two different silicate minerals: nephrite (a silicate of calcium and magnesium in the amphibole group of ...
and
wax
Waxes are a diverse class of organic compounds that are lipophilic, malleable solids near ambient temperatures. They include higher alkanes and lipids, typically with melting points above about 40 °C (104 °F), melting to giv ...
.
Potentially, problems can arise if models are not convex, but
depth peeling can be used to avoid the issue. Similarly, depth peeling can be used to account for varying densities beneath the surface, such as bone or muscle, to give a more accurate scattering model.
As can be seen in the image of the wax head to the right, light isn't diffused when passing through object using this technique; back features are clearly shown. One solution to this is to take multiple samples at different points on surface of the depth map. Alternatively, a different approach to approximation can be used, known as
texture-space diffusion.
Texture space diffusion
As noted at the start of the section, one of the more obvious effects of subsurface scattering is a general blurring of the diffuse lighting. Rather than arbitrarily modifying the diffuse function, diffusion can be more accurately modeled by simulating it in
texture space
Texture mapping is a method for mapping a texture on a computer-generated graphic. Texture here can be high frequency detail, surface texture, or color.
History
The original technique was pioneered by Edwin Catmull in 1974.
Texture mappi ...
. This technique was pioneered in rendering faces in ''
The Matrix Reloaded
''The Matrix Reloaded'' is a 2003 American science-fiction action film written and directed by the Wachowskis. It is a sequel to '' The Matrix'' (1999) and the second installment in the ''Matrix'' film series. The film stars Keanu Reeves, Lau ...
'',
but is also used in the realm of real-time rendering techniques.
The method unwraps the mesh of an object using a vertex shader, first calculating the lighting based on the original vertex coordinates. The vertices are then remapped using the UV
texture coordinates
A vertex (plural vertices) in computer graphics is a data structure that describes certain attributes, like the position of a point in 2D or 3D space, or multiple points on a surface.
Application to 3D models
3D models are most often represented ...
as the screen position of the vertex, suitable transformed from the
, 1range of texture coordinates to the
1, 1range of normalized device coordinates. By lighting the unwrapped mesh in this manner, we obtain a 2D image representing the lighting on the object, which can then be processed and reapplied to the model as a
light map. To simulate diffusion, the light map texture can simply be blurred. Rendering the lighting to a lower-resolution texture in itself provides a certain amount of blurring. The amount of blurring required to accurately model subsurface scattering in skin is still under active research, but performing only a single blur poorly models the true effects.
To emulate the wavelength dependent nature of diffusion, the samples used during the (Gaussian) blur can be weighted by channel. This is somewhat of an artistic process. For human skin, the broadest scattering is in red, then green, and blue has very little scattering.
A major benefit of this method is its independence of screen resolution; shading is performed only once per texel in the texture map, rather than for every pixel on the object. An obvious requirement is thus that the object have a good UV mapping, in that each point on the texture must map to only one point of the object. Additionally, the use of texture space diffusion provides one of the several factors that contribute to soft shadows, alleviating one cause of the realism deficiency of
shadow mapping
Shadow mapping or shadowing projection is a process by which shadows are added to 3D computer graphics. This concept was introduced by Lance Williams in 1978, in a paper entitled "Casting curved shadows on curved surfaces." Since then, it has b ...
.
See also
*
Bidirectional scattering distribution function
References
External links
Henrik Wann Jensen's subsurface scattering websiteAn academic paper by Jensen on modeling subsurface scatteringSubsurface Scattering: Using the Misss_Fast_Simple_Maya shader– Maya tutorial
3d Studio Max Tutorial - The definitive guide to using subsurface scattering in 3dsMax*
Subsurface scattering
Subsurface scattering (SSS), also known as subsurface light transport (SSLT), is a mechanism of light transport in which light that penetrates the surface of a translucent object is scattered by interacting with the material and exits the surfa ...
in
Blender
A blender (sometimes called a mixer or liquidiser in British English) is a kitchen appliance, kitchen and laboratory appliance used to mix, crush, purée or emulsion, emulsify food and other substances. A stationary blender consists of a blender ...
.
{{DEFAULTSORT:Subsurface Scattering
3D rendering
Scattering, absorption and radiative transfer (optics)