Noise when render with glass material

Hi everyone! I’m new :smiley:


I have a problem with my glass render. I render 2 img above with the same setting.
The first one without the glass. It looks very clear. But the second one looks very noise.
I try to change the node setting for this glass or render setting but the result is still the same…

I try to make the result like this!

And one more thing. The reflection looks not good. It not be the same with my reference…


Please help me out! thanks a lot!

here is my blend file.
islan_renderNoise.blend (2.5 MB)

1 Like

This the result I got after optimizing the scene:


islan_renderNoise - adjusted.blend (2.6 MB)

I was able to clear most of the extra noise by using the ray depth attribute on the light path node to switch to the transparent BSDF after the transmission and reflection rays move through the surface once. However, this trick requires you to adjust the ray depth value when the glass is behind other glass objects.

Don’t clamp the direct light. Clamping the direct light with a really high number doesn’t do anything anyway. Most of the noise is in the indirect light, so I clamped indirect by a reasonable amount (it didn’t remove much noise). I also turned the denoiser on for the indirect glossy and transmission passes.

They say smaller lights can produce more noise, so I made the sun lamp a little bigger. However, I couldn’t make the reflections for the lights look better. I recommend adjusting this in gimp or photoshop.

The shadow and highlights filter might be able to produce the look you want. If that doesn’t work for you, then try duplicating the layer, setting it to add mode, isolating the highlights with a mask, and adjusting the opacity until it looks the way you want. Here’s an example:


less noise - highlight adjustment.xcf (739.2 KB)

And finally, I set the max and min bounces to 3. The picture looks mostly the same, but now renders just a little faster.

2 Likes

@zanzio Thanks for your detail advise.
I have tried your way before. I agree that way can eliminate the noise but it made my objective refraction.

Do you have another way can do eliminating the noise and keep my objective shape as original either? Thanks!

Have you tried using the denoiser with your original material? The results aren’t bad. Other than that you could try adjusting the IOR on the shader and using the trick anyway. There is still some distortion, but not too much. Here’s what that looks like:

You could also try building a glass shader that doesn’t have refraction (you might want to make the glass thin). It looks like this:

And finally you could try using the compositor to blur the noisy render passes. The pass with the most noise in this render was the diffuse indirect, so I used the bilateral blur node on it. I also brightened up the glossy direct pass so that the reflections were stronger. This is what it looks like:

Oh and I also increased the bounces to 5 and the samples to 384. Here is the blend file:islan_renderNoise - adjusted2.blend (2.5 MB)

2 Likes

@zanzio You are awesome. The result you made exactly what I want to do. I still don’t know about compositor. How to blur the reflection…, but I can learn from your setting. Thanks a lot!!!

Actually, this was the first time I used the compositor’s bilateral blur node on anything. I just knew people used it to reduce noise. I had to look up how to use it in the blender manual. Here is the page for it.

2 Likes

BTW, one of the reasons for the extreme refractive effects is the size of your objects. That glass dome is more than 14 meters(!) tall and has a corresponding thickness. This will of course have influence on the strength of the involved optical effects.

While Blender is rather size-agnostic when it comes to modeling, rendering in Cycles isn’t.

1 Like

Oh, I see. I will reduce the glass dome size. Thanks for your feedback!

Hey, fun concept, let me give a few pointers I’ve learnt from working on a feature film with blender.

Sampling

I’ve done many many tests in this area, the best place I’ve found to start is with “Branched Path Tracing”, “Path Tracing” while faster if you are using the same amount of samples, is significantly noisier than “Branched Path Tracing”. Example, one render with your scene, “Branched Path Tracing” at 32 squared samples (I prefer using squared samples, but not really necessary), took about 1 min 41 seconds, “Path Tracing” at the same samples only took 46 seconds but looks incredibly noisy, even if I double the samples to 64 squared, the render-times are now 3 mins and the 32 sample 1min 41sec “Branched Path Tracing” STILL looks cleaner.

ALWAYS USE "Branched Path Tracing"

Next, as mentioned by Ikari, you need to scale your scene down, I scaled your scene down to 10% it’s original size, this helped with the refraction being less crazy. (I also suggest an IOR of 1.55 for glass which is the “proper” ior)

There are some better glass setups I could suggest, mainly using a glass shader and a transparent shader plugged into a mix shader (kinda like how you have it now) but use a light path node and plug the shadows into the factor.

bunch of other small things, don’t use Caustics (too noisy currently in cycles), your light sampling threshold is way too high (try 0.05), clamp settings I commonly use is 10 for direct and 2 for indirect. For the most part that will get you there, there are some other minor things but it’s difficult to go into detail as I’m currently at work and can’t upload images and such.

As for why the house is noisy with the glass as opposed to without, when the rays are entering the glass they are becoming a single “transmission” ray, so your ray could is reduced a lot through the glass. One way to specifically target this is in the branched path tracing just bump the transmission rays to 2, but with the settings I suggested above you should be fine without that.

Hope that helps

1 Like

As mentioned, the main source of noise here comes from refraction caustics letting through a lot of light. In some cases, that is a requirement and I don’t know how to reduce noise in this case (I can’t use BPT due crashes) other than bumping up samples.

Your wood object is wrong, the normals are pointing the wrong way. And of course the size is off.

The way I usually tackle something like this, is to fake it. However, the fake shown here will only work nicely if the glass object is thin. For solid walled glass you’ll get a double edge; this might work for panes, but not in this case.

The first setup is a simple thin glass material with only basic colors and only transparency based, although shadows will also be fresnel based:

The second setup (which is used in the render below) is an advanced thin glass material with tons of controls; glossy coating color (here white because no coating), reflection and refraction roughness, transparency/translucency and TR-Based/Refraction-Based transmissions, also with basic fresnel based shadows:

This is the result, where I reduced the lighting (HDR and point light only), rescaled (and scale applied). Again, inner part of glass was removed to make it “thin glass” - if you want to experiment with walled glass, use a solidify modifier instead:

I also turned off refraction caustics and clamping. Uhm, although I just noticed (after render) you use a Light Sampling Threshold of 1.0, you should probably stick with default 0.01.

1 Like

@Goranimation @CarlG Thanks for everything you showed me here. I have learnt that much from you guys. But actually I am still not happy with my result right now, I am such a new user on blender and still sharping my skills based on the the suggestion of yours. Thanks all!

Hi @zanzio!
I working on your file, try to learn from it. But I don’t know how can you blur the reflection of this glass.
Can you explain it for me? thanks!

Blurring is controlled by the glossy (or glass) roughness for all modes except sharp. In my setup you have separate controls for reflection roughness (more plastic appearance) and refraction roughness (as long as there is some refraction shading enabled).

1 Like

Oh, I see. I got it :smiley:

@zanzio @CarlG Hi guys!
How can I combine these layer?

oh, sorry. I missunderstand it. I forgot another pass :smiley:
47%20PM

The image output has all the passes merged. You have to have blender deliver all the passes you need then combine them in the right order.

The direct pass is added to the indirect, then multiplied by the color pass for each material type. You then add each type of pass together to make the final image:
compositing%20passes

Here is the blender manual entry for it.

You don’t need to use the transmission pass unless your material uses either the glass or refraction shaders. In the example I uploaded, I just mixed the transparent shader with the glossy shader, so my render noise was just in the glossy indirect pass.

I also need to mention that the bilateral blur doesn’t work well without an image for the determinator. The manual entry for it says that you should use the mix node (set it to “add” mode) to add a little of the Z pass to the normal pass (set the factor to .1 or .2) and use that for the determinator:

So you’ll need to deliver the normal and Z passes in addition to the direct, indirect, and color passes.

The render looks better when you only blur the noisiest passes instead of the combined image output like in that example. Just check each of the passes for the materials with a viewer node and use that bilateral blur setup to blur each indirect pass that has too much noise.

Hi Justin,
Something like this ?

Thanks

yup, that’s the setup I use, though I usually only plug the shadow ray in, I don’t want to remove too many rays from the glass.

Also, glass has an IOR of 1.55