BIDIRCPU can now use PhotonGI cache to render SDS paths

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

BIDIRCPU can now use PhotonGI cache to render SDS paths

Post by Dade »

It is now possible to enable PhotonGI caustic cache with BiDirectional path tracing in order to render SDS paths:

sds.jpg

All the usual PhotonGI properties are available however PGI is used only for SDS paths like with hybrid path tracing+light tracing.

This feature is available on "for_v2.6" branch.
Support LuxCoreRender project with salts and bounties
User avatar
TAO
Developer
Developer
Posts: 851
Joined: Sun Mar 24, 2019 4:49 pm
Location: France
Contact:

Re: BIDIRCPU can now use PhotonGI cache to render SDS paths

Post by TAO »

Awesome news, Are there any limitations?
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: BIDIRCPU can now use PhotonGI cache to render SDS paths

Post by Dade »

TAO wrote: Mon Dec 21, 2020 12:20 pm Awesome news, Are there any limitations?
Not that I'm aware of, it is really like using PhotonGI caustic cache with path tracing+light tracing.
Support LuxCoreRender project with salts and bounties
epilectrolytics
Donor
Donor
Posts: 790
Joined: Thu Oct 04, 2018 6:06 am

Re: BIDIRCPU can now use PhotonGI cache to render SDS paths

Post by epilectrolytics »

Thanks for this addition!
Dade wrote: Mon Dec 21, 2020 12:31 pm
TAO wrote: Mon Dec 21, 2020 12:20 pm Awesome news, Are there any limitations?
Not that I'm aware of, it is really like using PhotonGI caustic cache with path tracing+light tracing.
Light tracing does not catch indirect caustics (DSD paths) and the caustic cache thus not DSDS paths.
BiDir can do those, but DSDS are slow; BiDirVM is way faster with these.
So what about BiDir + PGI cache, can it do reflected indirect caustics as well as BiDirVM?

Example scene:
Attachments
DSDS_LuxCore.zip
(117.75 KiB) Downloaded 276 times
User avatar
Sharlybg
Donor
Donor
Posts: 3101
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

Re: BIDIRCPU can now use PhotonGI cache to render SDS paths

Post by Sharlybg »

I isn't a bad add even if i think that Bidir should be safe from all the trial and error workflow. I mean Bidir should be a launch and forget robust and final ground truth ultimate reference.
It is also for this reason that people use Bidir very few settings and great precision.

Something in this range will be really great :

Image

https://cgg.mff.cuni.cz/~jaroslav/paper ... index.html
This paper describes the implementation of a fully automatic caustics rendering solution in Corona Renderer. The main requirement is that the technique be completely transparent to the user, should not need any parameter setting at all, and be fully integrated into the interactive and progressive rendering workflow. We base our approach on an efficient subset of the vertex connection and merging algorithm, specifically a multiple importance sampling combination of path tracing and photon mapping. We rely on Metropolis sampling to guide photon paths into the relevant parts of the scene. While these underlying ideas have appeared in existing research work, numerous previously unaddressed issues and edge cases arise when one applies these ideas in practice. These include unreliable convergence of the Metropolis sampler in scenes with many light sources of different sizes and intensities, the “caustic in a stadium” problem (i.e., efficient rendering of small caustics in extremely large scenes), etc. We present the solutions we have developed to address such issues, yielding what we call “one-click caustics rendering”. User feedback suggests that our approach substantially improves usability over methods previously implemented in comercially available software, all requiring the user to set various technical parameters.
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA
daros
Posts: 280
Joined: Thu Dec 12, 2019 3:25 pm
Location: inside human language
Contact:

Re: BIDIRCPU can now use PhotonGI cache to render SDS paths

Post by daros »

Yes, i agree, bidir should be kept simple to use. A try and error approach works in a situation where you can tweak all other parameters in order to maximize speed. In a bidir situation, where you cannot tweak almost nothing, a try and error approach is uncomfortable because each rendering test takes ages.
User avatar
Dez!
Posts: 368
Joined: Sun Apr 08, 2018 1:09 am
Location: Ekaterinburg
Contact:

Re: BIDIRCPU can now use PhotonGI cache to render SDS paths

Post by Dez! »

I also use BiDir as a reference point for glass and caustics. Just turned on BiDir and done. Then - tried to repeat in PathTrace.
I would not like to see tricks and tricks in BiDir. I also believe that it should remain as a way to "turn everything on for maximum realism and coolness" with one button.
Linux Plasma | Ryzen 5, 32Gb, SSD M2, GT 590 RX | BenQ 27 | Wacom One | Microsoft Ergo | Tie Guan Yin tea
http://dezigner.tilda.ws/
epilectrolytics
Donor
Donor
Posts: 790
Joined: Thu Oct 04, 2018 6:06 am

Re: BIDIRCPU can now use PhotonGI cache to render SDS paths

Post by epilectrolytics »

BiDir was never a valid ground truth renderer because of the missing SDS reflections, except when using intersectable lights and rendering for 24 hours.
When this problem finally gets solved by adding PGI cache it is very welcome.
No one is forced to use this addition, it can be disabled by default.

The question is if PGI really will resolve all missing paths or only a subset like it does when used with hybrid path?
BiDirVM does render all kinds of reflected caustics, including those from indirect light, in reasonable time, but it is broken currently.

If caustic cache can be set up to do the same that would be a great advantage for everyone interested in realistic physically based rendering, no matter the additional parameters. It is quite possible that a default set-up will cover most cases.
User avatar
TAO
Developer
Developer
Posts: 851
Joined: Sun Mar 24, 2019 4:49 pm
Location: France
Contact:

Re: BIDIRCPU can now use PhotonGI cache to render SDS paths

Post by TAO »

I totally agree with epilectrolytics, it is an option and can be disabled anytime. It's better to have it and not use it than need it and not have it.
CodeHD
Donor
Donor
Posts: 437
Joined: Tue Dec 11, 2018 12:38 pm
Location: Germany

Re: BIDIRCPU can now use PhotonGI cache to render SDS paths

Post by CodeHD »

epilectrolytics wrote: Wed Dec 23, 2020 10:34 am The question is if PGI really will resolve all missing paths or only a subset like it does when used with hybrid path?
What will remain problematic is specular-only paths, which would be necessary for example in the dispersive "fire" of a diamond or a chandelier.
Post Reply