Another Layered Skin

General discussion about Indigo Materials - material requests, material developement, feedback, etc..
Post Reply
8 posts • Page 1 of 1
Musorgki
Posts: 17
Joined: Mon Oct 15, 2007 3:01 pm

Another Layered Skin

Post by Musorgki » Sat Dec 26, 2009 2:21 pm

Skin renders...
CrissyField.jpg
CrissyField.jpg (295.38 KiB) Viewed 4492 times
Various lights...
various lights.jpg
various lights.jpg (287.07 KiB) Viewed 4490 times
Different lighting conditions...
combo.png
combo.png (304.47 KiB) Viewed 4491 times
StillLife.png
StillLife.png (290.85 KiB) Viewed 4491 times
Desk.png
Desk.png (293.97 KiB) Viewed 4497 times
skylight.png
skylight.png (359.55 KiB) Viewed 4492 times

User avatar
Godzilla
Indigo 100
Posts: 985
Joined: Sat Jun 06, 2009 11:33 am

Re: Another Layered Skin

Post by Godzilla » Sat Dec 26, 2009 2:33 pm

Wow. :shock:

Amazing renders, now all we need is hair in Indigo. :)
samlavoie.xyz

Musorgki
Posts: 17
Joined: Mon Oct 15, 2007 3:01 pm

Re: Another Layered Skin

Post by Musorgki » Sat Dec 26, 2009 2:34 pm

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!

User avatar
zeitmeister
2nd Place 100
Posts: 2010
Joined: Tue Apr 22, 2008 4:11 am
Location: Limburg/Lahn, Germany
Contact:

Re: Another Layered Skin

Post by zeitmeister » Sun Dec 27, 2009 12:23 am

Wow... thank you very much! This looks gorgeous... :shock:
Cheers, David



DAVIDGUDELIUS // 3D.PORTFOLIO
·
Indigo 4.4.15 | Indigo for C4D 4.4.13.1 | C4D R23 | Mac OS X 10.13.6 | Windows 10 Professional x64

User avatar
Jambert
Indigo 100
Posts: 545
Joined: Wed Jul 30, 2008 10:08 pm
Location: France, Lyon

Re: Another Layered Skin

Post by Jambert » Sun Dec 27, 2009 11:20 pm

Realy nice work, congrats :D

blended mat is the way here, each people get a different skin, blended mat is very usefull here.

User avatar
CTZn
Posts: 7240
Joined: Thu Nov 16, 2006 4:34 pm
Location: Paris, France

Re: Another Layered Skin

Post by CTZn » Tue Dec 29, 2009 4:07 am

Here we are ! Really amazing !
obsolete asset

Musorgki
Posts: 17
Joined: Mon Oct 15, 2007 3:01 pm

Re: Another Layered Skin

Post by Musorgki » Fri Jan 08, 2010 8:52 am

Thanks guys!

User avatar
OnoSendai
Developer
Posts: 6241
Joined: Sat May 20, 2006 6:16 pm
Location: Wellington, NZ
Contact:

Re: Another Layered Skin

Post by OnoSendai » Fri Jan 08, 2010 10:18 am

Great stuff indeed!

Post Reply
8 posts • Page 1 of 1

Who is online

Users browsing this forum: No registered users and 2 guests