With small radiuses I don't see much difference using 90 degre(except brightness)... With larger radiuses it will start smooth, but as radius decreases, low frequency noise from photons appears anyway - which is problematic cause if you use like 75K photons and at pass 300 you start seeing small spots, those 75K photons per 4 passes is then too slow to clear them..
So one way or another you need a lot of photons and you need them at very small radius otherwise performance goes bad(and edges dark) since the initial smoothness is replaced and becoming forever noisy with those few photons per scene (it might work in a small scale scene though).
But I think those round/curved surfaces render "OK" with very small radius and a LOT of photons, it is still slow on the first sight, but I'm doing 5M photons per 4 passes so the noise level is close to equal, while I also get small curved surfaces covered properly and at the same time large sharp shaped caustics
this is 0.001 lookup and minradius (using 90 degree normalangle boost brightness some more but convergence is ~same as 10) and 5M photons It is still apparent that floor is getting better caustics but even at 55 passes you start seeing caustics shapes on the sphere (instead of low frequency noise) but I'm a lot happier with what I'm seeing already with few parameters to control. Maybe curved/round surface is harder to render for some other reason, I don't know...
I'm afraid of two things if you use this for all the caustics...Dade wrote: ↑Fri Sep 27, 2019 9:12 amIt is one of the 2 options:
1) uses the cache like now, both on CPU and GPU. Indeed this can be fast but the periodic update at each passes is detrimental for GPUs because they have to wait for the new pass data from the CPU. This slow down the renderings at low resolution (i.e. a lot of pass updates) but should have no real impact at higher resolutions where instead the GPU speed up will help a lot.
Remember that caustic cache look up is done with eye paths so it can be done on GPUs.
2) Have a dedicate process for SDS rendering on the CPU with a static partition of CPU with light tracing. However having a static partition (like 50% + 50%) isn't very elegant and can be sub-optimal.
At the moment I'm think more to #1 solution.
1. fireflies, no matter how hard I try or if I shoot 500 000 000 photons (100 000 000 actually cast as console reported) I always get few isolated spots here and there - this doesn't happen with lighttracing and it seems it's a problem that appears with distand reflected caustics (oblect closer to water will have clear reflected caustics but further away it's fireflies always)
2. Vram, will I still be able to render 5M+ photons per few passes with gpu without sacrificing a lot of Vram?