Hybrid Back/Forward path tracing (aka BiDir without MIS)

Discussion related to the Engine functionality, implementations and API.
Post Reply
User avatar
Dade
Developer
Posts: 3398
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Post by Dade » Mon Jun 24, 2019 1:43 pm

B.Y.O.B. wrote:
Mon Jun 24, 2019 12:47 pm
B.Y.O.B. wrote:
Mon Jun 24, 2019 11:15 am
If you want I can upload the scene.
Here it is (220 MB): https://drive.google.com/open?id=1vS5v1 ... HYGO6DegDX
I get all the right highlights:

right.jpg

Are you sure to have use the correct binaries ?
Support LuxCoreRender project with salts and bounties

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

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Post by B.Y.O.B. » Mon Jun 24, 2019 2:07 pm

Ah, my mistake, I didn't copy the compiled binary correctly.
Support LuxCoreRender project with salts and bounties

Odilkhan Yakubov
Posts: 59
Joined: Fri Jan 26, 2018 10:07 pm
Location: Tashkent, Uzbekistan

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Post by Odilkhan Yakubov » Mon Jun 24, 2019 2:10 pm

Hi. Sorry if I missed something but can anyone paste me the link for the completed build for this "sweat"? :D
Allah bless us!

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

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Post by Dade » Mon Jun 24, 2019 4:04 pm

Odilkhan Yakubov wrote:
Mon Jun 24, 2019 2:10 pm
Hi. Sorry if I missed something but can anyone paste me the link for the completed build for this "sweat"? :D
Here: viewtopic.php?f=9&t=736
Support LuxCoreRender project with salts and bounties

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

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Post by B.Y.O.B. » Mon Jun 24, 2019 4:18 pm

Note that this feature is not exposed in the Blender addon yet.
Support LuxCoreRender project with salts and bounties

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

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Post by provisory » Mon Jun 24, 2019 4:29 pm

Dade wrote:
Mon Jun 24, 2019 12:32 pm
Caustic cache could be modified to render only SDS paths so Hybrid+caustic cache produce the complete solution.

This is actually a pretty good idea I'm going to try.
I think it would be a pity to spoil its unbiased nature...

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

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Post by epilectrolytics » Mon Jun 24, 2019 5:31 pm

Dade wrote:
Mon Jun 24, 2019 10:24 am
epilectrolytics wrote:
Sun Jun 23, 2019 7:03 pm
unlike BiDir no caustics are rendered in the water.
Like BiDir, no caustics are rendered in the water ... are you getting under water caustics out of BiDir ? Under water caustics are the very same definition of SDS paths.

I assume you were talking of PGI caustic cache, not BiDir.
Nope, BiDir and PathOCL are rendering those SDS-paths, only Hybrid (first bugged version) was not and even missed the reflections.

I was referring to this comment:
Dade wrote:
Sun Jun 23, 2019 3:46 pm
epilectrolytics wrote:
Sun Jun 23, 2019 2:01 pm
Does it do SDS-paths?
It is like BiDir, it can only if the light is intersectable (i.e. it is directly visible, like an area light, not like a point light, etc.). But if the area light is very small, it may be not very good at rendering SDS paths (again, like BiDir).
and wanted to test it.

Now, with the latest version, it renders normally.
There is no difference between PathOCL and Hybrid PathOCL because all caustics are "underwater"=SDS paths which are neglected by lightpath but seen by eyepath because the sun is an intersectible light source.

So this scene is actually no valid test scene for the new hybrid solution, which I should have figured before :oops:

I'm surprised nonetheless, that PathOCL+Sobol does a better job here than BiDir + Metropolis - never seen that before.
Periodic caustic cache render is fastest here by an order of magnitude but too bright.

v periodic caustic cache 450 samples - 4.5min
poolcache.jpg
v BiDir metro 2000 samples 2h (Ryzen 2700X)
poolbidir.jpg
v PathOCL sobol 27000 samples 1h (RTX 2070+GTX1060)
poolpocl.jpg
.
conclusion:
The new hybrid render engine is a very fast solution that can replace BiDir in most cases.
Wherever SDS-paths are defining parts of the image periodic caustic cache is still superior (and fast too).
MBPro 15" 16GB i7-4850HQ GT750M, MacOS 10.13.6 & Win10Pro PC 16GB Ryzen 2700X, 2 x RTX 2070

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

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Post by provisory » Mon Jun 24, 2019 6:06 pm

Dade wrote:
Mon Jun 24, 2019 10:15 am
Important note: because Hybrid Back/Forward path tracing has still a strong path tracing component, it is often useful to disable the light visibility in specular paths to avoid many fireflies. This fact is was hidden by the bug I have fixed.
How to disable the light visibility in specular paths?

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

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Post by Dade » Mon Jun 24, 2019 7:23 pm

provisory wrote:
Mon Jun 24, 2019 6:06 pm
Dade wrote:
Mon Jun 24, 2019 10:15 am
Important note: because Hybrid Back/Forward path tracing has still a strong path tracing component, it is often useful to disable the light visibility in specular paths to avoid many fireflies. This fact is was hidden by the bug I have fixed.
How to disable the light visibility in specular paths?
It is a light source flag but I'm not sure if it has been exposed in Blender :?:
Support LuxCoreRender project with salts and bounties

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

Re: Hybrid Back/Forward path tracing (aka BiDir without MIS)

Post by Dade » Mon Jun 24, 2019 7:25 pm

epilectrolytics wrote:
Mon Jun 24, 2019 5:31 pm
So this scene is actually no valid test scene for the new hybrid solution, which I should have figured before :oops:
If you add a couple of walls, it is a good test scene:

- Path tracing => mostly fireflies
- Hybrid path tracing/BiDir => good caustics on walls
- Something able to render SDS paths too => good caustics on walls and under water.
Support LuxCoreRender project with salts and bounties

Post Reply