Corona PBR Shader

It would be great if there was a way to integrate a PBR shader, or even an implementation into the standard CoronaMTL with a Metallic map slot and some way to convert the maps exported from a program like Substance Painter. There are workarounds to match the SP look with some shuffling around of different maps but it’s a pain in the arse.

Because you can texture high-poly assets in SP by using AO and Curvature maps I think a PBR implementation would be great in Corona, and I’m sure it’s only a matter of time before most renderers incorporate one. (I think MAYA 2016 added a native PBR shader)

And just to clarify: when I say PBR I mean a metallic/roughness Disney BDRF shader.

+1

+1, was mentionned as 1.6 feature some times ago but it’s has been overlooked

We can already get a PBR shader using Corona and SP. Check out the results in this thread:

I’d say it’s a workaround, so it’s not optimal. And it was meant to be a more general shader like disney’s one or alsurface shader. With metallic/roughness workflow as it’s start to be the new standard. So it would be nice to have such a shader in one of the upcoming release. But yeah, it’s not top priority.

Btw, I would not make a dedicated skin shader as planned on the roadmap. Alsurface completely suit the needs for that kind of stuff :

http://www.anderslanglands.com/alshaders/tut_skin1.html

Best of both worlds imho. Powerfull, versatile. The only thing alshader miss is the sheen parameter.

What’s more, it support cryptomatte :

http://www.anderslanglands.com/alshaders/tut_cryptomatte.html

I wonder if metallic-roughness shader implementation for off-line renderers is free from disease that real-time renderers suffers from, where transition between metalic and non-metallic surfaces looks very ugly? If not, then why we need such inferior shader?

What you are talking about is ralated to the texel density of the UVs of the texture used to blend metallic and non-metallic parts. And it appear also in specular/glossiness workflow, it’s just less noticeable coz the effect is reversed (black instead of white). It’s also highly dependant of the resolution, which is mostly a real-time problem, as texel density. Many offline renders use the metallic/roughness workflow with no issue so i don’t know how it could be considered “inferior”.

It’s not a work around, this set up is by every definition a PBR shader setup. The only thing it is missing is a neat little container to put it in.

As far as I remember the new Physical Material introduced in 2017 has a simple mode with metalness/roughness setup, I always thought it would work fine with Corona and was the reason there’s no dedicated PBR shader coming with it.

By workaround, I meant it introduce unwanted workflow. Modern “uber” shaders (dysney, alsurface..) are good in that way. They allow to reproduce almost every materials (except hair) within one node.

I think it’s a really bad idea to rely on autodesk’s stuff.

So if a developer goes through here, can you share your thoughts for choosing to make a dedicated skin shader over an uber shader ?

you mean why is skin shader not part of single universal shader, or why feature X was implemented before feature Y?

i mean why is skin shader not part of single universal shader.

done