Page 2 of 13

Re: Disney BRDF material

Posted: Wed May 29, 2019 6:32 pm
by FarbigeWelt
Thank you much Stefan Bergmann that you shared the code with the project.
(I hope you have some leisure time and fun to spend for the project to implement new features from the big list of whishes.)

The Disney shader implementation is great work hopefully you got a good master thesis score.
The pictures looks awesome. I like clearcoat and cloth especially.

Re: Disney BRDF material

Posted: Wed May 29, 2019 6:33 pm
by epilectrolytics
Does it include GGX microfacet model?

Re: Disney BRDF material

Posted: Wed May 29, 2019 7:27 pm
by Dade
epilectrolytics wrote: Wed May 29, 2019 6:33 pm Does it include GGX microfacet model?
Yes. It is now an alternative glossy material.

Re: Disney BRDF material

Posted: Thu May 30, 2019 12:50 am
by B.Y.O.B.
Thanks for your work, Stefan!
provisory wrote: Wed May 29, 2019 6:10 pm If it works well, then it must make the switch between Cycles and LuxCore really easy, which would be a big step forward.
Agreed :D
Dade wrote: Wed May 29, 2019 6:26 pm
lacilaci wrote: Wed May 29, 2019 6:00 pm is it brdf or bsdf if it has subsurface? I also wonder what is this approximated subsurfacing.
It is a BRDF, no ray it is transmitted but it can include SSS look-like appearance.

You can just check the original paper if you want more details: https://disney-animation.s3.amazonaws.c ... tes_v2.pdf (you can skip the math/coding stuff and just look at picture at pag. 13)
The disney authors followed up their paper in 2015 with a true SSS extension to the shader: https://blog.selfshadow.com/publication ... _notes.pdf
(click the "course notes" link of the point "Extending the Disney BRDF to a BSDF with Integrated Subsurface Scattering")
However I wonder if we can just use the existing homogeneous volume code in LuxCore instead.

Re: Disney BRDF material

Posted: Thu May 30, 2019 9:20 am
by Piita
Awesome work, Stefan! :)

Re: Disney BRDF material

Posted: Thu May 30, 2019 10:12 am
by tokiop
Amazing surprise ! Wish the best for your thesis Stephan !

Re: Disney BRDF material

Posted: Thu May 30, 2019 6:52 pm
by B.Y.O.B.
I have a BlendLuxCore implementation ready to commit.

However, one question: in Cycles, they use "Clearcoat Roughness" instead of "Clearcoat Gloss"
(I assume it is just inverted, i.e. roughness = 1 - gloss).
I find this more consistent with our other materials and the "Rougness" parameter of the disney shader itself. Can we switch to clearcoat roughness?

https://docs.blender.org/manual/en/dev/ ... l#examples

Re: Disney BRDF material

Posted: Thu May 30, 2019 8:03 pm
by Dade
B.Y.O.B. wrote: Thu May 30, 2019 6:52 pm However, one question: in Cycles, they use "Clearcoat Roughness" instead of "Clearcoat Gloss"
(I assume it is just inverted, i.e. roughness = 1 - gloss).
I find this more consistent with our other materials and the "Rougness" parameter of the disney shader itself. Can we switch to clearcoat roughness?
Yes but we should first figure out if Cycles is wrong, I mean, don't people need this material to import objects from other apps (like Substance Painter, etc.) ? We should probably check first what is the expected behavior.

Re: Disney BRDF material

Posted: Thu May 30, 2019 8:29 pm
by lacilaci
substance for example allows both glossines and roughness workflow. Neither is wrong. As long as you offer an option to invert map. I'm kinda under the impression that roughness is more popular and preferred, though I might be wrong about this.

However I'm not sure if it really is just a matter of inverting a map, most of the time it did work for me though.

On the topic of coating. There was an endless debate over at blenderartists today in which there was brought a topic on how cycles's principled coating is wrong because it breaks energy conservation since it adds reflection instead of mixing it/I guess blending with base.

So this makes me wonder how it works in this implementation, does it break energy conservation? Does it blend coating and base reflection component?

Re: Disney BRDF material

Posted: Thu May 30, 2019 8:34 pm
by B.Y.O.B.
Unreal Engine uses "Clear Coat Roughness": https://docs.unrealengine.com/en-US/Eng ... #clearcoat

@lacilaci can you link the thread? I only know of this: https://devtalk.blender.org/t/principle ... 603?u=byob