To correctly use textures from substance painter
in unreal engine, there's a few things we have to be aware of. First up in substance painter,
File > Export Textures. This will make a little pop-up appear where you can change a few things.
First up, make sure this output directory is going somewhere you know. Underneath that, you
have output template, we want to use 'Unreal Engine packed' this is the most efficient way to
export our textures as it packs our metallic and roughness maps together. You'll see the maps
that are exported out in the console here. Moving over to unreal engine now, we want to
import our model and our textures. Select import in the content browser here and find your model
first, this will be the obj or fbx that you used to texture in substance painter. The default
import settings here should be fine just make sure this material import method says create new
materials. If you've got an object made of lots of little objects, in advanced you can find combine
meshes, just makes it a little bit simpler. Select import and you should see your model now in your
content browser. Next up we want to import all our texture files that we just exported out
of substance painter. This should come in pretty easily, you can do this all at once and I'd
recommend making a folder system if you're working with lots and lots of different materials. In your
unreal project you should now have your model, a material and then all the texture maps. To
get it to look like substance painter we're going to have to add all the texture maps to
our material that got imported with the model. Double click on the material in your content
browser and you'll be able to start editing it, you may have slightly different maps than I do
here. These are the most common ones you'll have, base color, emissive, normal and then a mix map
of ambient occlusion, roughness and metallic. We want to double click on this one and look for
sRGB on the right, we want to turn that off. This is so unreal can recognize this as a linear color
texture, as you can see here it's actually three maps hidden in each of the color channels.
Red is ambient occlusion, green is roughness and blue is metallic. Returning to the material
now we're going to drag and drop all the textures into the material graph here. Make it easy
for yourself and try to make this look as neat as possible. From here it's just about
connecting up our textures to our material node, this is pretty self-explanatory as it's usually
just name to name so base color goes into the base color etc. With the mix map just remember that
it's split up so the green channel goes into the roughness and the blue channel goes in metallic,
you can usually ignore the ambient occlusion map, you can plug it in but a lot of the time you're
not going to use it anyway. Save the material and then return to your viewport and you should
see now that your material has updated. It should look pretty similar to your substance painter file
now, if anything does look wrong it's most likely changing that linear color on the roughness
metallic map or plugging things into the wrong area. As a bonus let's see how we can make
a parameter here to control the intensity of our emissive. Make a bit of space for yourself and
add a multiply node, you can right click to search or for multiply you can also just hold M and left
click on the screen. connect the RGB to the A and the output to the emissive color. In the
B slot we're going to add a scalar parameter, hold S and left click on the screen for this one.
This parameter is going to control how bright our emissive gets, so call it something like emissive
intensity. Connect this up to the B slot in our multiply node and then head over to left to change
some of these settings. Make the default value 1, slider minimum 1 and then slider max something
like 100. with this connected we want to save our material and this will give us a little slider
hidden in our material parameters that we can increase to make our emissive a lot brighter.
Since this is a parameter we can do this in real time so if you pull out your material graph so you
can see your viewport as well, then just make sure you find this parameter section and you'll be able
to increase it and see the results instantly. Your material should now look exactly like it does in
substance painter and you'll just have to repeat this process for any other models and materials
that you want to put in your unreal scene!