Substance Painter is a 3D software from Adobe that offers tools and resources for creating high-quality textures for 3D models to make them look realistic. The 3D models are usually rendered in any 3D rendering program like Autodesk Maya, Blender, or more, which can then be imported into Substance Painter for finishing touches.
I was introduced to Substance Painter when I attended Champlain College in Vermont as a Game Art & Animation major during my freshman year and took a class on 3D modeling and texturing during the second semester which was in the Spring of 2018. As you can see in my chair model, there are several metallic and roughness textures that are applied.
From my recollection, once a 3D model is imported into Substance Painter as a .FBX file, it is best that the model should be baked before anything else, which can be done via Bake Mesh Maps, which can be found under the Texture Set Settings in Substance Painter. Texture baking is basically the process that allows details to be transferred from one model to another, although it is very complicated. From my understanding, in order to successfully bake, you should have at least two of the exact same 3D models handy that you want to texture, except one version of the model should have a low poly count while the other version should have a high poly count. The reason why it is best to have a high poly model handy is so that in the pop-up window that appears which consists of all the baking settings prior to baking your model, there is an option for High Definition Meshes, which is where you want to insert your high poly .FBX file, under where it says High Poly Parameters. Therefore, your model will be more detailed once it is finished baking.
There are a lot more steps to the process in terms of texturing and exporting your finished product which I cannot exactly remember, although hopefully I will revisit this program someday and will be guided through all the steps once again!