PhotonGI caustic cache re-factoring

Discussion related to the Engine functionality, implementations and API.
User avatar
lacilaci
Donor
Posts: 1814
Joined: Fri May 04, 2018 5:16 am

Re: PhotonGI caustic cache re-factoring

Post by lacilaci » Fri Nov 01, 2019 12:21 pm

epilectrolytics wrote:
Fri Nov 01, 2019 12:19 pm
lacilaci wrote:
Fri Nov 01, 2019 12:14 pm
What is samples per step?
That's the cache update period (path sample count between updates).
well then the "cache update period" or something like "compute each (#pass)" name could be a bit better maybe. But I don't know.

User avatar
epilectrolytics
Donor
Posts: 652
Joined: Thu Oct 04, 2018 6:06 am

PGI indirect + caustic incompatibility

Post by epilectrolytics » Sun Nov 03, 2019 4:44 pm

I'm trying to use indirect together with caustic (Hybrid+SDS) cache but it won't work.
When both are activated, no indirect cache is written and the render looks like direct light only.
Screenshot.jpg
Now it is possible to disable caustic cache, render and save persistent indirect cache and then activate caustic cache again and render from saved cache file.
This works for indirect light but the caustics are not updated any more as if persistent indirect cache somehow prohibits caustic cache update.

Are those caches properly decoupled in the persistent file?
I remember that in the original version they were stored together.
Now with vertex merging there is no reason to store a caustic cache file any more so it should be excluded from the persistent file and be generated during rendering independently.
Attachments
concreteC.blend.zip
(271.53 KiB) Downloaded 25 times

User avatar
Dade
Developer
Posts: 3694
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: PGI indirect + caustic incompatibility

Post by Dade » Mon Nov 04, 2019 9:45 am

epilectrolytics wrote:
Sun Nov 03, 2019 4:44 pm
I'm trying to use indirect together with caustic (Hybrid+SDS) cache but it won't work.
When both are activated, no indirect cache is written and the render looks like direct light only.
I should have fixed this problem.
epilectrolytics wrote:
Sun Nov 03, 2019 4:44 pm
This works for indirect light but the caustics are not updated any more as if persistent indirect cache somehow prohibits caustic cache update.
I should have fixed this problem too (the update parameter wasn't saved).
Support LuxCoreRender project with salts and bounties

User avatar
epilectrolytics
Donor
Posts: 652
Joined: Thu Oct 04, 2018 6:06 am

Re: PGI indirect + caustic incompatibility

Post by epilectrolytics » Mon Nov 04, 2019 3:27 pm

Dade wrote:
Mon Nov 04, 2019 9:45 am
I should have fixed this problem too (the update parameter wasn't saved).
Yep, now everything works, thanks!

Only when reading from persistent file with different settings than it was written with (enabled/disabled caches) I get weird results but that is to be expected.

User avatar
Dade
Developer
Posts: 3694
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: PGI indirect + caustic incompatibility

Post by Dade » Mon Nov 04, 2019 3:59 pm

epilectrolytics wrote:
Mon Nov 04, 2019 3:27 pm
Only when reading from persistent file with different settings than it was written with (enabled/disabled caches) I get weird results but that is to be expected.
Yes, you could literally use a cache file with a totally different scene and get some very very strange result but it is expected. It could be used for some mind blowing VFX but it would be a bit extreme :mrgreen:
Support LuxCoreRender project with salts and bounties

User avatar
anotherbobby
Posts: 1
Joined: Tue Sep 03, 2019 10:26 am

Re: PhotonGI caustic cache re-factoring

Post by anotherbobby » Sun Dec 08, 2019 1:51 pm

kintuX wrote:
Tue Oct 01, 2019 10:46 pm
It really feels good, better than PSR. 8-)
Took latest daily for a spin. Nothing special, pool test scene with few changes. Didn't found any problems. :?

pooltester.jpg

LuxCore Scene: pooltester.7z

@ 2040x1080px went up to 2200 samples in 900sec (15min).

Q: Is there an option to use OIDN within LuxCoreUI?
Hi,
Tried to convert this scene into Blender 2.82 Alpha, LuxCore 2.3 Alpha0
Attachments
using volume tinted blue
using volume tinted blue
without volume
without volume
pool_tester.zip
(1.17 MiB) Downloaded 27 times

User avatar
epilectrolytics
Donor
Posts: 652
Joined: Thu Oct 04, 2018 6:06 am

Re: PhotonGI caustic cache re-factoring

Post by epilectrolytics » Sun Dec 08, 2019 7:27 pm

anotherbobby wrote:
Sun Dec 08, 2019 1:51 pm
Hi,
Tried to convert this scene into Blender 2.82 Alpha, LuxCore 2.3 Alpha0
Thanks, really a great demo scene by kintuX!

User avatar
epilectrolytics
Donor
Posts: 652
Joined: Thu Oct 04, 2018 6:06 am

pool animation

Post by epilectrolytics » Wed Dec 11, 2019 5:21 pm

And here is an animation (without dispersion).
Took 5min48s per frame on two RTX 2070 (1000 samples + OIDN).

That means complete caustics with SDS can now be animated in LuxCore which is totally awesome!

The old firefly problem is still there (look at the water in the shadow), not much of a problem in this dynamic setting but still scenes like the wallpaper scene take very long to converge.
Clamping is no good option as it diminishes the bright parts of the caustics as well.

But this is a minor issue, caustic cache is already well usable as it is.

I used a displacement modifyer with an upwards moving noise texture for the ripples.
Once the displacement already implemented in Luxcore is exposed in Blender this could be done within the Luxcore material system.

Fox
Posts: 376
Joined: Sat Mar 31, 2018 11:17 am

Re: PhotonGI caustic cache re-factoring

Post by Fox » Fri Jan 17, 2020 6:40 am

Was studying the caustic cache, thought i share the results.
Caustic cache sss vol tests.jpg

User avatar
lacilaci
Donor
Posts: 1814
Joined: Fri May 04, 2018 5:16 am

Re: PhotonGI caustic cache re-factoring

Post by lacilaci » Fri Jan 17, 2020 10:23 am

Oh god, volumes inside glass are absolutely horrible in luxcore (maybe in other renderers too) there needs to be a "convincing" looking way of handling such situations.
Right we have a fix for glass (shadow color), but roughglass is dark(let's pray multiscatter ggx in future disney will fix this) and any liquid in glass will have a terrible time looking convincing.

there needs to be a cheap way for quick sss features like wax, skin, ice, juices in glass etc... Cause now we're setting up materials like a minute per object and you hit an sss problem with juice in glass and might as well try to buy rope to hang yourself on.

Post Reply