How to "properly" use: Specular, Glossy, Roughness & Reflection maps

Hey Fans!!

This seems like a total Noob question, but I’m aiming for “proper” use with the Principaled shader.

  • And yes I know that this also depends on what shader workflow you are going to use (Specular vs Metalness) -

This because a while back I found out that for photo realistic results in general you should leave the “specular” slider set to 0,5. since this also involes IOR (1.5 for most dialectic materials).

I think that for the most part u can get away connecting these maps to the “Roughnes” slot on the prinipaled shader and maybe adding a ColorRamp shader for more control or reverse when needed.

That said, in allot of tutorials they show to just stick specular maps in the specular slot. I’m guessing this would over wright the correct setting of 1.5.

So my question is how to properly use these textures with the Principaled Shader (Specificly specular Maps).


Edit:

Here’s a brief overview of how to use the different maps with the Principaled Shader node.
A sort of recap for dummies:

-Specular maps come from and old texturing workflow (Yess we can still use it).

-Now we use a PBR (Physically-Based Rendering) workflow
So there are to Workflows:

  1. Metalness Workflow (PBR new)
  2. Specular Workflow (Old)
    Each comes with their own maps collection
  • Blender’s Principaled Shader was designed for the Metalness Workflow
    (Don’t worry…we can stil use maps designed for the “Specular Workflow”)

PRINCIPALED SHADER…what map goes where???

  • Metalness Workflow:
    Maps:
    Base Color > Base Color
    Roughness > Roughness
    Metallic > Metallic
  • Specular Workflow 1:
    Maps:
    Diffuse (Albedo) > Base Color
    Glossiness > color invert node/ColorRamp (inverted on) > Roughness
    Specular > Specular
    or alternatively:
    Specular > Nothing…just add “Clear Coat” (for new/finished mats)
    For photo realistic results in general you should leave the “Specular” slider set to 0,5. since this also involes IOR (1.5 for most dialectic materials).

Pixelgrip’s comment on use of “Clear Coat”:
Remember,the clearcoat is a seperate layer,that gets added on top of your material if you increase the clearcoat slider.
Usally if you load texture packs from materials,never is a clearcoat included or needed.its just a artistic option if you make a carpaint or something similar.

  • Specular Workflow 2 (Pixelgrip’s converter Node):
    Maps:
    Diffuse (Albedo) > Converter > Principeled shader
    Specular > Converter > Principeled shader

use this list and this formula:

((ior-1)/(ior+1))² / 0.08

Thanx Mario,

I’ve seen this some whereBut i’m looking for a more straight forward approch though, if possible.
I take it that the textures go’s in either Subtract Vlue or Add vlue?

It’s just a gray scale. I only show this to understand what it does.

here’s some more info on this over at Reddit, just a test someone did:

https://www.reddit.com/r/blender/comments/glf6ds/how_to_properly_use_specular_glossy_roughness/

A specular map usally contains F0 reflection data (based on PBR Guide).In the principled shader,the data are artistic IOR values.With the formula Mario posted ,you can put IOR values direct.

Dont be confused,but F0 reflection data are in short,the resulting reflection amout of the Fresnel formula.
These are not IOR values and not principled specular values.

However,I have made a specular (F0) to principled specular input converting node group,based on a PBR guide.
here the link

Mario the idea behind that, the formula is even in the blender manual and the expression means that IOR and Specular are related in the real world. So I think you are making a mistake because the seed value should also be plugged in the IOR input of the Principled shader (unless you are purposely making an ‘unreal’ material).

No this IOR input is only for the clearcoat refraction,has nothing to do with the specular input.
The clearcoat is a complete seperate layer,that is added on top,if you increase the clearcoat slider.

Very intresting thanx!!

I’m reading true that topic.
As so for now…strictly taken, specular is for the old (Tech.) workflow. Or use a node (or some other tricks).

Now for simplicity’s sake. Based on this image…

Can I conclude that?:
For Metal - Roughness workflow: Rougness → Roughnes slot
Metallic → Specular slot

For Specular - Glossinessworkflow: Glossiness → Roghness slot
specular → Specular slott

???

Could one of the pro’s here make a screen shot on how to connect these maps to the principled shader for both workflow’s?

If possible 1 screenshot of a simple node setup (without extra nodes) just connecting the maps straight on.

And 1 screenshot of a somewhat accurate node setup. But to keep this also simple, just using a ColorRamp (to reverse or saturate a map) node in between some of these maps if needed.

I understand that you can go as deep as you want with these node setups to get a as real and accurate result as possible.
But for simplicity’s sake for us less experienced and starters, I would be nice to have a clear guide on what maps goes better in what slot.

Here’s a screenshot from one of the guys over @Reddit:


What do you guys think?

I forgot to mention that I mainly Use EEVEE. I imagine that results between EEVEE and Cycles can differ. But a simple setup should transfer wel between both right?

(hope I’m not being mr. confusious here)

For Metallic/roughness workflow (default workflow of cycles)
roughness ->roughness ,yes
Metallic ->Metallic

For Specular/Glossiness workflow
glossiness-color invert node->roughness
specular-needs to be converted->specular principled

in your screenshot,if you go metallic workflow,then you dont need specmap,but a metallic map into metallic to tell the shader where the metalparts are.sometimes not metal map is include for download in texture packs (if wood floor ie)then you dont need metall map and no specmap (its specular value is mostly 0.5 for a IOR of around 1.5 that is a roughly common dielectric value.)

for specular you need a converter as sayed (depents of the source,from which engine in what units the specular maps are stored)in my converter example its based of the PBR Guide (from the guys who made the Substance Painter)

Nice thanx!

Exactly what I wanted to know.

I’m just not clear yet on the “specular-needs to be converted” explination.
Converted how? Using nodea in the “Converter” category in blender, or do you rather mean using apps like Materialize/AwesomeBump?

like this node example

here the blendfile for testing
specular_to_metalworkflow1.blend (978.7 KB)

Yess Thanx!!

I just finished reading the other tread.
Seems you had the same question but u guys really dived deep in to that…like WOW!!!

I found 2 interesting points:

1:

Yeah good point - with finished wood I guess instead of specular one should use clear coat I assume.

2:


But to give a sort of recap for dummies:

-Specular maps come from and old texturing workflow (Yess we can still use it).

-Now we use a PBR (Physically-Based Rendering) workflow
So there are to Workflows:

  1. Metalness Workflow (PBR new)
  2. Specular Workflow (Old)
    Each comes with their own maps collection
  • Blender’s Principaled Shader was designed for the Metalness Workflow
    (Don’t worry…we can stil use maps designed for the “Specular Workflow”)

PRINCIPALED SHADER…what map goes where???

  • Metalness Workflow:
    Maps:
    Base Color > Base Color
    Roughness > Roughness
    Metallic > Metallic

  • Specular Workflow 1:
    Maps:
    Diffuse (Albedo) > Base Color
    Glossiness > color invert node/ColorRamp (inverted on) > Roughness
    Specular > Specular
    or alternatively:
    Specular > Nothing…just add “Clear Coat” (for new/finished mats)

  • Specular Workflow 2 (Pixelgrip’s converter Node):
    Maps:
    Diffuse (Albedo) > Converter > Principeled shader
    Specular > Converter > Principeled shader

remember,the clearcoat is a seperate layer,that gets added on top of your material if you increase the clearcoat slider.
usally if you load texture packs from materials,never is a clearcoat included or needed.its just a artistic option if you make a carpaint or something similar.

btw do you have a specular workflow texture pack for testing,ideal same workflows packs (specular pack and metallic pack) for check against each other?

Tnax for reminding.
in this case I thought trying clear coat as a realtime specular thingy for newer materials.

No but I was also aiming for the Arroway textures, u guys covered that pretty much.

I practically always use only color, roughness, normal and alpha. The formula and the table sometimes help when something looks wrong, but I don’t know why. For me, Blender is an artist’s tool, so things have to look cool not physically correct. :wink:

Agreed!

How it looks at the end is what most important.

I’m mostly focused on ArchViz. Eventhough I want to achvie a realistic look…I’m not that concerned with ultra realism. But it helps if for a big part you can achieve realism by just using the tools at our disposal right.

You can kinda “abuse” clearcoat and clearcoat normal to get things that look a bit like highly figured or quilted wood which can be fun

Blender uses mostly the Metalness Workflow, so you can forget about the Specular Maps.
Maybe this will help.
https://help.poliigon.com/en/articles/1712659-the-differences-between-metalness-and-specular-workflows
All other maps in the PBR workflow should give enough realism.

Its indeed good to point this out:

The thing is sometimes you’re dependent on what maps a material offers (sometimes all of the maps for both workflows). So based on that its good to know how to use which maps.

But now I’m a bit confused again about this specular map thing. Because yesterday I was convinced that that was a older workflow. But its actually more dependent on what workflow the renderer uses, both are “PBR” workflows.
Or is there something like a old and new specular map type (Arroway textures for example)?.

  • This is more technical now, but i think that as far as the question of this topic goes, it’s answered.
    So if you guys agree, I’ll edit 1st post with this answer: