Turn down reflection of a glass bsdf

I’d like to turn down how much a glass bsdf node reflects? For a glossy node I usually just mix it with a diffuse, but how to do it with glass, mixing with transparency doesn’t seem quite right.

You could instead use a mix of the refractive, transparent, and glossy shader nodes.

You would mix the transparent and refractive nodes using the output of the fresnal node and you can then use the fresnal or layer weight node to create a custom reflectivity for the glass.

A slightly different approach than suggested by Ace:

Mix the glossy and transparent to give tunable reflections - then mix this with the refraction using the fresnel to attenuate the reflection…

With the bottom mix node set to zero - this gives you a basic glass material (essentially the same as using the glass shader)

Upping the fac value of this mix node fades the reflections only, leaving the refractive part unchanged. At a value of 1, the reflections will totally disappear.

Just be careful to keep the IORs of the Fresnel and Refraction shaders the same - otherwise you may get odd results.


edit: Thinking about this node setup a bit more - it would probably make more sense to switch the glossy and transparent shaders around so that a fac value of 1 corresponds to full glossy reflection and 0 to no reflection.

1 Like

BTW, if a glass shader seems overly reflective, the reason can be flipped normals on the object.

Left: correct normals / right: flipped normals

1 Like