What a Substance material is
A Substance material is a parametric material and not a static, “dead” texture. It means that the author of the Substance material can decide to expose parameters in order to give control to the final user.
For example, it's possible to change the amount of dust on an object, or the color of a soccer team jersey. Your talent and your imagination are the only limits to what you can do.
The materials can be 100% procedural and created in Substance 3D Designer, or be created via a scan or a picture. A layer of procedural details can be added on top of the scans, or several scans can be merged to create a completely new material.
A Substance material can be published, then used in any external application that handles the Substance Engine (such as Unity or UE4). Not only will you get the generated textures, but all the exposed parameters remain available, and modifiable. You will be able to make changes to your material until the last minute, without having to redo the texture from scratch.
If you create a Substance material that is 100% procedural, the file will be extremely light. This means that you can dramatically reduce the amount of space dedicated to textures in your project.
Image: "Rock Substance 003" by Lennart Demes (link)
How to expose a parameter
When you create a material using Substance 3D Designer, you can choose to expose parameters, such as the amount of an element, a color etc.
Once exposed, this will allow the user to modify those elements directly in the application where they will be used, such as Substance Painter, UE4 or C4D. This allows to modify the material quickly in the end application, and to have a lot of different looks and uses for one asset.
Learn more about how to expose parameters in Substance 3D Designer here.
How to use and create material presets
When creating a material with a lot of parameters, you might want to create shortcuts to certain states of your material. For example, you might want to have an easy way to go from the clean version of your floor material to a dirty and dusty one, or to one of a different color, but that involves changing several parameters.
Presets give the user the ability to pre-configure values for a set of parameters.
Learn more about how to create presets in Substance 3D Designer here.
How to optimize a graph
When creating materials using Substance Designer, the more complex your graphs are, the more processing power you need to render them.
It is not always an issue depending on where you plan to use the materials you are creating, but if they are used on mobile or there are embedded bitmaps, it can be key to have a good experience.
This is why ideally you should try to strike a balance between complexity and rendering speed.
You can find some guidelines to help you achieve the best performance here.
Automatic asset analysis
When you upload a material on Substance 3D Community Assets, the platform will perform an automatic check to make sure that the asset is working, complete, and does not contain anything dangerous for the end user.
It checks a few elements:
- The material needs to have a minimum of the following outputs:
- Base Color
Metallic is expected but not mandatory.
- The output size must be set as dynamic.
- It must be possible to create a render for the material.
Automatic Thumbnail Render
For all materials uploaded on the platform, the thumbnail is automatically generated during the upload process.
In order to create the displacement, it takes into account the physical size set in the sbsar itself, so don’t forget to set it when you create your material!
It is usually set in centimeters.
More than the physical size itself, what is the most important here for the render is the ratio between the width of the material (x and y) and its height (z).
For a flat parquet material it could be 200 200 0.5 (2 meters wide, half a centimeter between the deepest visible point and the highest one of the material), for a vinyl it could be 25 25 0 (25 cm wide, completely flat), for an old eroded stone wall it could be 150 150 9 etc.