Disney BRDF material

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

Re: Disney BRDF material

Post by Dade » Sat Jun 08, 2019 1:53 pm

I should have fixed the use of Disney material with PhotonGI.
Support LuxCoreRender project with salts and bounties

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

Re: Disney BRDF material

Post by epilectrolytics » Sat Jun 08, 2019 6:17 pm

Dade wrote:
Sat Jun 08, 2019 1:53 pm
I should have fixed the use of Disney material with PhotonGI.
Works great, thanks!
The speed advantage of all Disney materials vs matte/glossy/mirror is still there though less pronounced, I get 15.2 vs 14.5 megasamples per second in my test scene with PathOCL PGI.
MBPro 15" 16GB i7-4850HQ GT750M, MacOS 10.13.6 & Win10Pro PC 16GB Ryzen 2700X, RTX 2070, GTX 1060

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

Re: Disney BRDF material

Post by provisory » Sun Jun 09, 2019 9:19 am

Does Disney material work with PGI caustic cache?

User avatar
Dade
Developer
Developer
Posts: 2488
Joined: Mon Dec 04, 2017 8:36 pm

Re: Disney BRDF material

Post by Dade » Sun Jun 09, 2019 11:23 am

provisory wrote:
Sun Jun 09, 2019 9:19 am
Does Disney material work with PGI caustic cache?
It is not a specular material so it can not generate caustics (in a canonic definition).
Support LuxCoreRender project with salts and bounties

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

Re: Disney BRDF material

Post by provisory » Sun Jun 09, 2019 1:30 pm

Metal and rough glass can generate nice caustics with BiDir.
Oh, and glossy material too.

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

Re: Disney BRDF material

Post by epilectrolytics » Sun Jun 09, 2019 2:36 pm

Dade wrote:
Sun Jun 09, 2019 11:23 am
It is not a specular material so it can not generate caustics (in a canonic definition).
Umm, the specular value is always at 0.5 so it will always generate reflective caustics.
And with metallic=1 and roughness=0 it is a perfect mirror material.

I think Disney, metal and glossy should work with caustic cache in the range of 0>0.2 roughness (that would be 0.45 for Disney because of its different roughness calculation).
MBPro 15" 16GB i7-4850HQ GT750M, MacOS 10.13.6 & Win10Pro PC 16GB Ryzen 2700X, RTX 2070, GTX 1060

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

Re: Disney BRDF material

Post by lacilaci » Sun Jun 09, 2019 4:03 pm

epilectrolytics wrote:
Sun Jun 09, 2019 2:36 pm
Dade wrote:
Sun Jun 09, 2019 11:23 am
It is not a specular material so it can not generate caustics (in a canonic definition).
Umm, the specular value is always at 0.5 so it will always generate reflective caustics.
And with metallic=1 and roughness=0 it is a perfect mirror material.

I think Disney, metal and glossy should work with caustic cache in the range of 0>0.2 roughness (that would be 0.45 for Disney because of its different roughness calculation).
that specular value is a generic dielectric reflectance, Dade meant specular material as in refractive, this is where specular caustics could be cached (glass, body of water) I don't think caustic cache is capable of doing reflective caustics cause that would literaly mean creating cache for every single glossy material(maybe a threshold value could help, but would also impose limitations). So this is also why I don't think caching caustics is a way to go, since it only means specular caustics and even there we see quite a limitation. I might be wrong though....

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

Re: Disney BRDF material

Post by lacilaci » Sun Jun 09, 2019 4:06 pm

On top of all that caustic cache is directly visible, we are seeing photons directly so good luck with some sharp effects as with jewelry product vis or sharp caustics in high res glass rendering.

User avatar
Dade
Developer
Developer
Posts: 2488
Joined: Mon Dec 04, 2017 8:36 pm

Re: Disney BRDF material

Post by Dade » Sun Jun 09, 2019 4:26 pm

"specular" materials have a quite precise technical definition, they are the one with a "delta" distribution: it means given an input direction, the BRDF will produce one, and only one, output direction. Mirror and glass are the only one to fulfill this requirement, all other materials produces a range of outputs and they are classified as glossy or diffuse.

You can find this kind of definitions in the PBRT book.

At the moment, the caustic cache will only render caustics of "specular" materials.
Support LuxCoreRender project with salts and bounties

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

Re: Disney BRDF material

Post by epilectrolytics » Sun Jun 09, 2019 6:53 pm

Thanks for clarification.

The use of the term „specular“ in CGI is very confusing, the optical definition indeed means only delta reflection but in many cases the range between delta and diffuse is also labelled „specular“ as by the parameters of the new Disney shader I was referring to.
It maintains specularity till roughness=1, but only at grazing angles as described in the Disney paper.

But caustics, refractive and reflective, are not only generated by delta specularity but also from rough glass and metal.

I just discovered this afternoon that the caustic cache doesn’t do rough glass.
There are just too many restrictions to the caustic cache as it is now to be usable.

- it doesn’t work with mixed infinite and directional light
- it doesn’t really work together with indirect cache
- it doesn’t create reflective or refractive caustics from rough materials
- default photon merge radius scale destroys fine caustic patterns
- small radius scale slows down path tracing to less than BiDir speed
- not really capable of dispersion
- no viewable progressive accumulation, therefore difficult setup (trial and error)

+ does SDS paths

Together it is much worse than any simple traditional photon mapper, let alone progressive ones.
Without some new break-through idea it is probably a dead end and not worth further development,
instead it looks more promising to use the indirect (+ direct?) cache to accelerate BiDir with path guiding for a really unbiased solution that a lot of users would appreciate.
MBPro 15" 16GB i7-4850HQ GT750M, MacOS 10.13.6 & Win10Pro PC 16GB Ryzen 2700X, RTX 2070, GTX 1060

Post Reply