Thanks! Hair +1.
This material is similar to Whaat's material
here (nice work!),
tho' the one I use is blended with a phong material
and has bump, exponent & absorption layer maps.
Code: Select all
<medium>
<name>skin_medium</name>
<precedence>10</precedence>
<basic>
<ior>1.2</ior>
<cauchy_b_coeff>0</cauchy_b_coeff>
<absorption_coefficient_spectrum>
<rgb>
<rgb>3 20 30</rgb> <!-- "correct" way to dial skin color, see below for the easy way -->
<gamma>1</gamma>
</rgb>
</absorption_coefficient_spectrum>
<subsurface_scattering>
<scattering_coefficient_spectrum>
<rgb>
<!-- shadow terminator:
set scatter green to 1000,
dial red down & blue up by equal percentages (500/1000/2000, not 0/1000/2000)
the further from 1000, the more saturated the color) -->
<rgb>250 1000 4000</rgb>
<gamma>1.0</gamma>
</rgb>
</scattering_coefficient_spectrum>
<phase_function>
<uniform/>
</phase_function>
</subsurface_scattering>
</basic>
</medium>
<material>
<name>skin_sss</name>
<glossy_transparent>
<internal_medium_name>skin_medium</internal_medium_name>
<texture>
<uv_set>default</uv_set>
<path>colorMap.png</path>
<exponent>1.0</exponent> <!-- easy way to skin color - lower = lighter, higher = darker -->
<b>1.45</b>
</texture>
<texture>
<uv_set>default</uv_set>
<path>bumpMap.png</path>
<b>.00033</b>
<exponent>1</exponent>
</texture>
<texture>
<uv_set>default</uv_set>
<path>exponentMap.png</path>
<a>0</a><b>65</b><c>15</c> <!-- c is low value, b + c is high value -->
<exponent>1</exponent>
</texture>
<absorption_layer_transmittance>
<texture>
<texture_index>0</texture_index>
</texture>
</absorption_layer_transmittance>
<bump>
<texture>
<texture_index>1</texture_index>
</texture>
</bump>
<exponent>
<texture>
<texture_index>2</texture_index>
</texture>
</exponent>
<!--bump_map>
<uv_set>default</uv_set>
<path>bumpMap.png</path>
<b>.00033</b>
<exponent>1.0</exponent>
</bump_map-->
</glossy_transparent>
</material>
<material>
<name>skin-phong</name>
<phong>
<texture>
<uv_set>default</uv_set>
<path>colorMap.png</path>
<exponent>2.2</exponent>
</texture>
<texture>
<uv_set>default</uv_set>
<path>bumpMap.png</path>
<b>.000165</b> <!-- was .00033, cut in half here (but not in sss) to fake the softening effect of scatter -->
<exponent>1.0</exponent>
</texture>
<texture>
<uv_set>default</uv_set>
<path>exponentMap.png</path>
<a>0</a><b>65</b><c>15</c> <!-- c is low value, b + c is high value -->
<exponent>1.0</exponent>
</texture>
<diffuse_albedo>
<texture>
<texture_index>0</texture_index>
</texture>
</diffuse_albedo>
<bump>
<texture>
<texture_index>1</texture_index>
</texture>
</bump>
<exponent>
<texture>
<texture_index>2</texture_index>
</texture>
</exponent>
<ior>1.25</ior> <!-- this is shiny (spec brightness), exponent is sharpness (spec size) -->
<fresnel_scale>1</fresnel_scale>
</phong>
</material>
<material>
<name>skin</name>
<blend>
<a_name>skin-phong</a_name>
<b_name>skin_sss</b_name>
<blend_factor>0.7</blend_factor>
</blend>
</material>
However, it is not an accurate model of skin:
As it happens, skin is actually a greenish gray color, with the "color" we see
coming from absorption by melanin and hemoglobin and scattering by the dermis.
This material ignores the greenish gray color of skin (since most skin textures
available on the internet are skin colored) and uses a blended phong & sss model,
rather than a dermis/epidermis model (since I wasn't crazy about making two copies
of the geometry).
Notes:
metropolis only seems to work pretty well
the right place to dial skin color is the absorption_coefficient_spectrum rgb
the easiest place to dial skin color is the absorption_layer_transmittance exponent
the only place to dial skin oilieness/wetness is the glossy_transparent exponent map's b & c,
but should be done for both materials.
Here is a good overview of research done on rendering skin:
The Appearance of Human Skin, Columbia University, June 2005
Here is a nice
seamless skin texture.
Download it at 512x512, or login to get it at 1024x1024
The license is "free to use for commercial and non-commercial works",
but I'm not posting it because the license doesn't mention distribution.
Or if you are interested, here are tutorials for painting
skin,
bump & specular maps.
Enjoy!