Could the adaptive sampling strategy skips the beginning amount of samples and take affect only when the training phase’s been done? So that we could have the best of both tech.
You can already set the number of samples that will on the screen before the adaptive sampling starts.
However, the number of minimum samples you can set is capped at 4096 (while the training can be active for the entire render). If your scene produces a lot of fireflies in general, it may be better just to not have adaptive sampling active.
Oh thanks for the tip! Is that the “Min Samples” option?
Yes, that is where you can set the minimum samples (as otherwise the value used is automatic, which might be too low).
I’ll test it today, not sure if it’s better than turning off adaptive sampling completely.
edit
500 total samples, 500 training samples
no noise threshold, 17min12s,
noise threshold 0.01, min samples 250, 17min 14s,
Note that 500 samples is not enough to sample all the caustics. But images without adaptive sampling have better caustics in most places.
Just a very simplistic test with one strong area light, an icosphere and a plane. I wanted to see how many caustics i could get. I used the Principled V2 shader to make the glass im not sure if it has a different BSDF for how it handles glass vs the old Principled.
Note i set the PG to Directional Quad Tree and surface guiding to 1.00. No filter glossy, no light clamping and i did set the training samples to 0 so it should have been training through the entire 12000 samples. Denoiser on. AGX color transform and color balance node for more contrast.
I know they say its not a caustics solver, but i think it has the potential to get there…
I think the scene does need to be tried in luxrender for a comparison.
How do you access those functions. They used to be visible in earlier branch builds, but in the last build of Master I downloaded - those options are hidden by default (and don’t appear even if you select “experimental”).
Have they been re-activated in the latest builds?
I think you may also need to activate the development extras in the options
If you do this, then you get this extra menu in the options
where you can activate a bunch of experimental features
I do have developer extras enabled in preferences, then in experiemntal i enable things like cycles debug, i think maybe its that.
Yep - got it - thanks
I have tried similar setups to yours - but I don’t get anything like the same result in terms of sharp clear caustics.
Are you able to share your scene so I can do a direct comparison?
Cheers
yes, also note that i was using the principled V2 branch.
crystal caustics.blend (942.6 KB)
This should do the trick, you may need more than 12K samples but 12K should give the similar or same result.
What CPU do you have? I think i ran this render for about an hr.
I tried to run a test comparison between luxcore Bdir and cycles path guiding. having the area light a 1000w in luxcore resulted in a white out. I had to reduce it to 10watts and still had to reduce the exposure a lot to stop white out, and after 1200 samples in 13 mins, which is 10 X less samples and roughly the same rendering speed as cycles here is the result. Luxcore found probably every caustic in the book very quickly.
The bottom result is Cycles. 12K samples as shown earlier.
Not sure why the crystal is different as of yet, but i did use the luxrender glass node so theres probably some internal differences in how it calculates.
Update im running another test and i can get a more accurate comparison with luxrenders area light set to 2 degrees beam width rather than cycles 5.7 degree… So i guess theres a difference in the conversion.
Here is luxrender metropolis sampler 5000K samples 1 hr render. The glass shader was set to roughness of 0.002 (maybe too rough but using 0 roughness made it black) and the 2 degree light( 2.85 might be closer).
With light tracing luxcore is able to find way more caustics.
On a positive note somehow the crystal icosphere in the cycles render looks aesthetically better than those in luxrender…
is 2.85 maybe an exact match? Might be opening angle vs. angle from axis to side of a cone, which would be half the size
I’ve been doing various render tests and this path guiding once complete is going to be a game changer. As it is now, the denoising needs to be fixed but without the denoiser my CPU is already mostly beating my GPU at accuracy of caustics and noise level, even though my GPU is roughly 10X the horsepower.
Once path guiding is production ready and works on the GPU its going to be an incredible at least 10X render speedup i cant wait. It they can combine it with manifold next event caustics and not have a massive slowdown in general render speed it would be an amazing bonus, and combined with principled V2 shader we will see some fantastic new renders of things like glass, soap bubbles, velvet, silk and more at higher quality than ever before on cycles. No longer are other render engines going to be clearly ahead of cycles.
As I understand it - path guiding is only guiding some of the paths it could. The devs are taking baby steps to ensure the paths it currently guides are stable before adding additional paths.
Path guiding is already a game changer in some situations - it can only get better from here on in. We also have many lights sampling coming soon too.
This just means its going to be more of a game changer than i can currently imagine, once its guiding all paths…
I tried the many lgihts sampling branch but got crashes every time with cuda error something about volume integrator… But im sure in time they will fix this and also integrate it with the other techniques. I predict 2023 will be a great year for cycles.
Here are some examples of just how much of a game changer path guiding and many light sampling will be - especially when used together (I downloaded the many light sampling branch to conduct these experiments as it includes the path guiding additions).
Vanilla Cycles - no clamping, no filter glossy, full GI preset
With Many Light Sampling enabled (sampling all lights)
The roof is a bit odd - but it has funky material that might not play well with many light sampling. I need to figure it out - but the overall noise level is much lower, with fewer bright fireflies.
Each image is 100 samples.
With Just Path Guiding enabled (many light sampling turned off).
With both Path Guiding and Many Light Sampling active
Again this is just 100 samples - the PG + MLS has much lower noise levels.
One of the reasons it is game changing is this. Using the debug settings, you can set OpenPGL to become a bit more of a caustics solver for scenes that tend to generate a large number of fireflies. I do not know why Path Guiding does not have these under an ‘advanced’ tab for power users instead (as they actually work better now, in terms of maintaining correctness, than in the first test build).
Also, that there are bugs with many-lights sampling is expected since to make it ‘just work’ with anything you throw at it is a rather tough nut to crack. It may be a little while yet.