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

Discussion related to the LuxCore functionality, implementations and API.
User avatar
B.Y.O.B.
Developer
Developer
Posts: 4146
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. »

CodeHD wrote: Thu Jun 27, 2019 8:38 pm I never tried doing this with clipping planes, not yet at least.
You should, it's fun :)

See https://wiki.luxcorerender.org/BlendLux ... ping_Plane
Flink
Posts: 20
Joined: Fri Nov 23, 2018 8:38 am

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

Post by Flink »

Hi,
I did a few tests with Hybrid-Pathtracing and it is awesome fast :D
But I noticed a difference between Bidir and Hybrid. The Testscene is a glasscube with a watercylinder inside. I'm using the latest build and set also camera and world-volume.
Is it not possible to render this scene with hybrid or is it maybe a bug? No difference between OpenCL and non-OpenCL version.
Attachments
Comparison.png
Hybrid_test.blend
(612.9 KiB) Downloaded 171 times
User avatar
FarbigeWelt
Donor
Donor
Posts: 1046
Joined: Sun Jul 01, 2018 12:07 pm
Location: Switzerland
Contact:

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

Post by FarbigeWelt »

Flink wrote: Fri Jun 28, 2019 6:23 am Hi,
I did a few tests with Hybrid-Pathtracing and it is awesome fast :D
But I noticed a difference between Bidir and Hybrid. The Testscene is a glasscube with a watercylinder inside.
Did you set the same path depth? Per default, path is less deep.
Light and Word designing Creator - www.farbigewelt.ch - aka quantenkristall || #luxcorerender
MacBook Air with M1
Flink
Posts: 20
Joined: Fri Nov 23, 2018 8:38 am

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

Post by Flink »

FarbigeWelt wrote: Fri Jun 28, 2019 6:41 am
Flink wrote: Fri Jun 28, 2019 6:23 am Hi,
I did a few tests with Hybrid-Pathtracing and it is awesome fast :D
But I noticed a difference between Bidir and Hybrid. The Testscene is a glasscube with a watercylinder inside.
Did you set the same path depth? Per default, path is less deep.
No, I didn't :oops: With same path depth everything is fine.
Attachments
PathOCL-Light-trace-Sky_same-path-depth.png
epilectrolytics
Donor
Donor
Posts: 790
Joined: Thu Oct 04, 2018 6:06 am

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

Post by epilectrolytics »

Dade wrote: Wed Jun 26, 2019 9:04 am
epilectrolytics wrote: Tue Jun 25, 2019 4:27 pm Have started an animation, but when motion blur is activated light tracing does not work :?
It was a general LIGHTCPU, BIDIRCPU and now Hybrid problem. I should have fixed camera motion blur.
Seems there is still a problem with motion blur.
I tried to render the classroom scene with hybrid path, 100% light tracing for testing and encountered a strange result:
- caustics seem way too bright
- upper half shows a strange, different pattern
- with motion blur disabled the render seems ok
hybrid-motion-blur.gif
.
Probably unrelated: When rendering the scene with PGI (no hybrid) it is way brighter than with simple PathOCL.
This additional brightness of PGI appears in other scenes too (see here).

I was wondering if hybrid rendering could help make indirect cache less biased:
When rendering a scene with glossy materials (like floor and furniture in the classroom scene) the view dependent light transport will be missed by cache rendering which only does indirect diffuse distribution of light.
So why not add light tracing with a high glossiness threshold which would add the missing directional light?
(If pathOCL does only render diffuse with cache and lighttracing does all glossy and specular that would be faster and more accurate but probably need an extra implementation.)
But then in my first test (hybrid glossiness threshold=0.5; motion blur disabled) all the chrome materials appear dark :?
Screenshot.jpg
Windows 10, latest binaries.
jgrover110
Posts: 47
Joined: Tue Apr 17, 2018 1:07 pm

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

Post by jgrover110 »

I can't seem to get denoising to play nicely. Sobol with OIDN works, but BCD doesn't show any light tracing. When using random, any denoising causes light tracing to be disabled entirely.
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

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

Post by Dade »

epilectrolytics wrote: Mon Jul 01, 2019 4:37 pm Seems there is still a problem with motion blur.
I tried to render the classroom scene with hybrid path, 100% light tracing for testing and encountered a strange result:
- caustics seem way too bright
- upper half shows a strange, different pattern
- with motion blur disabled the render seems ok
You have OpenCL enabled, 100% light tracing can be done only with CPU-only rendering, the GPU will still render only eye paths. The "Light rays" setting affects only the CPU threads, not the GPU. For that kind of test, use PATHCPU, not PATHOCL.
Support LuxCoreRender project with salts and bounties
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

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

Post by Dade »

jgrover110 wrote: Mon Jul 01, 2019 6:59 pm I can't seem to get denoising to play nicely. Sobol with OIDN works, but BCD doesn't show any light tracing. When using random, any denoising causes light tracing to be disabled entirely.
Yes, I have probably forgot to add the BCD support to Hybrid. But, sincerely, I don't even know if it is worth doing, I will check if it can be done without too much effort.
Support LuxCoreRender project with salts and bounties
epilectrolytics
Donor
Donor
Posts: 790
Joined: Thu Oct 04, 2018 6:06 am

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

Post by epilectrolytics »

Dade wrote: Mon Jul 01, 2019 7:03 pm You have OpenCL enabled, 100% light tracing can be done only with CPU-only rendering, the GPU will still render only eye paths. The "Light rays" setting affects only the CPU threads, not the GPU. For that kind of test, use PATHCPU, not PATHOCL.
The original file settings were for animation with OpenGL, of course I have switched to PathCPU before I activated 100% light tracing and did the test renders shown in the GIF image which also shows clearly the settings ;)
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

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

Post by Dade »

epilectrolytics wrote: Mon Jul 01, 2019 7:55 pm
Dade wrote: Mon Jul 01, 2019 7:03 pm You have OpenCL enabled, 100% light tracing can be done only with CPU-only rendering, the GPU will still render only eye paths. The "Light rays" setting affects only the CPU threads, not the GPU. For that kind of test, use PATHCPU, not PATHOCL.
The original file settings were for animation with OpenGL, of course I have switched to PathCPU before I activated 100% light tracing and did the test renders shown in the GIF image which also shows clearly the settings ;)
I agree, it is very clear:
ocl.jpg
Support LuxCoreRender project with salts and bounties
Post Reply