(Based on UE4 version 4.11.2)
UE4 only supports the metallic/roughness PBR workflow. PBR metallic/roughness is the default shader in Substance Painter.
Using the Unreal Engine export preset, you can quickly export maps with packed channels for optimized use in UE4.
Triangulate your mesh before exporting it from your 3D application. The Substance Painter triangulation of polygons doesn't match the triangulation made in the Unreal Engine. Therefore it is important to triangulate before baking and exporting to keep normal maps synced.
Substance Painter Export
- Right-Click and choose Export Textures.
- Choose the Unreal Engine 4 (packed) preset option.
Unreal Material Setup
- Import the textures into your project.
- Double-click the OcclusionRoughnessMetallic packed texture and in the Texture Editor, uncheck sRGB.
Open the material in the Material Editor and assign the maps as follows:Substance Painter TextureColorspaceUnreal Material Channel
Base Color sRGB Base Color OcclusionRoughnessMetallic (Green Channel) Linear Roughess OcclusionRoughnessMetallic (Blue Channel) Linear Metallic OcclusionRoughnessMetallic (Red Channel) Linear Ambient Occlusion Normal Normal Normal
For the best results, you need to make sure that your reflection environment is setup correctly. You can find detailed information in the Unreal Documentation.
- Create lights in the scene. You can also choose to use a Skylight and set a custom HDRI cubemap (.hdr format) for the Source Type by using SLS Specified Cubemap.
- Add Reflection Probes.
FBX Mesh Import - Tangent Setup
When using Substance Painter maps with UE4 where the normal is baked in Substance Painter, it's best to use an FBX that does not contain tangents.
When using an FBX in Substance Painter that does not contain tangents, Substance Painter will use mikktspace for the tangent basis. When Importing the FBX into UE4, you should set the Normal Input Method to Import Normals and the normal generation to Mikk TSpace.