← All ideas
  • Published 21 Mar 2022

Principled BSDF Workflows

Hi, my Name is Emre Can Özcan, I have worked with Blender for 2 Years now, for personal and commercial projects.

Whilst working on Shader setups, one thing I did notice, was not having the Option to change the PBR Workflow Method.

Blender is only currently using the Metal Roughness Workflow, which might be frustrating for many users being used to the Specular Glossy workflow since almost every other Render Engine has the ability to at least let the user choose the favored PBR Method.

That said, I have made ONE adjustment to the Principled BSDF. The Specular Input is an SRGB input instead of a value input.

This would allow the user to use the favored PBR Workflow method of choice inside of the Principled BSDF. According to the connected Maps inside the BSDF, the following workflow is then used, to make this very easy for the User.

I am also aware that the Specular BSDF exists in Blender but is only supported in EEVEE.

Please note that I am referencing the official PBR Guide from ALLEGORITHMIC. Link to the Guide Part 2: substance3d.adobe.com/tutorials/courses/the-pbr-guide-part-2

Any constructive criticism and thoughts on this are highly appreciated!

Specular Workflow New Design.jpg

100%

Development Status: Open

Upvote 6 Downvote 0
emre.can.oezcan
21 Mar 2022

14 Comments

JhonR3d

Hello, I think you have a lot of confusion with the blender shader system. First I'll tell you: I come from 3D Max and like you at the beginning the change was slow, I've only been with Render in blender for a short time about 2 years too.

There are 2 systems PBR and Raytrace (Raytracing). Blender is totally PBR while for example Max with Vray is Raytrace.Currently Vray already comes with PBR but that is not real but it is under the hood in the programming, and even so it does not have the PBR Shader mode and blender if it does.

All you need to do is use your Specular textures on the roughness. The metallic is only the Fresnel checkbox of Vray or the IOR Reflect in Corona, the specular color is given in the Albedo. Blender works with materials like Unreal, 3d coat, Substance... which are the real PBR. PBR Shader Mode is easy and you just have to know that it is much more visual and not as technical as working in Vray. I hope this information helps you. And if I am going to give an Upvote because it would be good if what you propose can be included

2
emre.can.oezcan Author

Thank you for your Comment!

Please note that I am referencing the official PBR Guide from Substance.

The there mentioned Specular Glossy Workflow is currently not Supported in Cycles.

Have a look at it: substance3d.adobe.com/tutorials/courses/the-pbr-guide-part-2

3
SpookyDoom

For everybody who doesn't want to read through an entire PDF guide ;)

The thing that this proposal would change is actually just one socket - specular to accept a color instead of just greyscale for strength. The problem with Metallic is that it alsmost always adds bright color values in the matallic areas and then defines the reflectivity color by a secondary metallic map. It's easy to handle and only requires one map for metallic definition.

(edit) more specifically - because it was confusing: Metallic workflow derives the reflected color value from the color of the albedo pass. So the Albedo pass has to have a non-black color value in order for metallic to reflect something. What is visible along the Alias Edges are the parts in the texture that aren't 100% metallic/electric value over to plastic/dielectric. In specular setup all the reflection parts are derived from the specular pass which is then calculated (negative multiply I think?) over a dark albedo. That way there aren't any vidible edges. In short - it makes mid-metalic values look better, eliminates alias artifacts especially in lower res maps and can give effects that aren't possible with Metallic map alone but is also mure complicated to handle and much more user error-prone if done wrong. (/edit)

The downside is twofold, though:

  1. Along the alias edges of the metallic areas you will get noticable artifacts because as soon as an area isn't 100% metallic any more it gets noticable brighter.
  2. Your specular sheen will never be able to reflect in a different color other than either white or the material color for electric / metallic refelectivity.

I agree that this would be really good to have. But until then I think there is a different shader that you can mix together. Not ideal but doable. Though I also find that this is important to be in the standard BSDF shader - especially with the upcoming new features intexture and material baking in a year or so...

3
JhonR3d

I had already read it a long time ago and guide 1 too. But that doesn't mean you can't work

JhonR3d

Hello. very good information, thanks

SpookyDoom

So after reading this through one day later I have one problem with the way this change in the proposed way: It's in the way the shader would accept Metallic and Specular in parallel. There should be a difference in modes. Otherwise the shader would be able to kind of double merge the epcular color when the user inputs metallic values and colored specular maps. In the documentation there's a chart for how the passes are calculated: docs.blender.org/manual/en/latest/_images/render_layers_passes_combine.svg

If we don't split up the modes then metallic values and specular color could possibly fight each other. Making a mode switch in the node could introduce compatibility issues. Maybe a separate Specularand Metallic BSDF node would be a better idea.

Then again maybe it's not that big of a deal? How do other renderers (outside of game engines which have a hard split usually) handle this case?

1
emre.can.oezcan Author

My First Design proposal was this here: files.catbox.moe/8lbjpk.jpg

where we can have another drop down in the Principled BSDF to change the PBR workflow method as favored

but the Mockup was just using the already existing EEVEE Specular BSDF

SpookyDoom

I think a separate node would be the better idea due to compatibility and ease of use reasons.

larrymorrow

I love the idea of being able to use colored images instead of grayscale for specular. I once extracted a model from prey 2017 to make a render but it only used specular colors with no metallic masking, meaning I can't use it to make a ray traced scene. I wonder why they made it so you can select specular bsdf in cycles even when it doesn't work.

romboutv

So what is the difference with that sRGB input?! You can already plugin images in these inputs.

ravenclarico

you posted the same picture for the mockup and original...

SpookyDoom

No. There's a one socket change - from Specular greyscale to Specular Color. BUt it could be made a little more obvious, yes.

1
emre.can.oezcan Author

I have made the change more obvious! thanks for the Feedback