Cycles Skin Shader - mhSOGskin

by mattheimlich in Materials, Shaders, Textures

UPDATE 05Feb2016:

  • Added support for B&W bump maps.
  • Added option to isolate reflections for easier/faster shader tweaks.
  • Corrected scatter radii.
  • Better energy conservation with glossy layers.
  • Corrected default values when appended to external .blend.

As featured in 3DArtist Magazine! Skin shaders are notoriously difficult to create such that they work well under different lighting situations, and between different characters. This shader is a Sum of Gaussians shader based on research released at SIGGRAPH 2013 by Sony Pictures Imageworks, and in GPU Gems 3. Included is the incredibly accurate Sum of Gaussians skin shader, as well as full, high-quality PDF documentation. The shader has been tweaked for optimal performance for realistic rendering, but is general enough to be used for cartoon-y characters as well. Who should buy this shader:

  • Artists looking for a simple “set it and forget it” skin shader
  • Artists looking the the maximum level of skin accuracy
  • Artists looking to learn more about complex shader networks

What other artists have to say about the skin shaders: " Using Matt's skin shader lets artists do what artists do: focus on the art, rather than getting consumed with the technical specifics of creating convincing skin." - Jonathan Williamson, CG Cookie "Most people don't have the time or skills to create a hyper-real skin shader, never mind a reusable one. Not only is Matt's shader ridiculously realistic, but the controls are so simple and intuitive. I can definitely see myself using this for all of my future projects; it's well worth the investment." - Greg Zaal, Bugbox Animation "Not only do Matt's skin shaders look fantastic, but they're also fast, easy to use, and elevate Blender above the competition!" - Joseph Harford, ArtforGames   Want both skin shaders? They are available as a package deal for 25% off!

NOTE: Head model is courtesy of ten24 and The 3D Scan Store. Special thanks to them for producing such awesome stuff!

Full pdf doumentation with color pictures is provided with the download

Introduction

The mhSOGskin shader is a skin shader based on a combination of the information available in GPU Gems 3 (Chapter 14) and the skin shader outlined in the presentation OSL: The Great and Powerful (from the SIGGRAPH 2013 Course entitled Physically Based Shading in Theory and Practice). It is a skin solution based on real-world measured multi-layer diffusion profiles for skin. It is designed to be a multi-use, set-it-and-forget-it skin solution, and unlike many skin shaders available in other renderers and packages is as simple as possible with very few parameters that need artist tweaking. It requires only one color texture and an optional normal/bump map to get pleasing results, because expression of subdermal/fatty layer coloring is handled entirely within the shader via the diffusion profiles. Recommended uses for the mhSOGskin shader are:

  • “Hero” characters
  • Cases where maximum physical accuracy is required for skin
  • Cases where artists desire minimal setup times.

 

Theory

Many artists will likely be familiar with traditional skin shaders where each layers color, maps, and scattering radi are adjusted individually. They will also likely be familiar with the headaches that come with the endless tweaks necessary for different characters, lighting rigs, scales, and scene surroundings. The Sum of Gaussians approach seeks to eliminate these woes at the cost of some additional render time. It’s a production proven technique (used almost exclusively on Oz the Great and Powerful and The Smurfs) and gives pleasing and accurate, measured scattering for human skin. It relies almost entirely on the info provided by the color texture, and is therefore an excellent shader to use with face scan data. The heart of the shader lies in the 6 layer diffusion profile for human skin. Using these values means that artists don’t have to guess and tweak SSS depths and colors in an attempt to get something that looks correct. All layers are handled in the math of the shader itself. In addition to the subsurface scattering layers, there are additional layers for diffuse (dirt, makeup, etc.) and two glossy lobes representing the oily layers that sit on top of the skin. The equation that composes the skin looks like this: shader = (scattering = bssrdf_gaussian(0.0064) * color( 0.233, 0.455, 0.649); scattering += bssrdf_gaussian(0.0484) * color( 0.1, 0.336, 0.344); scattering += bssrdf_gaussian(0.187) * color( 0.118, 0.198, 0.0); scattering += bssrdf_gaussian(0.567) * color( 0.113, 0.007, 0.007); scattering += bssrdf_gaussian(1.99) * color( 0.358, 0.004, 0.0); scattering += bssrdf_gaussian(7.41) * color( 0.078, 0.0, 0.0);) The diffuse component is then added on top, followed by the two glossy components.

Settings

The settings for the mhSOGskin shader are very simple from an artist’s perspective, especially compared to other skin solutions.

Diffuse, Base Color, and Normal

Base Color - The map that will be used for the Sum of Gaussians SSS calculations. Diffuse Color - Allows the user to plug in an additonal map for makeup, dirt, or other materials that rest on top of the skin. Add Diffuse - Controls the amount of diffuse mixed on top of the SSS. Can be controled with a scalar map. Normal Map - Allows the user to plug in a normal map for their object. Automatically applies to all SSS, glossy, diffuse, and Fresnel values. Normal Strength - Controls the strength of the normal mapping. Can be controled with a scalar map.

Glossy and SSS

Sheen/Specular Color - Allows the user to control the color of glossy highlights. Sheen/Specular Roughness - Controls how rough the reflections are for each glossy component. The intention is that the Sheen layer controls tight reflections, while the Specular layer controls broader, blurry reflections, but in practice it doesn’t matter which is which. Sheen/Specular Fresnel - Controls the falloff of reflections based on which parts of the model are facing the camera. SSS Scale Multiplier - Allows the user to change the scale of the shader as a whole to compensate for models and scenes using different world scales.

No FAQ's found for this product.

    No ratings have been submitted yet.

Purchase this item to leave a review!