PhotonGI cache

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

Re: PhotonGI cache

Post by lacilaci » Fri Mar 15, 2019 1:09 pm

by the way... Is the difference between cache from cpu and opencl solved?

I'm asking because in my scene I solved it by deleting and relinking some objects (floorboards specificaly) But I don't know why it would matter at all..

The problematic part in this scene regarding overall performance is that there seems to be mostly a lot of direct light sampling (a lot of windows) which creates a lot of shadows and that noise is incredibly slow to resolve even though photongi makes rays/sample go down to 3 from +/-5.9...

EDIT: it seems that sigma other than 0 also seem to do something to cache, I had my matte material for wall using sigma of 6.3 for some reason and it definitely resulted in worse performance and worse looking cache too!

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

Re: PhotonGI cache

Post by Fox » Fri Mar 15, 2019 2:16 pm

Does PhotonGi support only clear volume type, no hetero?
Path VS PhotonGi.jpg

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

Re: PhotonGI cache

Post by Dade » Fri Mar 15, 2019 4:40 pm

Fox wrote:
Fri Mar 15, 2019 2:16 pm
Does PhotonGi support only clear volume type, no hetero?
Nope :?:
Support LuxCoreRender project with salts and bounties

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

Re: PhotonGI cache

Post by Fox » Fri Mar 15, 2019 5:00 pm

I probably need to go below 0.0001 radius and indirect.usagethresholdscale = 12000
Or maybe it's about the sampling efficiency, the small area takes about 90% render time, when i use linear random sampler with path-cpu, i see it's stuck there.

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

Re: PhotonGI cache

Post by Fox » Sun Mar 17, 2019 12:19 am

95% sure the hetero volume covers slow because the dense mesh has normals pointing in different directions and the triangles are very small.
Upped the visibility.maxsamplecount so high it took 1 hour, no help there.
Then i thought maybe photon path depth has to be higher than hetero volume max steps. Then i upped the path depth to 10500 and took photon number 200 times smaller. Did not work.
Very small radius like 0.00001 displayed error MLT can't find usable light sources.
The numbers under the clear glass come out, slow, but they come. The mesh is not ideal.

But the clear glass type on camera lens with dispersion enabled seems to work so well.

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

Re: PhotonGI cache

Post by lacilaci » Tue Mar 19, 2019 9:09 am

So I'm now 100% sure that the weird and noisy cache is happening due to bump mapping!

cpucache:
cpucache.jpg
opencl/hybridcache:
cpuandgpucache.jpg
opencl/hybrid cache without bump mapping in materials!:
cpuandgpucache_NOBUMP.jpg

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

Re: PhotonGI cache

Post by Dade » Tue Mar 19, 2019 9:18 am

lacilaci wrote:
Tue Mar 19, 2019 9:09 am
So I'm now 100% sure that the weird and noisy cache is happening due to bump mapping!
I should have fixed this yesterday:

https://github.com/LuxCoreRender/LuxCor ... c3ab7b9bb0 https://github.com/LuxCoreRender/LuxCor ... f8c371039e

Does it still happen with the latest version ?
Support LuxCoreRender project with salts and bounties

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

Re: PhotonGI cache

Post by lacilaci » Tue Mar 19, 2019 11:16 am

Dade wrote:
Tue Mar 19, 2019 9:18 am
lacilaci wrote:
Tue Mar 19, 2019 9:09 am
So I'm now 100% sure that the weird and noisy cache is happening due to bump mapping!
I should have fixed this yesterday:

https://github.com/LuxCoreRender/LuxCor ... c3ab7b9bb0 https://github.com/LuxCoreRender/LuxCor ... f8c371039e

Does it still happen with the latest version ?
Oh, I didn't notice that in the azure builds, will download latest and test

EDIT: Ok, it seems that latest build doesn't have this problem :D

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

Re: PhotonGI cache

Post by Dade » Tue Mar 19, 2019 4:46 pm

I added the support for volumes to PhotonGI. Now cache entries can be created and used on volumes too:

bm2.jpg

It can increase the raw samples/sec by a 50%-100% and reduce the amount of noise too:

media.jpg

In particular, it greatly accelerate the rendering of multi-scattering volumes and it is indicated for SSS rendering.

NOTE: for obvious reasons, covering with cache entries a 3D volume is more complex than a 2D surface so there may be cases, like a large air volume for a large open scene, where it is not practical. In that case, just check the disable PGI flag for that particular volume.
Support LuxCoreRender project with salts and bounties

User avatar
Sharlybg
Donor
Posts: 1577
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

Re: PhotonGI cache

Post by Sharlybg » Tue Mar 19, 2019 5:02 pm

Nice add ;)

this should be written in tooltips :
"NOTE: for obvious reasons, covering with cache entries a 3D volume is more complex than a 2D surface so there may be cases, like a large air volume for a large open scene, where it is not practical. In that case, just check the disable PGI flag for that particular volume."
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA

Post Reply