In computer graphics, Subsurface Scattering (SSS) is a technique used to simulate the interaction of light with translucent materials. It's a crucial aspect of realistic rendering in 3D graphics, particularly for objects that exhibit partial transparency, such as skin, wax, leaves, and fabrics.
What is Subsurface Scattering?
Subsurface scattering occurs when light enters an object and is absorbed by its interior, only to be scattered back out again. This process can happen multiple times, resulting in a complex interaction of light with the material. The scattered light can then exit the object at various angles, creating a soft, diffuse appearance.
Inputs and Properties
To achieve realistic subsurface scattering, several inputs are required:
- Color: The surface color or probability that light is reflected for each wavelength.
- Scale: A global scale factor for the scattering radius.
- Radius: The average distance that light scatters below the surface. Higher radii give a softer appearance as light bleeds into shadows and through the object.
- IOR Cycles Only: Index of refraction for subsurface scattering.
- Anisotropy Cycles Only: Directionality of subsurface scattering. Higher anisotropy scatters deeper into the object.
- Roughness Cycles Only: Roughness of the glossy surface surrounding the subsurface volume.
The rendering method used for subsurface scattering can also impact the results. EEVEE, a popular 3D software, supports three methods:
- Christensen-Burley: An approximation to physically-based volume scattering.
- Random Walk (Fixed Radius): Provides accurate results for thin and curved objects.
- Random Walk: Behaves similarly to Random Walk (Fixed Radius) but modulates the Radius based on Color, Anisotropy, and IOR.
Outputs
The output of subsurface scattering is typically a BSSRDF (Bidirectional Scattering-Single Refraction- Diffusion) shader output.
Examples
Here are some examples of subsurface scattering in action:
- A simple cube with direct surface scattering (left). Adding subsurface scattering (right).
- A Blender-created example of subsurface scattering.
- A real-world example of light scattering beneath the surface (actual photo).
Subsurface scattering is a crucial aspect of 3D graphics, allowing for realistic rendering of translucent materials. By understanding the inputs and properties required for SSS, artists and designers can create more accurate and visually appealing results in their work.
References:
- "Finish: Subsurface Light Transport". POV-Ray wiki.
- "A Biophysically-based Spectral Model of Light Interaction with Human Skin" (PDF). Computer Graphics Forum.
- Henrik Wann Jensen's subsurface scattering website
- An academic paper by Jensen on modeling subsurface scattering