Substance based normal maps

I’m having an issue when using maps baked in substance designer or b2m where applying normal map compression causes problems with the lighting on the model. Has anyone else encountered this?

Hi,

Would you mind checking if the sampling method in the texture node fro your normal map inside the material is set to “normal” ?
I had this issue myself in the past when I loaded a texture in a material that wasn’t set yet on the normal map compression method. When I changed this later, the shader didn’t update the sampling method and was still set to color. This means that when you are in “color” sampling half of your normal texture is ignored for computing the lighting on your shader and gives this strange result.

That fixed it. I’m still having issues getting other map in. For example, my base color has to be imported as a tif and my ao has to be a png. My understanding is that there is some sort of compression issue between SD and UE. Thanks for the help.

Cool, I’m glad it worked. :slight_smile:

Try to set your textures as absolute “8 bits” before exporting in png, that should fix some color issues you might be having (you can add a transform 2D node before an output node for example to do that). 16bits png are not imported properly in UE4 unfortunately. Grayscale textures are not properly imported too, you might want to convert them to RGB before exporting, via a gradient map node for example.

Would combining the metallic, roughness, AO, and height maps into one color map work or would that result in some other compression problems using the default compression settings?

You shouldn’t have problem combining these map this way. :slight_smile:
Just don’t forget to uncheck the “sRGB” setting.

I myself merge my metallic mask in the blue channel or my roughness map for example.

Everything’s working fine now. Thanks for the help.

export to a format that doesn’t support compression. there are all kinds of weird things about Allegorithmic’s exports. They make a lot of default assumptions for you that are very annoying. I have found that BMP is best if you can get away without needing an alpha. and if you need more than 8 bit support always use EXR.

Would you mind explaining a bit more what are your issues ?
I’m not sure the fault is always on our side, the editor/engine also doesn’t import properly some file formats.

Is there a way to disable sRGB on a texture created by a substance in UE4? I’m using the 4.6 preview and the 4.6 substance plugin.

For the moment you can’t edit directly the settings of a Texture2D generated by a Substance. However you can use two tricks :

  • Use the sRGB/Linear node in Designer to pre-convert your texture before connecting it to you output. But I understand it’s not practical with the 3D View.
  • You can copy and paste the sRGB properties from one texture to one another. It’s a hack. Just right-click over the checkbox in UE4 from an other texture and and paste it in your substance output.

The copy paste trick worked, but is less than ideal. I’ve also noticed that normal maps generated by substances seem to be very low resolution. Normal maps manually imported as png files seem to work fine though.

By really “low resolution” you actually mean the quality or the size ? If this is about the quality that’s because we use a different compression format for our normal maps, one that can be generated very fast at runtime when you tweak a substance parameter.
Our plug-in is still a work in progress and all those little things will be better in the future. :slight_smile:

This is a 2k normal map and you can see very distinct pixels. For now I think I’ll stick to manually importing my textures. Thanks for all your help.

Electric, would you be able to grab the latest release of the plugin and let me know how you fare? I noticed Normal Maps were being converted to sRGB and that may be causing these quality issues.

I’m using substance plugin 4600_Win on the unreal 4.6 preview build. My normal maps aren’t set as srgb, but everything else is imported that way. I have to manually deselect it for my other maps.

I’m using substance plugin 4600_Win on the unreal 4.6 preview build. My normal maps aren’t set as srgb, but everything else is imported that way. I have to manually deselect it for my other maps.
[/QUOTE]

Would you mind sending me some assets (sbs/sbsar) that reproduce this issue (by mail , or here by PM) ? It’s the first time I see this “error”. I would like to see the result at work and even fix the bug on our end. :slight_smile: