Light tracing and pool

Use this forum for general user support and related questions.
User avatar
lacilaci
Donor
Donor
Posts: 1637
Joined: Fri May 04, 2018 5:16 am

Light tracing and pool

Post by lacilaci » Tue Aug 06, 2019 5:21 am

There is no way I can make visible pool caustics using light tracing? Some shady trick or setup?

Currently it's faster to fake caustics(sds-pool caustics) in cycles than render them using any method in luxcore.
cache caustics are super slow for large pool and so are bidir+metropolis (although those look good)

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

Re: Light tracing and pool

Post by lacilaci » Tue Aug 06, 2019 5:30 am

currently I cannot see them through water, cause it's sds paths I know...
caustics_visible_water.png
I can make them visible by hiding water body from camera.. but I get no refraction from water itself so I'm not sure how's that useful to me:
caustics_invisible_water.png
Maybe someone knows some trick to make this somewhat work?

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

Re: Light tracing and pool

Post by lacilaci » Tue Aug 06, 2019 5:35 am

the closest I could get is with lowered opacity on the water... but it looks a bit weak:
caustics_opacity_water.jpg

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

Re: Light tracing and pool

Post by lacilaci » Tue Aug 06, 2019 6:04 am

now here's bidir+metropolis, now these are fucking beautiful, probably only new corona can do these. But it would take forever:
bidirmetro.jpg
I guess we can't have lighttracing act in a similar way as bidir+metro?

User avatar
FarbigeWelt
Donor
Donor
Posts: 869
Joined: Sun Jul 01, 2018 12:07 pm
Location: Switzerland
Contact:

Re: Light tracing and pool

Post by FarbigeWelt » Tue Aug 06, 2019 6:48 am

lacilaci wrote:
Tue Aug 06, 2019 5:30 am
currently I cannot see them through water, cause it's sds paths I know...
caustics_visible_water.png

I can make them visible by hiding water body from camera.. but I get no refraction from water itself so I'm not sure how's that useful to me:
caustics_invisible_water.png

Maybe someone knows some trick to make this somewhat work?
There is not any trick. But you could combine this two version each in a separate Blender layer and then select both layers for the rendering. I guess this way you get as close as you can get with current LuxCoreRender.

However, I miss angle shifting due to refraction. Actually objects should look like bend up below the water surface.
Light and Word designing Creator - www.farbigewelt.ch - aka quantenkristall || #luxcorerender
160.8 | 42.8 (10.7) Gfp | Windows 10 Pro, intel i7 4770K@3.5, 32 GB
2 AMD Radeon RX 5700 XT, 8 GB || Gfp = SFFT Gflops

User avatar
FarbigeWelt
Donor
Donor
Posts: 869
Joined: Sun Jul 01, 2018 12:07 pm
Location: Switzerland
Contact:

Re: Light tracing and pool

Post by FarbigeWelt » Tue Aug 06, 2019 6:53 am

lacilaci wrote:
Tue Aug 06, 2019 5:35 am
the closest I could get is with lowered opacity on the water... but it looks a bit weak:
caustics_opacity_water.jpg
Opacity is a no go. Opacity leads to an image made from one part with refraction and one part without refraction. This means if you point a laser with a certain angle between rectangular to surface and above total reflection you get two rays leaving a glass object with opacity: one straight, one refracted.
Light and Word designing Creator - www.farbigewelt.ch - aka quantenkristall || #luxcorerender
160.8 | 42.8 (10.7) Gfp | Windows 10 Pro, intel i7 4770K@3.5, 32 GB
2 AMD Radeon RX 5700 XT, 8 GB || Gfp = SFFT Gflops

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

Re: Light tracing and pool

Post by lacilaci » Tue Aug 06, 2019 8:11 am

hmmmmmmmm......

now look what we got here!!!

PATHCPU! + Metropolis:
caustics_pathcpu_metropolis.jpg
PATHOCL + Metropolis:
caustics_pathOCL_metropolis.jpg
pathocl doesn't give me any caustics but cpu does!
clearly sds is kinda working (a bit slower than normal caustics but a LOT faster than bidir metro) for cpu + metropolis

HOWEVER, it cannot work if I enable PhotonGI for some reason (not caustics caching, only indirect!)
caustics_pathcpu_metropolis_photongi.jpg
so maybe there is a way to make lighttracing caustics look like bidir+metropolis?

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

Re: Light tracing and pool

Post by Dade » Tue Aug 06, 2019 8:34 am

SDS caustics can not be rendered at all by PATH/BIDIR if the light source is not intersectable (i.e. a point light source, etc.).

If the light source is intersectable (i.e. an area light source, etc.) it can be rendered only trough the eye paths so you get exactly the same result from normal path tracing and bidirectional path tracing.

Larger is the light sources and easier is to hit so a way to see something with path tracing is to increase the size of the light source. However the caustics become more and more blurred.
lacilaci wrote:
Tue Aug 06, 2019 8:11 am
now look what we got here!!!
The difference in Metropolis Vs OpenCL Metropolis is due to the different number of CPU Vs GPU threads (for instance 12 Vs 512,000). GPU are, for instance, 512,000 / 12 times slower to explore the path space.

You could reduce the number of GPU threads to alleviate the problem but is a palliative (i.e yes, Metropolis on GPU is quite useless).
lacilaci wrote:
Tue Aug 06, 2019 8:11 am
so maybe there is a way to make lighttracing caustics look like bidir+metropolis?
Light tracing with vertex merging is the solution. It is something I'm planning for the v2.3.
Support LuxCoreRender project with salts and bounties

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

Re: Light tracing and pool

Post by epilectrolytics » Tue Aug 06, 2019 11:27 am

lacilaci wrote:
Tue Aug 06, 2019 8:11 am
now look what we got here!!!

PATHCPU! + Metropolis:
Yes, somehow PathCPU metro does faster pool caustics than BiDir, the other solution would be caustic cache.
From what I read you figured out everything yourself already, but if you might provide a scene with the wave bump texture I could do some testing as well.
MBPro 15" 16GB i7-4850HQ GT750M, MacOS 10.13.6 & Win10Pro PC 16GB Ryzen 2700X, 2 x RTX 2070

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

Re: Light tracing and pool

Post by lacilaci » Tue Aug 06, 2019 12:13 pm

epilectrolytics wrote:
Tue Aug 06, 2019 11:27 am
lacilaci wrote:
Tue Aug 06, 2019 8:11 am
now look what we got here!!!

PATHCPU! + Metropolis:
Yes, somehow PathCPU metro does faster pool caustics than BiDir, the other solution would be caustic cache.
From what I read you figured out everything yourself already, but if you might provide a scene with the wave bump texture I could do some testing as well.
Sure, this is the scene I'm testing all the possibilities in:
poolCaustics_testscene.blend
(3.34 MiB) Downloaded 33 times
Right now it seems building cache (in limited conditions) and reusing for full scene render is a way... (shitty and overcomplicated but it's something) the closest I can get is really only cycles+faking the whole thing... which can also look good but... not that good...

Post Reply