PDA

View Full Version : Principled BSDF reflection?



Meshbuilder
03-15-2018, 03:53 AM
Anyone else having this problem with reflections when using the the new Principled BSDF shader?
From an low angle the reflection looks like 100% no matter how low value I set (specular or metallic).

gerry_g
03-15-2018, 04:21 AM
you're not the only one who finds these difficult to fathom, the input value you enter often seems to have little to do with the outcome, might be talking complete BS here but I reasoned why low angles do this is because the fresnel is overriding the input value and pushing it back to 100%, do wish fresnel was a separate input for the shader rather than integral to it as per Modo so at least some control was leverageable

Meshbuilder
03-15-2018, 04:34 AM
Ok, I'm not alone then :)
Can’t understand how this render/shading engine been in beta and no one seen this as a problem before? I mean, a reflective floor in a 3D scene can not be that unusual.

rsfd
03-15-2018, 05:02 AM
…Can’t understand how this render/shading engine been in beta and no one seen this as a problem before?…

this may be because the Principled BSDF Shader just does what it should do: mimicking physically correct materials.
The Fresnel effect is to observe on any Material. And the most usual ones all have high Fresnel reflectivity at the grazing/glancing angles.
You may want to do some research at https://refractiveindex.info or read the PBR-Guides from Allegorithmic.

gerry_g
03-15-2018, 05:48 AM
was just playing around and this is what gets me about the new shaders is that they can be counter intuitive, I left specular at 50% and put a gradient set to incidence in the roughness channel and was able to choke off the overly reflectiveness of the surface that way, at a high angle there is no visible difference to the gradient being there or not, but at a low angle it makes a big difference

djwaterman
03-15-2018, 07:05 AM
I set up a similar scene to this, for PBR you may as well set the specular to 100 and use the roughness value to make the surface seem more or less reflective, changing the specular amount doesn't change things much once it is any value above 0. I'm talking about non metal surfaces.

140694

If you prefer to use the standard material, it seems you use the specular and glossiness values for the same sort of behavior, you don't need to use the reflective value if you do that. Or you would use it the old way since that's why it's there.

You have correctly surmised that LW automatically sets all specular to 100% which is how it is in reality for most non metalic surfaces, I went back and looked at the manual and it describes this behavior.

Here's a scene to play with.

140693

Snosrap
03-15-2018, 08:04 AM
All this seems correct to me. If you observe everyday things at high glancing angles they are indeed very reflective. The only thing that prohibits them from looking mirror like is their bumpiness. Look around.

rsfd
03-15-2018, 08:17 AM
was just playing around and this is what gets me about the new shaders is that they can be counter intuitive, I left specular at 50% and put a gradient set to incidence in the roughness channel and was able to choke off the overly reflectiveness of the surface that way, at a high angle there is no visible difference to the gradient being there or not, but at a low angle it makes a big difference
My personal point of view would be, that -if photorealistic (physically correct) renderings are the goal- one should use the PBSDF-Shader as is and not to try to „bend” things to one’s likings.
For artistic freedom in that regard, it’s probably easier to stick with the „classic” Materials.
The Principled Shader really needs a „new/different” approach and many „old hats” just don’t fit anymore. But the achievable quality is worth it.

You also need to be aware that the Fresnel reflection seen in the PBSDF-Shader comes from „Glossy Reflection” of the Environment, whereas the Specular „Reflections” come from the Lights itself. The latter go to the Specular Direct Buffer, the former goes to Specular Indirect. You will not get input into the Reflection Buffer with PBSDF-Shader (effectively: if one uses PBSDF exclusively, one will not even get a Reflection Buffer to choose as output).

[edit]
Your observation with the Gradient applied to the Roughness channel is to expect, as the Fresnel effect is angle dependent and the more you look from the incidence angle onto an object the lesser the Fresnel effect comes into play.