100,000 samples and there's stil noise. Any way to improve this?

I’m trying to render this scene for an animation with Cycles, but no matter what I try, there doesn’t seem to be a way to get rid of all noise. Even in the above animation that was rendered with an insane overkill 100,000 samples per frame, plus denoising, there’s still flickering in most of the image…

I’ve tried denoising the individual render passes separately and then combining them, but that didn’t make a difference, portals for the windows, replacing mesh lights with blender ones etc. and I just can’t get it to work…

Is there a way to improve this without drastically changing the look of the scene? Is it ever possible to render a dark interior without noise?

Any help would be much appreciated!

I have a way to make an interior scene render way faster and cleaner. You have to bake the diffuse lighting, then use it as diffuse rays in the materials using the light path node.

Explanation:

1- We start with a very noisy interior. I have used 2 materials, to better showcase how this works.

2- Let’s make sure the room is unwrapped and ready to receive a bake. If there already are textures, create a second UV set on those objects for the bake. I suggest doing this trick only on the walls, floor and ceiling to start with, as the small objects will have less of an impact.

3- Create a new image which will be used to bake the lighting. Make it a 32-bit image, so it can capture the full range of values. Don’t connect it yet, but make sure it’s present and selected into every material you choose to bake.
step_3

4- Do a full combined bake on these objects. It doesn’t need to have many samples (I use 32 here), because it won’t be directly visible in the final result.

5- Here is what the bake looks like. It’s ugly, but it doesn’t need to be better than this.

6- Now, we are going to plug it the right way. In every material that was baked, add this setup at the end of the node tree. The diffuse rays now perceive the walls as flat, pre-rendered emissives.

7- Deactivate “multiple importance sampling” on the materials that use the trick. It’s less noisy without, because we aren’t trying to actually sample the walls as if they were light sources.

Here is the final result. Same number of samples as the first image, looks cleaner and took less time to render.

The advantages of using the lightmap in an indirect way is that you hide the flaws of the bake. Also, it allows the direct light to change a little without causing much of a problem.

5 Likes

The obvious answer to this question seems difficult.
But if you refer to the link below, it will be helpful to solve the problem.
Reducing Noise — Blender Manual

The Light Portals and Clamp Fireflies settings are the most popular.
I think the newly added Path Guidance will also be helpful.

1 Like

Huh, that’s actually a really smart idea, and thank you for the thorough explanation! After trying out though on the main surfaces of the scene, it didn’t actually lead to a very noticable improvement in noise, and there were a few relatively major visual changes with some areas being darker/lighter than they should be.

I don’t know if maybe I just didn’t do it on enough surfaces, or did it wrong, but I think in the end I’ll probably just have to accept that there will always be some flickering, and get on with life :sweat_smile:

Thank you for the advice anyway, I’m sure it’ll come in handy at some point in the future!

@oo_1942 Thanks for the link, unfortunately, I already went through all of the guidance on that page, and none of it made a very big difference to the final noise level :(. I did also try path guiding, but since it’s only on the CPU, it meant that overall there was a higher noise level in the same time when compared to just rendering without path guiding on the GPU…

Thanks for your help anyway, I think one last thing I might try is rendering at 2x resolution and then crunching it down later, which should make it less noticeable, just at the cost of 4x the render times :smiling_face_with_tear:

2 Likes

If you render at extra resolution, you can often lower the quality so it takes the same amount of time as before. What matters is having the same total number of rays. 4x the rendered area means you can divide the samples by 4 (double res means 4x the area). You will have the same number of rays, they simply will be spread over a greater number of pixels, which the denoiser can use.


There are a few things I would like to ask.

  • Do the lanterns have glass, and if yes, does that glass use the shadow trick?

  • Are there light sources outdoors or in other rooms that are hidden from the render? If yes, maybe try deactivating them.

  • Does the volumetric fire generate light directly? if yes, that would be a problem. You should remove the fire’s diffuse and shadow visibilities and instead use a point light.

1 Like

This may or may not help but here’s an old trick for noisy dark scenes. Turn up the brightness of the light sources so the dark areas aren’t really dark. Then lower the exposure on camera settings or do something in post processing to re-darken it.

1 Like

Or just enable this.

1 Like

I played the video slowly and watched it.
The overall noise seems to be normal.

It is not known whether the noise that does not disappear in the marked area is a matter of lighting or material.

I had a similar problem in the past…
I remember it as noise caused by the material.

I felt that the sparkle generated by the noise was similar to the lighting of the firewood, but it seems to be a change due to the noise pattern.

1 Like

That was it! The models are all imported from Polyhaven and I didn’t think to change out the default glass material, but doing so eliminated the noise in the majority of the image almost entirely! The fire was just some emissive mesh planes, but I switched that out for a point light like you suggested as well, that helped a little as well!

@Roken Thanks for the suggestion, but that was already enabled, as far as I know that just stops artefacts where it appears that the noise doesn’t change between moving frames, which in some cases can make flickering worse.

@Splododyne That was also something I was considering, but luckily just using proper lights fixed it, thanks for the idea though!

This is the raw output now, without denoising, rendered in the same amount of time as a frame from the original clip (It’s a bit dark because it doesn’t have any of the compositing on it):

With denoising it’s pretty much perfect, and I think that any flickering that remains should be negligible.

Thanks very much for everyone’s help, this has just saved me a ton of time!

1 Like

To be honest, I’m really not sure what’s causing that weird shape, I’ve played about a bit, and it seems to just be caused by the angle of the mesh and the light. I’ll try moving things about a bit and see if I can get it to look a bit better…

I think that the small fireflies that you highlighted were just caused by the material having a very strong normal map that caused small parts to reflect…

1 Like