Adaptive sampling improvements

Discussion related to the Engine functionality, implementations and API.
provisory
Posts: 224
Joined: Wed Aug 01, 2018 4:26 pm

Re: Adaptive sampling improvements

Post by provisory » Tue Apr 16, 2019 5:18 pm

Something happened with Warmup and Test Step Samples in the daily build?
The SAMPLECOUNT pass starts to change only after about 70 samples now, even if I set 1 or 5 for both.

provisory
Posts: 224
Joined: Wed Aug 01, 2018 4:26 pm

Re: Adaptive sampling improvements

Post by provisory » Tue Apr 16, 2019 5:20 pm

FarbigeWelt wrote:
Tue Apr 16, 2019 9:38 am
What if Sobol acts contrary, I mean adaptive 0.0 in blendluxcore
pushes Sobol to be perfectly adaptive and vice a versa?
This is unlikely because the samplecount pass shows the effect of adaptivity.

User avatar
alpistinho
Developer
Developer
Posts: 157
Joined: Thu Jul 05, 2018 11:38 pm
Location: Rio de Janeiro

Re: Adaptive sampling improvements

Post by alpistinho » Tue Apr 16, 2019 5:25 pm

Yes the parameter has been changed and blendluxcore has not been changed yet.

You could export the scene, change the parameter and render it on luxcoreui. I will try to update the SDL page today
Support LuxCoreRender project with salts and bounties

User avatar
B.Y.O.B.
Developer
Developer
Posts: 2971
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: Adaptive sampling improvements

Post by B.Y.O.B. » Tue Apr 16, 2019 5:28 pm

Note: as an end user, I would wait a few days before trying to test this new stuff, it's not in a usable state yet. As alpistinho said, the Blender addon was not updated to use the new properties yet, for example.
Support LuxCoreRender project with salts and bounties

provisory
Posts: 224
Joined: Wed Aug 01, 2018 4:26 pm

Re: Adaptive sampling improvements

Post by provisory » Tue Apr 16, 2019 5:35 pm

alpistinho wrote:
Tue Apr 16, 2019 5:25 pm
Yes the parameter has been changed and blendluxcore has not been changed yet.
I see, thanks!
If you can, give Random a try just to confirm my findings.
Unfortunately I have a constant lack of time. (Work + family)
Would it help you if I uploaded the scene with the lamp shade hidden?

User avatar
alpistinho
Developer
Developer
Posts: 157
Joined: Thu Jul 05, 2018 11:38 pm
Location: Rio de Janeiro

Re: Adaptive sampling improvements

Post by alpistinho » Tue Apr 16, 2019 5:39 pm

Sure,

Any help is welcome.
But I am almost sure that what is not working is the Sobol sampler, and not the adaptivity

Thanks
Support LuxCoreRender project with salts and bounties

provisory
Posts: 224
Joined: Wed Aug 01, 2018 4:26 pm

Re: Adaptive sampling improvements

Post by provisory » Tue Apr 16, 2019 5:44 pm

B.Y.O.B. wrote:
Tue Apr 16, 2019 5:28 pm
Note: as an end user, I would wait a few days before trying to test this new stuff, it's not in a usable state yet. As alpistinho said, the Blender addon was not updated to use the new properties yet, for example.
3d is just a hobby for me, and I try to help you as much as I can.

provisory
Posts: 224
Joined: Wed Aug 01, 2018 4:26 pm

Re: Adaptive sampling improvements

Post by provisory » Tue Apr 16, 2019 5:52 pm

Here's the file with Null (Transparent) material set to the lamp shade.
Attachments
ElskaLamp-adaptivity2.blend
(4.37 MiB) Downloaded 24 times

kintuX
Posts: 471
Joined: Wed Jan 10, 2018 2:37 am

Re: Adaptive sampling improvements

Post by kintuX » Tue Apr 16, 2019 10:02 pm

000CPU_sobol-VS-random(256s).jpg
Sampler (left - right): Sobol - VS - Random
Adaptive Strength (top - bottom): 0.00, 0.50, 0.95
Device: CPU
Engine: Path
Halt Condition: Samples: 256

Scene posted here (PhotonGI Cache thread)
If there's anything else i can do... ;)
PS
(i'll may be late, am getting eyes examined & will loose sight for some time, week at most) 8-)
Attachments
ASamplerTests.7z
(667.85 KiB) Downloaded 25 times

User avatar
alpistinho
Developer
Developer
Posts: 157
Joined: Thu Jul 05, 2018 11:38 pm
Location: Rio de Janeiro

Re: Adaptive sampling improvements

Post by alpistinho » Wed Apr 17, 2019 12:06 am

Dade wrote:
Wed Mar 06, 2019 11:09 pm
There is one aspect of Random/Sobol samplers you could look into: the adaptive aspect. For instance, one part to improve is that they are currently skipping samples instead of just progressing slower on some (already converged) pixel. The current advantage is that there is one single global "pass" instead of a "pass" for each pixel. It saves some ram but it is pretty bad for sampling.
You have wrote that at the time and I understand the rationale that the sobol distribution will only preserve its low discrepancy properties for every pixel if each one has it's own pass variable.

We've implemented this and I as far as I've seen until today, the code looks right.
Each pixel is following correctly it's own variable
Running it single threaded makes no difference

But the sampling points are not looking like Sobol when using the adaptivity
Figure_1.png
And it looks much better when the strength is set to zero
Figure_1-1.png
There's something eluding me here, and it is probably something stupid
Support LuxCoreRender project with salts and bounties

Post Reply