Understanding Graph Instances / Sub-Graphs
What is a"Graph Instance" or a "Sub-Graph" ?
Graph Instances and sub-Graphs are two synonyms. It's a graph that has been packaged together and turned into a reusable, standalone resource. Creating Graph Instances is mostly done internally inside Substance Designer to make a new Node that can be used again in other graphs. Publishing involves and additional step to export to SBSAR format, making your Node-network Graph usable outside of Substance Designer, such as when you create a Material for Unreal Engine, a Filter for Alchemist or a Generator for Painter.
Why should I use Graph Instances?
Because they can save you tremendous amounts of time, allowing you to work much more efficiently. Any time you are duplicating one or more nodes in Designer, you could probably use Sub-Graphs to make things easier; once more than one node or more than a few parameters are involved, sub-graphing is the way to go!
How do you create a Graph Instance?
Every Graph is always usable as an Instance, if set up correctly. Just drag it from the explorer into another graph. To quickly take nodes out of a graph, use the right-click menu option "Create Graph from Selection", see below.
Minimum correct set-up means there has to be at least one output in your graph. For any more control, one should add Exposed Parameters and Input nodes.
If you want a sub-graph to be usable outside of Designer, you will have to Publish your package (containing the Graphs you want to use).
Can I add my own Graph Instances to the Node Library?
Yes, this is possible, but it requires some specific set-up. It is not entirely a beginner-friendly process. See Pipeline and Project Configuration, specifically Creating Library Filters For Projects.