Author Topic: Does SP invert normals automatically?  (Read 302 times)

 Good day. When creating a new project in the Substance Painter there's the dropdown menu to choose the normal format.

 1. If I choose, say, openGL, will SP automatically convert all the materials' normals to that format? Will it convert to it only when the export is done? Will it convert them at all? How does it work specifically?
 2. Let's say one of my materials created via Substance Designer is with OpenGL format, and the second one is DirectX. I am importing both to SP a) How would SP handle it? Will it detect which is which when creating a new project and specifying the normal format? Will it just invert Y across all the materials regardless of the input texture? b) What normal format will be displayed in the viewport during the painting?

 Thank you for your time. Regards.
 Substance Painter version: 2017.3.3

 P.s. Is there any easy way to tell apart or otherwise detect which normal format was used to create a normal map?
 

SP considers all materials you bring in as having Dx normals by default, and it will convert it automatically when generating the substance depending on your project settings, so everything you see in SP will use the normal mode chosen in the project settings.
Substances that have a OpenGL normal format by default will display incorrectly though.

 Crystal clear, thank you for the reply.

Quote
Substances that have a OpenGL normal format by default will display incorrectly though.

This sounds like a bug... is will this be changed in a future release?

Quote
Substances that have a OpenGL normal format by default will display incorrectly though.

This sounds like a bug... is will this be changed in a future release?

not a bug -  you have to make sure, not to mix open gl and dx resources. the only difference between the two is the green channel (flipped) - so if you have different formats (for whatever reason), just flip the green channel of your open gl normal map and it is ready to be used in a dx project