Roughness Mapping


i am trying to create some specular maps.
However i don’t succeed.
What am i doing wrong in setting it up ???
Here is a screenshot.


As far as i know the specular node becomes useless if you connect metallic and roughness other than that your setup looks okay. I would suggest that you connect metallic with a scalar parameter, and also turn the 0.1 and 0.2 into parameters (right-click convert to parameter). Afterward simply create a material instance (right-click on the material - create material instance) and than if you apply the material instance to an object you can tweak the settings without recompiling inside the material instance.

I followed your advice but i get no specular highlights. Hmmm… this is strange.

Do i have to use the metallic shader for roughness mapping?
Isnt there a differnce between glossy and metallic shading?

How do i enhance the specularity?
It is very weak although the sun is shining bright.
Can only see it if i place a bright point light.

Not exactly sure how Unreal handles it, however if you want the most realistic result it´s highly recommended to use metallic/roughness. Klick me.

Have you tried adding a sphere reflection capture?

Setting the brightness in the screen reflection actor tab helped quiet a lot. Thank you. :slight_smile:
Also my spec texture didnt had an alpha channel. Used instead a color channel.

Seems that you have already solved your problem, but I will write here some things you must pay attention when dealing with reflections.

Reflections depend on two factors: the material and the environment being reflected.

On the environment side, you must understand what your Reflection Capture Actors and the SSR are doing. Read this: Reflections | Unreal Engine Documentation

On the material side: no, Roughness doesn’t depend on Metallic.
When Metallic is zero, reflection brightness is controlled by Specular. When Metallic is one, Specular is not useful anymore and you can control the reflection brightness using the Base Color. But, in both cases, Roughness will continue doing its job: to control the blurriness/sharpness of the reflection.

Also, the thing about converting your constant to parameter: the only thing you really have to do to be able to see the changes in real time is to convert the constant to parameter and recompile the material. You don’t really need to create an instance material. But sometimes I have to change the parameter value and recompile one more time to make it work.