I am trying to build a glass shader for a glass volume material and I want

  • a photorealistic image of the glass object
  • the caustics good enough
  • correct color of the shadows of the glass object

Here are some setups with a blue coloured Suzanne I tried.

First a standard glass shader

enter image description here

It is clear that it does not work. Next the Tricky Glass node setup like in this post How to illuminate the darkness inside glass objects in Cycles?

enter image description here

This is nice for window glass etc but does not work when caustics is involved. Next one, I tried a setup of CynicatPro (PBR Glass Shader for Surface and Volume Absorption for Volume)

enter image description here

No Caustics. So next experiment .... I added the fake caustics like in this article http://urchn.org/post/fake-caustics-in-cycles to the Tricky Glass setup and also added Volume Absorption

enter image description here

Now we have a coloured object, coloured shadows and caustics, but is this material correct ? This was the setup of the material.

enter image description here

To be honest I am not sure if I did this right. Any comments ??

The last setup I tried was much alike the previous one but now I inserted the PBR Glass setup of CynicatPro. With this setup I hope to have a correct representation of the coloured glass object and the shadows/caustics in place.

enter image description here

This was the Node setup of the PBR experiment:

enter image description here

As understanding and creating complex materials is still very slippery grounds for me I am very interested in your feedback and suggestions. So ... what about the results ? Especially the last two experiments. Could you give feedback on my node setups (especially the two last ones) ? IF you think I am totally wrong what would be your setup ? FYI, I think the last setup is the best one. And you ?


  • $\begingroup$ I'm not very skilled for these aspects, but you should enable caustics in the light path section of the render panel. $\endgroup$ – lemon Mar 23 '17 at 17:03
  • $\begingroup$ No I don't think so. If I turn it on Caustics then I let Cycles do the Caustics and I want the caustics to be handled in the node setup. The standard Caustics generates a lot of fireflies. $\endgroup$ – Old Man Mar 23 '17 at 17:14
  • 1
    $\begingroup$ Off or on... for the simple glass shader, certainly on. For the others, I don't know $\endgroup$ – lemon Mar 23 '17 at 17:15
  • $\begingroup$ Yes, maybe I should set it Off when it is done in the node setup and set it On when it has to be done by Cycles. But since the standard caustics produces a lot of fireflies I was looking for other solutions $\endgroup$ – Old Man Mar 23 '17 at 17:17
  • $\begingroup$ You want something like this: blendermarket.com/products/…? $\endgroup$ – Jaroslav Jerryno Novotny Mar 23 '17 at 17:20

You're getting a glow because you're adding two transparent BSDFs, so transmitted light is getting doubled. If you want transparent tint with the fake caustics, you would just multiply the transparent color and the fake caustics mask.

However, normally you wouldn't want to apply any color tint to the transparent BSDF, just the fake caustics. The volume absorption shader will take care of tinting the fake caustics. You can fix both of those node setups by just deleting the add shader and the transparent BSDF connected to it.

Adding color to any surface shader represents a color change that happens at the surface, while the interior is clear. This is usually not the case with glass unless the surface has been covered by a transparent paint. Normally the color is within the glass and the surface is clear, so all color should be in the volume shader.

  • $\begingroup$ ok. My original set up was like you suggest but I thought the shadows were not tinted. Thanks. I will edit my question with your suggestions and re-submit. $\endgroup$ – Old Man Mar 23 '17 at 16:52
  • $\begingroup$ I think there was also an another error in my last setup. $\endgroup$ – Old Man Mar 23 '17 at 23:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.