Substance Painter 2019 fundamentals - Introduction to PBR, Materials and Textures
This is my first tutorial on Substance Painter 2019. Before starting, a note about the Assets, or 3D models, materials, project files and, in general, the resources used in the tutorials: in this and other tutorials I will do use of my own or others' resources and I will put the links to these resources in the text, so - if you want - you can retrieve them, for example to reproduce the operations described in the tutorials on your behalf, but you will not need to have them to learn, in the sense that all the information needed to learn a concept or theme will be described in one or more tutorials; you won't need to buy Premium packages and I won't tell you "to learn more, buy this ebook / this set of scripts" or anything like that.
Well, given these premises, let's start!
- WHAT ARE THE MATERIALS
- THE PBR PARADIGM: PHYSICALLY BASED RENDERING
- THE 3D MODEL USED IN THIS TUTORIAL
- THE MAIN INFORMATION CHANNELS OF THE PBR METHOD
- THE METALLIC CHANNEL
- THE BASE COLOR CHANNEL
- REPLACING IRON OLD WITH A PURE METAL
- THE ROUGHNESS
- ADDITIONAL CHANNELS: NORMAL AND HEIGHT TO SIMULATE THE DETAILS
- TO RECAP ...
Voice: ITA - Subs: ENG In the video embedded below there are (my) Italian voice and English subs; be sure to turn on the CC and set the subs (font, opacity, etc.) as you like.
Voice: ITA - Subs: ENG
In the video embedded below there are (my) Italian voice and English subs; be sure to turn on the CC and set the subs (font, opacity, etc.) as you like.
If you are here, you probably already know that Substance Painter is a program that allows you to create Materials and Textures for 3D models; the 3D model files must therefore be imported into Substance Painter and, here, it is possible to create Textures images, mapping them to the geometries, and export these images, so the object can be used, provided with Textures, in game engines (such as Unity or Unreal) to create video games or even applications with virtual or augmented reality, in animation and rendering software (such as Blender 3D, 3D Studio MAX, Maya), or to real-time 3D visualization systems on the Internet (such as Sketchfab) and even more.
Before continuing (indeed: before even talking about the interface of the program or importing a 3D model into a new empty Substance Painter project), we must therefore say what is meant by Material (every now and then I will say Material, since in the menus of Substance we find, between the various items, Material and Smart Material).
A Material is a set of information that, given to a 3D object, defines how this will behave when illuminated and rendered in a virtual scene. Rendering (the final image visible on screen, both statically and in real time) is in fact the result of the interaction between light and surface in a virtual scene, so we have light sources on one side (of various types : from the virtual lamps to the enlightening environmental Textures) and on the other the surfaces (or, in some cases, the volumes) of the objects; to this first result it is possible to add the post-production but, as the name implies, those are actually effects and filters applied to the result AFTER the rendering process.
Ok, so a Material is a collection of information ... but which ones?
Depending on the theoretical model (or "schema", "method", "paradigm") used for rendering, it is possible to specify various types of information, each with its characteristics; Substance Painter, in particular, allows us to define Materials that follow the Physically Based Rendering model (PBR; sometimes you will also find PBS, which stands for Physically Based Shading, with reference to the surfaces of objects, of course).
In this tutorial we will not go into too much detail with the PBR theory, which we will see in a dedicated Tutorial; here, we will see only what they are and, above all, how they combine with each other the fundamental Textures we need to define a PBR Material in Substance. We need to understand these things in order to be able to create and customize our Materials with confidence, without guessing while we modify the parameters of this or that information channel of a Material.
To avoid making this tutorial too theoretical, I will talk about the fundamental elements of PBR and how they translate into Substance using a 3D model already provided with Materials and textured in this program; here is the link to this resource (which contains, in a ZIP archive, both the 3D model in FBX format and the Substance project that I am using in this tutorial, as you see it):
the package does NOT contain, instead, the textual version of this tutorial; however, as mentioned above, it is not necessary to have this package (3D model and Substance project) to learn from this tutorial.
The Physically Based Rendering paradigm, as the name suggests, is based on a physical approach, based on what happens in the real world.
You can specify the Materials with two working methods: Metallic and Specular; in the first case, we must distinguish the surfaces between metallic and non-metallic and, starting from this distinction, all the other channels behave differently; in the Specular case, instead, we define the intensity and the possible color tint of the specular reflections to determine how the light that interacts with the surface of the object will behave.
In particular, in the PBR Metallic working method (the one used in this example), the appearance of a surface is given by some features, the most important of which are:
- its nature, in particular by first distinguishing whether it is a metal or a non-metal (or: "dielectric");
- its "Base Color" (basic color), which in a metal object indicates the intensity of light reflections, while in non-metallic objects it actually indicates the base color of a surface, without lighting effects;
- the level of smoothness ("Glossiness", which literally means "shine"; the opposite of the "Roughness") of the surface, in its various points.
To these characteristics, observed in the real world, some are added that are convenient in the virtual world; for example, through special Textures images such as Normal Maps or Height Maps it is possible to simulate the presence of details without modeling them on the geometries (in order to save vertices, edges and faces - and, therefore, computing resources in the rendering phase, above all in video games and other real-time applications).
The wooden barrel that I am using in this tutorial allows us to examine, in a single object, how this basic information translates into Textures and combine them into a Material of Substance.
To view the preview of the complete Material applied to the object in the 3D window, I press the M key (Material, in fact), or I choose Material from the drop-down menu at the top right in the 3D window.
As you can see, we have both metallic (iron) and non-metallic (wood) elements, which will allow us to appreciate the differences with which these two types of materials are treated, in the definition of their base color and the colors of the specular reflections , in the PBR paradigm.
To view the individual information channels (which are translated into as many Textures images applied to the surface of the object), we can press the C key several times or choose the channel that interests us in the drop-down menu at the top right in the 3D view.
Let's start with the Metallic channel, which defines which parts of the Material are to be treated as metal and which are not, in particular by means of a grayscale image, where white is used for a pure metal and black for a pure non-metal; in the case of the barrel we also have grays because the material used for the metal parts, "iron old", must represent - as the name suggests - the old, worn iron, perhaps with dust or rust that lower the "metallicity" , just saying.
The wooden parts, on the other hand, appear to be absolutely black, or rather not metallic, as it should be.
Let's move on to the second fundamental channel of the PBR, or Base Color.
As you can see, this information channel presents the basic color of the object through a Color Texture, without lighting or shading effects: these are "flat" Textures, so to speak. The colors of the metal parts and of the wooden parts have similar intensities: the color is different, it is true, but they do not seem so radically different, in appearance, even if they belong to completely different substances ...
The reason is that the distinction, during the shading and rendering processes, is made by Substance using the Metallic channel (and its Texture), which tells Substance that the light reflections must be managed differently depending on whether they relate to a metallic or a non-metallic surface: the grays of the Base Color of the metal parts in fact define the intensity of the light reflections (and any color tint) to be given to these reflections.
The Iron Old material is a "dirty" material, so the effect is not appreciated much, but look at how things change, in the various channels and in the final result, if between the material of the wood and that of the metal I insert a Material "Aluminum Pure "by Substance and if you disable the Iron Old material below:
in the final result (while viewing the Material, which makes up all the information channels), the metal parts appear MUCH more reflective than before:
in the Metallic channel, the metal parts are in pure white: it is a very pure metal;
in the Base Color channel, the metal parts are almost white: a sign that in those points the intensity of the specular reflections will be maximum and there will be no color tint.
Now look at what happens bringing to zero the value of the Aluminum Pure parameter: the "bands" have turned white, they no longer reflect as before, they look like white plastic objects.
We now set Metallic to 1, but we lower the value of the Base Color: the bands maintain the typical "reflectivity" of the metal, but become gradually darker.
The point is: in the Metallic Workflow, like this, the Base Color of an object is not enough, on its own, to define how and how much a surface will be reflective, because it must specify whether it is a Metal or not; in a metal, the intensity of the Base Color is also the intensity of the luminous and specular reflections, while in a non-metal the Base Color defines only the color proper to the surface, as happens on the wooden parts of the barrel.
I'm leaving the Aluminum Pure material activated and Iron Old deactivated to show you the effects of the third fundamental channel of a Material: Roughness.
Roughness, as opposed to smoothness, is represented, like the Metallic map, with a grayscale image, where white is the maximum roughness, while black represents a completely glossy, perfectly reflective surface; in fact, a perfect mirror is implemented in the PBR with a metal material with pure white color and Roughness 0, as visible.
By increasing the value of Roughness we will make the surface less smooth and, therefore, this will make its reflections more "diffuse" (blurred, in a sense). This applies to both metals and non-metals.
Now I am removing the Aluminum Pure Material and I am reactivating Iron Old to return to the original configuration of the project and take a look at some "extra" information that, in Computer Graphics, allows you to add details to the surfaces being rendered; that is, without having to physically model them on the geometries.
I then select the "Normal + Height + Mesh" item from the selector at the top right of the 3D window.
This view shows the combination of multiple information channels that influence the simulated details on the surface of an object; without these details, the surfaces of the object would appear smooth, not very credible, especially in the wooden parts.
In particular, in the example that I am showing on the screen, the details of the surface are mainly implemented, in the wooden parts, by the "Fibers" level; to observe the differences in the appearance of the surface with and without that information, it is sufficient to disable the relative levels in the Layers tab, observing the differences both in "Normal + Height + Mesh" mode and in "Material" mode, in the 3D View. The differences become more evident if the object is illuminated with "oblique", rather than frontal, lighting.
Effects of this kind are also present in the metal parts, implemented through the Height and Normal information channels of two Iron Old layers (Iron and Edges); as can be seen, these Textures make some surfaces much more interesting which, in their absence, would end up being unlikely, because they are too "smooth", "leveled" in a certain sense.
A Material is a set of information, implemented through images (some in gray scale, some in color) mapped on the surfaces of the objects, combined together according to a criterion, which in our case is the PBR Metallic paradigm; this information defines the way in which the surface of the object and the light sources interact to produce the final image.
The PBR is based on the characteristics of the materials observed in the real world and implemented, in Computer Graphics, by appropriately combining the Textures that represent these characteristics.
The PBR method provides two work schemes ("workflows"): Metallic and Specular; in this tutorial we saw an example following the Metallic Workflow.
In the PBR Metallic Workflow, first we must define, using a grayscale texture, whether the parts of a surface will be metallic or not..
In the metal parts, the Base Color information (a Color texture) defines the intensity and the eventual color tint to give to the specular reflections; in non-metallic parts, Base Color is just the surface's own color, without lighting or shading effects.
Roughness indicates the degree of roughness of a surface; with a low Roughness the reflections will be very well defined (the material will behave like a perfect mirror, in a metal surface with a white base color), while with this value the luminous reflections will be more and more widespread, blurred; it is opposed to glossiness (the "shine").
The Normal Textures (color images) and the Height Maps (particular grayscale images) allow you to simulate the presence of details on the surfaces when viewing and rendering objects; they are useful for saving geometry and, therefore, computing resources, especially for real-time applications such as video games or virtual or augmented reality apps.
Well, for this introductory tutorial on the basic elements of PBR, Materials and Textures in Substance Painter, we stop at these first four information channels; I will make other tutorials in which I will examine some channels individually (such as Height or Ambient Occlusion, for example) or, on the contrary, I will examine all the channels of a complete Material (to see how they combine to achieve particular effects), depending on the case.
See you soon!