SSS Rendering with Nodes

Posted March 14th, 2007 in Blender

Tired of using scripts? Tired of crazy setups for Sub Surface Scattering? Look no further than Blender’s built in Compositor Nodes! This novel approach by Mike Pan (mpan3) uses Blender’s Compositor to create a highlight mask based on the Z render pass.

In theory you simply take a render from the front of the object (Front.Z) and you take a render from the back of the object (Back.Z) and you normalize the two passes into one map value (Combined.Z) and use it as a mask for the RGBA pass. (See Image). In theory this works well however there are some key problems that come up when working with this kind of setup:

  1. Blurring the Combined.Z pass produced a dropshadow effect.
  2. The RGBA pass has to be inherently brighter as the Multiply Mix Node darkens the colors

SSS SchematicThat aside, it actually produces very convincing results when used properly and doesn’t take but a few minutes to setup. The easiest way to produce results is to setup the scene and lighting and then Link Duplicate the Scene. Move the camera to the direct opposite side of the object. Linking both render passes into the compositor on your primary scene will generate the desired combined Z pass which can be used in the example schematic shown.

I did quite a bit of testing with this and found that it was actually easier to get good results by mirroring the backside camera horizontally as it aligns the Z channels better. Also if you then use the Darken Filter Type on your Mix Node it will give a better visual Z channel which doesn’t have to be blurred quite as much to produce the same results.

Over all the technique is very useful and may be easier than using SSS by the MakeHuman project! For more reading on the subject check out these links:

urban web studios, urban powered, urban design, web studios, web, studios, web 2.0, web application, web site design, high quality design, programming, custom database solutions, valid xhtml, valid css, valid xhtml/css, standards compliant, custom design, custom programming, ajax, web interfaces, applications, interface design, studio site, open source, php, mysql, postgresql, html, css, xhtml, rss, xml