Let's talk about SSS, baby

When working with the Subsurface Radius value, I’m wondering: does a math node process and output all three values of an RGB node, or would that need a vector math node?

If Math ➔ Multiply would multiply each of the three RGB values with the same factor and output each outcome, that would be easier than entering the same factor three times in the Vector Math node.

I’d like to multiply all RGB values with the same factor and feed them into the Principled shader’s Subsurface Radius slot to exaggerate the effect.

Thanks in advance for your answer.

Math node has a gray socket. That says the output is a single value. Scalar multiplication is what you are lookinfg for, so use vector math scale.

1 Like

Thanks. I was hoping the regular Math node would also do scalar multiplication, with the difference of being only able to enter a single factor.

You can connect scalars( gray fields ) to vector input sockets. ( gray into yellow or purple). That way it will be upcasted to serve oll three components. But if the output is gray. Then it is not going to be “more”.

Just if you overread it. Dont use multiply in vector math. Use scale ( that is just a single input value )

1 Like

Thanks. I indeed overread that. :blush:

1 Like

I think the subsurface scale slider is meant for just that, right?

Scale and Radius in the SSS shader (Subsurface and Radius in the Principled shader) each have their own complementary effect. Increasing the Scale / Subsurface value has a different effect than multiplying the RGB values of Radius. And the Radius RGB values can exceed 1.

Just saying what is in the documentation

Rather than being a simple mix between Diffuse and Subsurface Scattering, it acts as a multiplier for the Subsurface Radius.

Maybe it does something else also :man_shrugging:t3:. You can type any value you want in the field


Hmm… I’d need to experiment with this. I’ve always had the impression that the Subsurface value is the SSS amount / effect intensity, and the Radius determines which RGB colors are more visible.

Did a little test.

This node setup yields a different result than leaving the Subsurface Radius as is and setting the Subsurface value to 2. The last approach makes everything more translucent.

The RGB input value in the node setup is the same as the default Subsurface Radius value.

But maybe the 0.1 value of Subsurface simply counters the multiplication of the Radius.

That’s interesting… I would like too like to tinker with the settings but I am not near my computer rn

1 Like

Just for clarification, are you setting the sss scale to 2 or 0.2 in the last case?

Hmm… I think the multiplication of the Subsurface Radius is countered by the Subsurface value.

In the above node setup the RGB + Scale nodes yield an SSS of 0.1 x 2 = 0.2, and if I delete the nodes and set the Subsurface value to 0.2, the result is similar. So I guess you’re right @Xeofrios, thanks for the pointer.


Just read over your talk. Radius is a Vector3 to define it for each color component differently, and is the amount of scattering. By putting a colored value into the radius you set different radii per channel.
Subsurface value itself is just a weighting for the radius. ( Strength and size compensation) They are multiplied one with the other.


The way I like to think about it is that the radius is the distance the rays travel inside the mesh, the scale is a multiplier for that, and the sss color is the the color of the surface inside the mesh


Actually this is almost correct, but I think it’s this way:

The radius is in METERS. so bring it really, really down. This saves you a lot of noise in the render.
I usually set the radius to something like 0.02 on most materials, max to 0.1. It’s separate for RGB, since each wavelength can travel different distance and this can create a color ramp that you can’t achieve with the single color input.

The SSS value is MIX value - so this means how the SSS shader mixes with the rest of the material.

The SSS color is the color that is kind multiplied - I’m not sure how that works, but probably on entering the medium.

I really need to make a video about this, just found out that this is a bigger secret than I thought.


Thanks @vduha ! As this has become quite an interesting thread about SSS, I’ve adjusted the thread title. :slightly_smiling_face::+1:

1 Like

…and all the good things and the bad things scattering.

I’ll get my coat.

1 Like

Haha, you got the reference. :smiley::+1: Salt ‘n’ Pepa, baby. :wink:

1 Like

Yes, the radius is actually in meters unlike pure values of other shading settings. What this also means is that when setting the radius values you have to keep the mesh scale in mind.

You can think of the SSS value to be a mix factor or a multiplier but for me a multiplier is more intuitive because you can type in values more than 1