What happened to Scrambling Distance? It´s been used in Theory and it will help speed up rendering

OMG… Persistent Data is also important!

I have a scene with a preparation time of 25 to 30 minutes, with that I could improve animation rendering time A LOT!

This is something we need for set rendering:

Is there some problem or incompatibility because this has not been implemented? (maybe it´s just a matter of lack of time, IDK)

3 Likes

Also, I´m going to test scrambling and dithered sobol and post here results, but my firsts tests seem to be much better, at least for my scene.

But in general I agree, we could decide to have a correct render result, but could be awesome to decide to get an incorrect render result as long as the result is the intended one, and if we have limitations… we will have to live with them, but my test went from needed 1400 samples to being perfectly fine at 800 samples, from 1 hour 5 minutes (30 minutes translation) to 43 minutes (the same 30 minutes of translation)

This will save us TONS of headaches, even when it can produce some of them in some cases.

2 Likes

Is there any chance I can grab one of those (win) builds? I have an old theory build that lacks of dithered sobol

1 Like

I´m looking for one to share, but if someone could share one it will be very welcome :slight_smile:

I can´t find it, I was pretty sure that I saw one in BlenderArtists, but I can´t seem to be able to find it.

I can´t share the one I have right now because it was given to me by a friend and it has some other developed things that I cannot share :stuck_out_tongue:

So if someone can make a build with those two things, Dithered Sobol and Scrambling Distance, so more people can test it, it will be very welcome.

Cheers!

Ok, here is one with Scrambling Distance and Dithered Sobol!

@Bretch I will prepare the comparisons, but why is Dithered Sobold not present in Master, I understand the reasons given by @lukasstockner97 , while I disagree after testing those two features, I can´t find any risk in breaking anything, is like any other render engine value, you may have some settings that if you enable them it may do the render look funny… but then you disable it and everything is back to normal, it´s up to the user to loose some precission and gain some speed.

And when I refer to speed is not actual speed in achieving a defined number of samples, is getting less noise in the same number of samples, and probably the same render time (or at least similar).

Cheers!

6 Likes

Thanks for the build @JuanGea! I just did a test on a simple scene I’m working on, and I have to say I can’t see any glaring errors or mistakes. The images don’t look that different, if anything, using dithered sobol and scrambling distance gives a better render time.

Time: 11:04:78 - Sobol - Scrambling distance 1 - Denoiser off - 500 samples

Time: 11:02:55 - Dithered Sobol - Scrambling distance 0.1 - Denoiser off - 500 samples

Time: 10:53:03 - Dithered Sobol - Scrambling distance 0.02 - Denoiser off - 500 samples

EDIT: Forgot one image
Time: 10:05:36 - Dithered Sobol - Scrambling distance 0.02 - Denoiser off - 500 samples - Simplify AO bounces: 2


This one messes the reflections on the windows because of the AO simplify, but on an animated scene with motion blur where the main focus of attention is a character or a car no one will notice that in the back. Is clear here because there are other versions of the image to compare, but otherwise it wouldn’t be a problem.

I have to check with volumes and hair to see how bad it can get as Brecht mentioned, but so far I’m adding a big +1 to have this added in master. :slight_smile:

From what I’ve seen Scrambling Distance causes most trouble with geometry where one side has a lot of light and the other is supposed to be in darkness such as what happens with interiors for example. I suppose it has to do with some sort of simplification of the scene underneath but that’s for Lukas to explain maybe. He probably has somewhere but I couldn’t find it.

Also this render you made is probably super clean at 500 samples anyway.

Thanks @JulianPerez !!

Are you rendering with CPU or GPU?

Can you test the difference between Sobol + Scramble disabled (1.0) in GPU vs Dithered Sobol + Scramble at 0.2 with GPU?

Awesome tests!

@AdamPreisler I´ll test in an interior scene, but in any case, even if there are corner cases were this is not the best solution, we should have this in master as an advance setting, it´s like wanting to disable Simplify AO because it could break glass translucency… of course it can… but we should know how to work with this, and after a few tries, Scramble distance is something pretty intuitive, and if you can´t make it work then just don´t use it :slight_smile:

I´ll post my findings!

Cheers!

1 Like

Could Scrambling Distance just be put under an Unsupported features panel with an explanation why the feature is unsupported? It seems that Theory and a number of people are willing to take their chances and this would be a good compromise. There is already an Experimental features option.

2 Likes

This seems to be the best solution. Maybe put the option hidden under a collapsed menu named “Super experimental and dangerous settings! Just don’t use it!”
Maybe this could be a perfect place for other experimental and other “error trigger options”.

Or hide the option and make it only available with a particular python command, so this option isn’t visible to “regular users \ or beginners”.

Seems like the Scrambling distance is already developed and could be added easily to official release.
Why not give the option to the users who use blender and cycles on a professional and daily basis.

We render a lot of large Images and the option to use scrambling distance would be a big advantage in our render pipeline. Saving render time is significant, especially for people who want to use blender in a commercial environment.

I would like to have some imprecise renderings, but have less noise and can reduce denoising artifacts.

Please make it happen and give us the choice :slight_smile:

2 Likes

But this is not triggering any error… this is just an Advanced setting, if a new user wants to play with it… well he may understand what´s happening or not… but he will have to learn it, if the user wants to avoid advanced settings, just leave it disabled (at 1.0) and that´s it, and put the warning in the tooltip and/or in the documentation.

And the Dithered Sobol, I really don´t understand why this is not already in Master… the improvement on visual noise (preceived noise, I´m not talking about numbers here, but about artistic perception) it´s amazin! and there is one important thing, since the noise is a lot more uniform, the denoiser suffer A LOT less than with Sobol, and we get much more uniform surfaces and avoid the weird “cloud” effect.

5 Likes

This is ridiculous! It’s not more harmful than simplify AO or clamping.

2 Likes

Totally agree with you

Juan I just checked and realized those tests were done with GPU+CPU enabled, I’ll do some more renders tonight with GPU only and post my results as well. I’ll also try with an interior scene to see if there’s more visible errors as @AdamPreisler mentioned.

1 Like

@JulianPerez

Thanks! If you can do both, GPU only and CPU only :slight_smile:

And do some with 200 samples instead of 500 too, to compare noise levels at low sampling (at scrambling 0.02 may look bad with just 100 or 200 samples)

Thanks!

1 Like

Sure I’ll do the tests with less samples :+1:

1 Like

I tried yesterday the win compilation from @JuanGea with the BMW test and even upscaling to UHD resolution with half samples I rendered almost same quality using denoiser at .2, making usable even with 4 or 5 samples @32 bounces!

The Scrambling Distance and the Dithered Sobol are the two best performance features imho I’ve seen in Cycles in a while. This definitely helps to get cleaner renders in less time, making cycles usable with a decent frame rate through RTX like eevee will works in low-end desktops.

OFFTOPIC: Also the Optix Denoiser or DeepBlender AI Denoiser are a important feature to work with the Dithered Sobol and Scrambling Distance.

Im a bit busy this weekend but maybe I’ll do some test to publish here too.

i7 5700HQ - 16Gb RAM - GTX 960M - Win10 / Ubuntu
i7 950 - 24Gb RAM - GTX 1060 - Win10

1 Like

i’m doing some test with the SD only, here’s some gifs

Setting :
256 samples
full GI
Other are stock

256 samples
Limited GI
Other are stock

just to tell my thoughts, as other said we should have this feature in the experimental cycles and let decide the artist if he wants accuracy or speed, as like this feature the denoiser also create artifacts and it is in master, the simplefy AO also make the render biased and it is in master so, and to respond to brecht not all our scene have volume or hair, so i hope we can get this in master, same thoughts about the dithered sobol, those 2 feature combined with simplify are really great

i’m going to test an animated smoke sim next

EDIT : cuda gots an error when i try to render volumetric

1 Like

It´s not a volume related crash, as far as I can see it´s a smoke related crash, but it could be related to an old bug or something like that, because it´s an old build and it crash even without using scramble and/or DSobol.

The build is from 13th of August :stuck_out_tongue: pretty old and in a moment of continuous development that could have had some kind of smoke related bug :slight_smile:

I´m also testing it.

Cheers!