patriciogonzalezvivo / lygia

LYGIA, it's a granular and multi-language (GLSL, HLSL, WGSL, MSL and CUDA) shader library designed for performance and flexibility
https://lygia.xyz
Other
2.66k stars 171 forks source link

Do we want to support alternative BRDF? #230

Open patriciogonzalezvivo opened 1 month ago

patriciogonzalezvivo commented 1 month ago

@shadielhajj have you seen this https://arxiv.org/pdf/2410.18026 ??

patriciogonzalezvivo commented 3 weeks ago

https://dassaultsystemes-technology.github.io/EnterprisePBRShadingModel/spec-2025x.md.html

shadielhajj commented 3 weeks ago

Excellent stuff thanks @patriciogonzalezvivo.

We currently don't have diffuse roughness implemented in our PBR pipeline (as opposed to specular roughness). It's quite costly and it's typically used in high-end pathtracers such as Octane. I am not aware of any real-time engine that implements it, as Brian Karis (Unreal), Romain Guy (Filament) and others have concluded it's not worth the extra cost. But it's def interesting to keep an eye on it, especially given that the model you reference is actually energy-conserving.

I didn't know about the Dassault PBR shading model thanks for sharing. Looks very interesting, and I'll study it. My long-term plan is to implement the OpenPBR model which is a synthesis of the Autodesk Standard Surface (currently the de-facto standard) and the Adobe Standard Material models. OpenPBR has been adopted by the Academy Software Foundation and is a sub-project of MaterialX, which is slowly being adopted as the standard material and look-dev definition language.

Happy to keep the conversation around shading models flowing in this thread!

patriciogonzalezvivo commented 3 weeks ago

That's fantastic! love that vision.

Note: I have been working closer to the Adobe Substance team, so eventually we could ping them <3 I feel they will love to see how you have been leading that effort and the results

shadielhajj commented 3 weeks ago

Sounds great @patriciogonzalezvivo. The Adobe Substance team is quite involved in OpenPBR. Let's def reach out to them when we think we have something to show!