sprockets Learn to create your own tool bars! Behind The Scenes: A:M and Animatronics Jeff Cantin's Classic Splining Tutorial Strange Effect, video demo and PRJ included John blows up a planet, PRJs included VWs by Stian, Rodger and Marcos Myron's band gets its own wine!
sprockets
Recent Posts | Unread Content
Jump to content
Hash, Inc. - Animation:Master

Sub Surface Scattering Exploration


Rodney

Recommended Posts

  • Admin

Over in the 'Buying a Cafe' topic Steve was kind enough to share his settings for Sub Surface Scattering.

I know there are several topics on settings but this is something I've longed to understand versus just occasionally reference.

 

His settings were:

SSS with diffuse color of 253, 227, 185

SSS half distances 3,2,1

SSS extend group to avoid SSS borders

 

General if not naive assumption:

The SSS diffuse color settings operate as R,B,G settings in that the first number represents how much Red, the second how much Blue and the third how much Green.

 

True/False? No where close to reality?

 

If true then I would assume Steve's settings have a majority of Red (253) mixed with a good dose of Blue (227) with a mid level Green (185) applied to create his character's skin.

I'll note that it's reportedly a good practice never to use extreme values/full colors (0 or 255) when setting RBG values and further assume the same will be a good practice with SSS.

Added: Unless I'm mistaken these values equate to roughly 99% Red 89% Blue and 73% Green.

 

Thoughts? Favorite Links? Recipes?

 

One of my favorite links of old was Matt Bradbury's exploration of SSS here.

That was at the very early era of SSS in A:M so some things might have changed.

From that exploration it seems a key concept for SSS is to let the diffuse color of the Group feed into the SSS half distance settings to achieve the desired color/effect.

This is what Steve appears to be doing via his settings.

 

For those new to the topic of Sub Surface Scattering please visit the forum dedicated to that subject: Sub Surface Scattering Forum

Link to comment
Share on other sites

  • Replies 8
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

General if not naive assumption:

The SSS diffuse color settings operate as R,B,G settings in that the first number represents how much Red, the second how much Blue and the third how much Green.

 

True/False? No where close to reality?

 

FALSE

 

The values that Steve gave for his diffuse color of 253, 227, 185 are the Red GREEN Blue values (not Red BLUE Green).

 

Those numbers do not represent a percentage of red green blue ...color is not linear. Usually is talked about in the additive sense of light (see this linkfor discussion of RGB). This is not an easy topic, but no need to fret.

 

It is easier to talk about color in terms of HSV. (Hue Saturation Value) - the RGB values can be converted into HSV. see here for ONE method of code conversion algorithm for some RGB space, as there are multiple RGB color space models.

 

I think of it as picking the Hue first, then how saturated it is (how much pigment?), then how much white is added. When you look at the color pickers for photoshop, painter, A:M - you can get an idea of the relationships between the different color models. There are also CMYK, Lab, et al color models

 

Here's a nice juicy link to discussion of HSV (HSL). Have fun.

 

Yes the surface diffuse color plays into the SSS, along with extinction values and density. But my biggest question is with the 1/2 extinction distances for the RGB & relative density of SSS samples (v 16b), ie just how is that used in the computation of the SSS? To me it's always been trial and error. I'll note that 17g has added "extend distances" (and I haven't looked at 18 yet), presumably to correct some artifacts?.

 

I did do some testing awhile back - but conclusion I came to was SSS extinction values, density values chosen also depend on size of model, surface "thicknesses" and lighting setup as well, and one's tolerance for render times. I don't have the patience (still on 32 bit version).

ColorSpace.jpg

Edited by NancyGormezano
Link to comment
Share on other sites

  • Admin

Ooops. I typo'd the RBG thing. Heh... what a doofus I am.

Thanks for setting me straight as that order will make a huge difference or result in many a mistake!

 

Regarding the linear aspects of color:

Perhaps I'm thinking of Linear Color Space? I'm still trying to make sense of that for better use of the EXR format, which I hope to exploit some day.

 

Thanks Nancy, I've much to learn on the subject.

 

 

Added: I should note that while I'm interested in all aspects of color and lighting my primary concern is what we can currently manipulate and control in A:M.

It's interesting to note that in the color picker we have a means to convert values between RBG and HSL (Hue, Saturation and Luminosity).

Unless otherwise advised I will now assume Luminosity is another term (or at least fairly equivalent term) for Lightness/Saturation.

Link to comment
Share on other sites

Regarding the linear aspects of color:

Perhaps I'm thinking of Linear Color Space? I'm still trying to make sense of that for better use of the EXR format, which I hope to exploit some day.

 

I don't know what EXR - a file format, has to do with Linear color space - unless you mean that it allows a data record of sorts for 16 bit (or more?) color data representation (as opposed to 8 bit) ?

 

From what I understand (using the term "understand" very loosey-goosey) the L*a*b color model (or CIELAB) allows one of the better systems for representing the perceivable (for humans) color space, sorta linearly. From the wiki:

 

Strongly influenced by the Munsell color system, the intention of both "Lab" color spaces is to create a space which can be computed via simple formulas from the XYZ space, but is more perceptually uniform than XYZ.[4] Perceptually uniform means that a change of the same amount in a color value should produce a change of about the same visual importance.

 

The L*a*b* color space includes all perceivable colors which means that its gamut exceeds those of the RGB and CMYK color models (for example, ProPhoto RGB includes about 90% all perceivable colors). One of the most important attributes of the L*a*b*-model is device independence. This means that the colors are defined independent of their nature of creation or the device they are displayed on. The L*a*b* color space is used e.g. in Adobe Photoshop when graphics for print have to be converted from RGB to CMYK, as the L*a*b* gamut includes both the RGB and CMYK gamut. Also it is used as an interchange format between different devices as for its device independency.

 

And yeah - gimme my paints, pigments...much easier to understand ...

Link to comment
Share on other sites

  • Admin
I don't know what EXR - a file format, has to do with Linear color space - unless you mean that it allows a data record of sorts for 16 bit (or more?) color data representation (as opposed to 8 bit) ?

 

Targa and EXR formats store color space in linear fashion. Other formats such as PNG, JPG and TIFF store color space as sRGB (non linear).

There are exceptions with some formats but I'm not well enough into this to even speculate.

 

unless you mean that it allows a data record of sorts for 16 bit (or more?) color data representation (as opposed to 8 bit)

 

Yes, this is what I believe it refers to.

 

 

REF: http://www.sidefx.com/docs/houdini13.0/render/linear

Link to comment
Share on other sites

I don't know what EXR - a file format, has to do with Linear color space - unless you mean that it allows a data record of sorts for 16 bit (or more?) color data representation (as opposed to 8 bit) ?

 

Targa and EXR formats store color space in linear fashion. Other formats such as PNG, JPG and TIFF store color space as sRGB (non linear).

There are exceptions with some formats but I'm not well enough into this to even speculate.

 

unless you mean that it allows a data record of sorts for 16 bit (or more?) color data representation (as opposed to 8 bit)

 

Yes, this is what I believe it refers to.

 

 

REF: http://www.sidefx.com/docs/houdini13.0/render/linear

 

Apples and oranges going on here.

 

I will talk in the lowest level I can to describe what I think is part of confusion, thus probably making it more inaccurate, but am happy introducing my own misconceptions as well.

 

sRGB (of which there are multiple sRGB systems - ie apple, 1996, etc) is a color space model (math) - it is NOT linear - I take it to meaning it is defined by curve (not straight lines). Multiplying one side does not produce a linear straight line result. Graphically the RGB color space model is usually represented as a cylindar. However The L*a*b color model is said to linearish.

 

Linear in this case, also does not refer in this discussion to the way data is stored in a file (ie 8 bits of red followed by 8 bits of green followed by 8 bits of blue)

 

8 bits is refering to how many bits of precision are allowed to define the red component, green or blue component in the file (thus 0-255). Jpg, tga, png store/have 8 bits/channel for each pixel of an image. I do not know which or if, new file formats allow for 16 bits per component (probably exr?). 16 bits I believe also refers to the precision in which the software (photoshop, houdini, A:M) uses the data when computing the resultant image (into the device dependant color space). sRGB is device dependant. LAB was created to be device independant.

 

A TGA file is usually said to be either 24 bit or 32 bit - meaning that 8 bits are used for each of the RGB values (for total of 24 bits) and if there is an alpha channel then it is referred to as 32 bit , because an additional 8 bits/pixel is stored to define the transparency of the pixel.

 

EXR file format and perhaps TGA file format (do not know about png, jpg, bmp, tiff) also allow specification of which color space model (sRGB, L*a*b, etc) was used to create the RGB data contained in the file. Additionally, the EXR file format from what I'm gathering also allows for almost unlimited expansion of data describing each pixel beyond alpha and RGB (eg depth, lights, etc) all contained in one file.

 

Targa and EXR formats store color space in linear fashion. Other formats such as PNG, JPG and TIFF store color space as sRGB (non linear).

 

So to say TGA and EXR store color in "linear fashion" makes no sense - other than perhaps you meant that the Houdini software interprets, computes, writes the TGA and EXR file with L*A*B color data coordinates (which is close to linear) and labels it as such. Whereas other programs normally write it as sRBG, unless you tell them to do otherwise, like photoshop (which can use any color model you tell it to use that you have defined on your system).

 

And that's my 2 bits to add to the confusion for the day.

Edited by NancyGormezano
Link to comment
Share on other sites

  • Admin

I actually followed you there... which kind of scares me.

 

So to say TGA and EXR store color in "linear fashion" makes no sense - other than perhaps you meant that the Houdini software interprets, computes, writes the TGA and EXR file with L*A*B color data coordinates (which is close to linear) and labels it as such. Whereas other programs normally write it as sRBG, unless you tell them to do otherwise, like photoshop (which can use any color model you tell it to use that you have defined on your system).

 

I was intentionally vague there because I don't know the correct terminology to use to describe the line that can be drawn from a starting point to a finishing point within color space.

In the case of a line drawn through color space I'm not sure anything except the start point and end point would need to be defined as the remainder could be determined based on those two locations.

With any non-linear calculations some additional information must be present to at least define the color space.

Could we at least conclude that the values between light and dark can be linear even if not all values are known or represented?

For instance when proceeding from white to black we can predict what we will find in between.

 

I guess what I find interesting is that when taken in isolation each of the channels operates quite linearly.

For instance if considering Red we move from the darkest red (perceptually black) at 0 to a bright red at 255 on the RGB scale.

Of course this scale is an artificial measurement designed to make sense of something considerably complicated.

 

Where things get considerably more interesting is where we mix in Green or Blue as that immediately takes us off that linear path into another dimension (that of a plane cut through our initially theoretical color space).

I say theoretical because until we know what initial colors we are dealing with we don't have enough information to formulate that space.

 

A third channel then pushes us into a volume of space with additional colors as constrained by our three channels.

A linear path could be plotted but we are more likely to see a curvature of color through this volumetric space. (this is rather delightfully demonstrated by rainbows and similar effects)

If the value of one relative color changes, our color (the one we are sampling) is very likely going to change.

I assume any color sampled along a line or a curve drawn through space created by those colors will be affected by these changes as well.

Color is relative and therefore its origin (or origins) traced.

 

I sense that one of the things driving current interest in linear workflow with regard to color space/gamma etc. is that every time we introduce variation we lose information and when we lose information it makes recreating the original (color space) more difficult if not impossible to replicate.

Link to comment
Share on other sites

  • Admin

Fxguide is a great resource for the deeper aspects of math and animation.

Here is a discussion on linear workflow and color space:

 

http://media.fxguide.com/fxpodcast/fxg-090...linearlight.mp3

 

Several things I picked up:

 

2 + 2 = 10 (I didn't quite get this reference)

Apple's gamma settings moved to 2.2 which aligns it with PCs. (Has this changed already?)

When halfway across the values of a RGB channel we are only about 20 percent in value of intensity (don't hold me to this... I'm going from memory)

 

Edit: With regard to the halfway point between 0 and 255 not being 127 I found this article that explains the difference as resulting from gamma: http://filmicgames.com/archives/299

Link to comment
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...