Substance Painter - How to use a Layer on multiple Materials with "Instantiate across Texture Sets"
In this short tutorial we will see how to use a Layer (be it a Fill Layer or a Substance Material) in multiple Textures Sets in a Substance Painter project.
The tutorial was created with the 2019 version of Substance Painter but is also valid with previous and later versions; it is a basic tutorial, but which takes note of the concepts explained in the videotutorials previously published in this Playlist (ie: "Substance Painter").
To see what the "Instantiate across Textures Sets" function is, what it can be used for and how to use it, let's start with a concrete example, which I am now showing on the video: a scenario in which there are multiple Textures Sets (associated with various objects) to which we want to provide a Layer, the same for everyone; in this case, it is a noise Layer, obtained by multiplying a Texture Clouds to the Layers below it, as explained in the videotutorial "Substance Painter tutorial - How to add some randomness to a tiled Material".
In this case, instead of copying and pasting the Layer in all the Textures Sets, we can proceed as follows: we define the Layer (or the Material) for a single Textures Set, then right-click on that Layer and choose "Instantiate across Textures Sets", to create an instance on other Textures Sets ... pay attention to the term: "instantiate", not "copy"!
The difference between the two terms is that the copy creates a separate element, which can be modified individually, so the original and the copies will not affect each other; on the other hand, the instance creates duplicates (therefore called "instances", not "copies") that will share the same information as the original item, so the instance one will be changed if and when the original one is changed.
It goes without saying, therefore, that the instance is to be preferred to the copy when we want to apply the exact same effect on more surfaces; in the case that I am showing you on video, the UV islands of the various maps have comparable dimensions and, above all, the Layer I want to instantiate is a generic noise Layer (it does not have logos, ornamental motifs and other effects where the dimensions or proportions, on the various Textures Sets, are important), so the instance suits me.
Here I am showing the use with a simple Fill Layer, but "Istantiate across Texture Sets" also works with Materials, Smart Materials and folders, so what was said here also applies in those cases.
Ok, back to our practical example: after selecting "Instantiate across Texture Sets", we will have to specify in which Textures Sets of the project we want to create instances of the original (and, by the way, by default the original Texture Set will appear as deselected, but we can select it to insert an instance there too, in addition to the original Layer); in my case, I'm going to select all Textures Sets, except the original one (because I don't want to duplicate the effect there).
A new icon will appear next to the original Layer, containing two overlapping white squares: this icon serves to remind us that that layer is the original instantiated by other Texture Sets; in the other Textures Sets, we will have a similar icon for the instances, but with two overlapping empty squares.
The changes will then be made in the original Layer and will be immediately visible in those with instances.
Warning: deleting the original layer will cause the deletion of all its instances in all the other Textures Sets; on the contrary, the removal of an instance will not lead to the elimination of other instances (let alone the removal of the original): there is a real hierarchy, therefore.
Well, for this very short (but, I hope, useful) videotutorial, that's all! See you soon!