Isotropix Forums

Adaptive Sampling Question

General Discussion about Isotropix and CG related topics

Adaptive Sampling Question

Unread postby blazelet » Mon May 16, 2022 6:39 pm

Hello Isotropix and fans!

I have a question about adaptive sampling - just trying to ensure I understand what's actually happening.

This is what I believe is correct, please tell me if any of this is wrong :

When you use adaptive anti aliasing, by default it is applying 1 material sample and 1 light sample per aa sample, regardless of what your material samples are set to. So if I have a variance of .005, and min/max samples of 32/512 it will use 1 material sample and 1 light sample combined with 1 aa sample, between 32 and 512 times until it either hits that .005 target variance or runs out of attempts (512)

Shading oversampling changes this. With shading oversampling at 0%, it behaves like outlined above. At 100%, it actually takes your material / light samples into account and applies them PER aa sample. So then, if I have 16 material samples, all with material mults of 1x, then I am going to get 16 material samples of each lobe, per aa sample, until the variance is reached or the 512 max aa samples is reached (which will take a lot longer because now I've effectively increased the number of material rays by 1600%?)

My question, then, assuming this is correct - does it make sense to leave material samples at 1, shader oversampling at 100% ... so you still get 1 material sample per aa sample per lobe ... and then use the multiplier to specifically target lobes that are noisier?

So if I'm rendering a candle and metal holder, it would be much more efficient to do the above approach - Shader Oversampling 100%, 1 mat sample, and then to increase the material multipliers for lobes I see noise in. Perhaps 4x SSS for the wax, 2x Glossy reflection for the rough reflections, 0x rough transmission and volume samples as there shouldn't be a need, etc? That makes the best use of tracing resources?

Looking to understand this better, any input is appreciated!
Posts: 10
Joined: Sun Nov 10, 2019 6:37 am

Re: Adaptive Sampling Question

Unread postby sam » Tue May 17, 2022 9:02 pm

Hi there,

I guess you have you watched my video about this subject? ... emystified

That seems about right. So when you set 16 material samples + 16 light samples and shading oversampling to 100 % each refinement pass will have 16 MS + 16 LS (minimum because I'm not counting bounces etc...) so it's up to 512 (Camera max refinement passes) * (16 MS + 16 LS)

I know it can get very convoluted because for historical reasons the same interface manages fixed amount of samples, adaptive antialiasing, and shading oversampling. To be honest with you, I'm not super happy with it. It requires a too good understanding of how the path tracer works to be able to fine tune render settings to improve render times. But, that was really the best compromise we could have done without changing the whole rendering interface (integrator, materials and lights). That's the reason why we changed all of that in Angie. It is WAY more simple :)

So yeah, if you want to fully control manually (while benefiting from the noise threshold) what you suggest is what I would do (on the materials directly of course).

Just that catch is that if you have multiple lobes of the same types (multiple glossy for example) the actual number of samples allocated to them will be split across them using importance sampling. There's no oversampling between lobes of the same types. At least that's not directly possible. Hoping I'm making sense.
Sam Assadian
User avatar
Posts: 1830
Joined: Fri Jan 25, 2013 11:33 pm

Return to General Discussion