Creating a Substance compositing graph

This page explains the process of creating a new Substance compositing graph in Adobe Substance 3D Designer.

Methods of creating a Substance compositing graph

To start the process of creating a new Substance compositing graph, you may use one of these methods:

  1. In the main menu, open the File menu and select the New > Substance graph... option
  2. Press the Ctrl+N (Windows)/Cmd+N (macOS) keystroke
  3. Click the  New Substance graph button in the main toolbar
  4. On any existing package item in the Explorer, click RMB and select the New > Substance graph option in the contextual menu.

You'll be presented with the New Substance graph dialog, see below.

New Substance graph dialog

Regardless of the method used to create a new Substance compositing graph, you will always be met with the New Substance graph dialog which lets you configure the new graph.


The Templates section allows you to select a graph template, which include preconfigured nodes to get you started with your graph faster. The preconfigured nodes includes Output nodes, simple nodes to pass values to these outputs - e.g. Uniform color, and also Input nodes depending on the template.

To start from an completely blank graph, select the Empty template.

The Project option lets you filter the templates list by Project file. This makes it easy to find the custom templates in the locations added under the General section of the Project settings for the project file.

If you select the wrong template, you can not switch to a different template after creating the graph.
To port your existing graph to another template, you may create a new graph using the appropriate template, and copy-paste your graph to the new one. Reconnect nodes as appropriate, Output nodes in particular.

The templates list can be displayed in different modes using the buttons next to the Project combobox:

  •  Display recently used: filters the list to display the last templates used in order from most recent to least recent, the top item being the most recent
  •  Display graphs: templates are displayed by their label only, in the order of the Substance 3D files in the templates directory
  •  Display Substance 3D files: tempaltes are displayed by their label as children of the Substance 3D file they belong to, in the order of the files in the templates directory
  •  Display directories: templates are displayed by their label as children of the directory they belong to, in the order of the files in the templates directory


The Graph Properties section allows you to set up basic information regarding the new graph. Any of these can be changed afterwards at any time, but it makes sense to pay attention at first and set these up appropriately for your use case.

  • Graph name: the graph's identifier. It needs to be unique for a given package and cannot include spaces and some special characters.

  • Parent size: the graph's parent resolution, which will control the output resolution of most nodes - see the Output size page to learn more. The width and height are linked together by default, and you can unlink them by clicking the link button between the width and height combo boxes.

  • Output format: the graph's parent bit depth, which will control the value precision of most nodes. For instance, this controls the ability of a node to output smooth gradients, or negative values. Learn more about the Output format and in the Visible stepping/banding item of the Technical issues section.

  • Create graph in package: You can use this combo box to create a new package for the new graph, or add the new graph to any existing package already loaded in the Explorer panel.

    If the creation process is started using the method 4 (see above), this parameter is preset to the existing package the process was started from.

  • Template details: this section provides information about the graph as preconfigured by the template.

    • Type: the graph type, which is used for interoperability purposes such as letting other Substance 3D apps know what this graph should be used for

    • Description: a short text explaining the characteristics and purpose of the template

    • Outputs: the list of outputs included in the templates

    • Inputs (if present): the list of outputs included in the templates