User Guide Cancel

3ds MAX Scripting API | Ecosystem and Plug-ins

  1. Substance 3D home
  2. Ecosystems and Plugins
    1. Home
    2. Game Engines
      1. Unreal Engine
        1. Unreal Engine 5
          1. Unreal Engine 5 overview
          2. Unreal Engine 5 Release Notes
            1. Unreal plugin 5.3.2
            2. Unreal plugin 5.0.3
            3. Unreal plugin 5.0.2
            4. Unreal plugin 5.0.1
          3. Plugin Overview - UE5
          4. Plugin Settings - UE5
          5. Substance Input Image - UE5
          6. Material Instance Definition - UE5
          7. Material Template Usage - UE5
          8. Out-of-the-Box Material Templates
          9. Tiling Substance - UE5
          10. Substance 3D Plugin Default Templates
          11. Substance 3D Assets Library Usage - UE5
          12. Blueprints - UE5
            1. Blueprint(UE5): Substance material parameters
            2. Blueprint(UE5): Dynamic Material Instance Skip to end of metadata
            3. Blueprint(UE5): Aggregate Substance
            4. Blueprint(UE5): Node Reference
          13. Unreal Engine 5 Scripting
          14. Installing to Source Builds
        2. Unreal Engine 4
          1. Unreal Engine 4 overview
          2. Unreal Engine 4 plugin release notes
            1. Unreal plugin 4.27.0.1
            2. Unreal plugin 4.26.0.21
            3. Unreal plugin 4.26.0.2
            4. Unreal plugin 4.26.0.1
            5. Unreal plugin 4.25.0.5
            6. Unreal plugin 4.25.0.4
            7. Unreal plugin 4.25.0.3
            8. Unreal plugin 4.24.0.3
            9. Unreal plugin 4.23.0.2
            10. Unreal plugin 4.23.0.1
            11. Unreal plugin 4.22.0.33
            12. Unreal plugin 4.22.0.32
            13. Unreal plugin 4.21.0.31
          3. Plugin Overview - UE4
          4. Plugin Settings - UE4
          5. Substance Input Image - UE4
          6. Material Instance Definition - UE4
          7. Tiling Substance - UE4
          8. Working with Bump Offset (Parallax) - UE4
          9. Working with Displacement - UE4
          10. Source in UE4
          11. Live Link in UE4
          12. Blueprints - UE4
            1. Blueprint(UE4): Substance material parameters
            2. Blueprint(UE4): Dynamic Material Instance
            3. Blueprint(UE4): Aggregate Substance
            4. Blueprint(UE4): Node Reference
          13. Unreal Engine 4 Scripting
      2. Unity
        1. Unity overview
        2. Unity Release Notes
          1. Unity 3.0.0+
          2. Unity 2.6.0
          3. Unity 2.5.4
          4. Unity 2.5.3
          5. Unity 2.5.2
          6. Unity 2.5.1
          7. Unity 2.4.5
          8. Unity 2.4.4
          9. Unity 2.4.3
          10. Unity 2.4.1
          11. Unity 2.4.0
          12. Unity 2.3.4
          13. Unity 2.3.2
          14. Unity 2.2.2
          15. Unity 2.2.0
        3. Downloading Substance 3D Plugin in Unity
        4. Unity Plugin Overview
        5. Unity Preferences
        6. Optimization Guidelines
        7. Upgrading Projects/Known Issues
        8. Managing Substance Graphs
        9. Changing parameters
        10. Generated Textures (Packing)
        11. Rendering Color Space
        12. Using Image Inputs
        13. Publishing for Mobile
        14. Substance 3D for Unity Scripting
          1. Unity Scripting overview
          2. Class Documentation
            1. SubstanceEditorTools
            2. SubstanceRuntime Class
            3. SubstanceRuntimeGraph Class
              1. SubstanceRuntimeGraph Class overview
              2. Member Function Documentation
              3. Detailed Description
        15. Scripting in Unity (Deprecated)
        16. API Overview
        17. Scripting API
        18. C# Example Script
        19. Substance 3D Assets Library Usage
        20. Removing Substance Plugin
        21. Substance 3D in Unity Tutorials
        22. Physical Size in Unity
        23. Sharing sbsar Files Between Projects
      3. Lumberyard
        1. Lumberyard overview
        2. Importing a Substance
        3. Assigning a Substance
        4. Parameters and outputs
        5. Flow Graph API
      4. Roblox
    3. 3D Applications
      1. Maya
        1. Maya Plugin Release Notes
          1. Maya 3.0.0+
          2. Maya 2.4.1
          3. Maya 2.4.0
          4. Maya 2.3
          5. Maya 2.2.3
          6. Maya 2.2.2
          7. Maya 2.2.1
          8. Maya 2.1.9
          9. Maya 2.1.8
          10. Maya 2.1.7
          11. Maya 2.1.6
          12. Maya 2.1.5
          13. Maya 2.1.4
          14. Maya 2.1.3
          15. Maya 2.1.2
          16. Maya 2.1.1
          17. Maya 2.1.0
          18. Maya 2.0.3
          19. Maya 0.9.11
        2. Substance in Maya Overview
        3. Installation
        4. Substance Output Node
        5. Using Workflows
        6. Working with Outputs
        7. Procedural Sampling
        8. Presets
        9. Settings
        10. Arnold Support
        11. Apply Workflow To Maps
        12. Maya Scripting
        13. Physical Size in Maya
      2. 3ds Max
        1. 3ds Max Plugin Release Notes
          1. 3ds Max 3.0.0+
          2. 3ds Max 2.8.0
          3. 3ds Max 2.7.0
          4. 3ds Max 2.4.2
          5. 3ds Max 2.4.1
          6. 3ds Max 2.4.0
          7. 3ds Max 2.3.4
          8. 3ds Max 2.3.3
          9. 3ds Max 2.3.2
          10. 3ds Max 2.3.1
          11. 3ds Max 2.2.0
        2. Substance in 3ds Max Overview
        3. Substance Settings
        4. Using Presets
        5. Batch Import
        6. Using Workflows in 3ds Max
        7. Substance Source
        8. Animating a Substance material
        9. 3ds MAX Scripting API
        10. Troubleshooting
      3. MODO
        1. MODO overview
        2. Modo Plugin Release Notes
          1. Modo 2.7.3
          2. Modo v. 2.7.5
          3. Modo v. 2.7.4
          4. Modo v. 2.7.3
          5. Modo v. 2.7.2
          6. Modo v. 2.7.1
          7. Modo v. 2.7.0
        3. Substance in MODO Overview
        4. Modo Installation
        5. Parameters
        6. Custom Materials
        7. Working with Normals
        8. Working with Emissive
        9. Bump and Displacement
        10. Working with References
        11. Animating Substances
        12. Copy/Duplicate Substance
        13. Environment and Rendering Setup
        14. Modo Switch Engine
        15. Tiling Modo textures
      4. Cinema 4D
        1. Cinema 4D overview
        2. Set-Up
        3. Using the Substance Plugin
        4. Substance Asset Manager
        5. Substance Shader
        6. Attribute Manager
        7. Visual Feedback of Animated Substances
      5. Houdini
      6. Blender
        1. Blender overview
        2. Release Notes
          1. Add-on 2.0.0+
          2. Add-on 1.0.2
          3. Add-on 0.9.5
          4. Add-on 0.9.3
          5. Add-on 0.9.2
          6. Add-on 0.9.1
        3. Substance in Blender Overview
        4. Downloading and Installing the Plugin
        5. Preferences
        6. The Substance 3D Panel
        7. Shortcuts and Navigation
        8. Workflows
        9. Physical size in Blender
        10. Substance 3D Assets Library
        11. Troubleshooting
        12. Uninstalling the Add-on
        13. Substance 3D Add-on for Blender Tutorials
    4. Creative Cloud Applications
      1. Photoshop
    5. Renderers
      1. Converting Substance outputs
      2. Color Management
        1. Color Management overview
        2. Substance textures in Maya
        3. Substance textures in 3ds Max
      3. Arnold
        1. Arnold overview
        2. Arnold - Substance in 3ds Max
        3. Arnold - Substance in Maya
        4. Arnold - Substance Painter
      4. Vray
        1. Vray overview
        2. Vray Next - Substance in Maya
        3. Vray Next - Substance in 3ds Max
        4. Vray Next - Substance Painter
      5. Renderman
        1. Renderman overview
        2. Renderman for Maya
        3. Renderman - Substance Painter
      6. Redshift
        1. Redshift overview
        2. Redshift for 3ds Max
        3. Redshift for Maya
        4. Redshift - Substance Painter
      7. Maxwell
        1. Maxwell overview
        2. Maxwell - Substance in Maya
        3. Maxwell - Substance Painter
      8. Corona
        1. Corona overview
        2. Corona for 3ds Max
        3. Corona - Substance Painter
      9. Octane
        1. Octane overview
        2. Octane for 3ds Max
        3. Octane for MODO
      10. Keyshot
      11. Thea
      12. Maverick
        1. Maverick overview
        2. Substance Painter Integration
        3. Substance SBSAR Integration
      13. Toolbag
      14. Cycles and Eevee
        1. Cycles and Eevee overview
        2. Cycles and Eevee - Substance 3D for Blender
        3. Cycles and Eevee - Susbtance Painter
    6. Partnerships
      1. Substance 3D and Maxon One
      2. Substance 3D and Maxon One FAQ

3ds MAX Scripting API

Below is the list of commands and properties for the Substance 2 node.

Properties:

PropertyDescriptionType
nameName of the Substance2 Node. Default is “Substance2”String

Commands:

CommandDescriptionReturnReturn Type:Parameter

getCurrentPackageName

Get the base file name of the loaded package (sbsar file loaded in the graph node)

The file name (without the prefixing directory) of the loaded package (sbsar file)

String
getCurrentGraphNameGet the name of the current graphidentifier of the current graph instanceString
getOutputsNamesFromCurrentGraphGet the list of output usage names for enabled outputsTable containing list of channel names for enabled outputsList
getPresetIdentifiersGet the list of presets from the Substance graph

Table containing the list of string identifiers for all presets

List
setPackageAndGraphNames

Load a sbsar file from disk into the graph node

True on success, False on failure

Boolean

String parameter: substancePackageFilePath The path to the sbsar file on disk

String parameter: graphInstanceNameToSelect The string identifier of the graph

setInputInt

Set an integer input with a new value


Integer parameter: value Integer value to set the input to

String parameter: inputIdentifier The unique string identifier of the input

setInputFloat

Set a float input with a new value


Float parameter: value Float value to set the input to

String parameter: inputIdentifier The unique string identifier of the input

setInputString

Set a string input with a new value


String parameter: value String value to set the input to

String parameter: inputIdentifier The unique string identifier of the input

setInputBool

Set a boolean input with a new value


Boolean parameter: value Boolean value to set the input to

String parameter: inputIdentifier The unique string identifier of the input

setInputVec2

Set a vector input with two elements


Point2 parameter: value Max point2 value to set the input to

String parameter: inputIdentifier The unique string identifier of the input

setInputVec3

Set a vector input with three elements


Point3 parameter: value Max point3 value to set the input to

String parameter: inputIdentifier The unique string identifier of the input

setInputVec4

Set a vector input with four elements


Point4 parameter: value Max point4 value to set the input to

String parameter: inputIdentifier The unique string identifier of the input

setInputColor

Set a color input with a new value


Color parameter: value Max color value to set the input to

String parameter: inputIdentifier The unique string identifier of the input

setInputComboSelection

Set the currently selected value in a combo box input


Integer parameter: value Index of the combo box widget

String parameter: inputIdentifier The unique string identifier of the input

getInputInt

Get the input value for an integer input type

The current integer value of the input

Integer

String parameter: inputIdentifier The unique string identifier of the input

getInputFloat

Get the input value for a float input type

The current float value of the input

Float

String parameter: inputIdentifier The unique string identifier of the input

getInputString

Get the input value for a string input type

The current string value of the input

String

String parameter: inputIdentifier The unique string identifier of the input

getInputBool

Get the input value for a boolean input type

The current boolean value of the input

Boolean

String parameter: inputIdentifier The unique string identifier of the input

getInputVec2

Get the input value for a point2 input type

The current max point2 value of the input

Point2

String parameter: inputIdentifier The unique string identifier of the input

getInputVec3

Get the input value for a point3 input type

The current max point3 value of the input

Point3

String parameter: inputIdentifier The unique string identifier of the input

getInputVec4

Get the input value for a point4 input type

The current max point4 value of the input

Point4

String parameter: inputIdentifier The unique string identifier of the input

getInputColor

Get the input value for a color input type

The current value of the input as a color

Color

String parameter: inputIdentifier The unique string identifier of the input

getInputComboSelection

Get the index of the combobox selection based on identifier

The index of the selected combobox item

Integer

String parameter: inputIdentifier The unique string identifier of the input

getMaterialDependentCount

Get the number of material dependencies

The number of dependent references that are of a material type

Integer


ApplyValuesToSelectedPreset

Overrides the currently selected preset with the current input values



RemoveAllPresets

Remove all of the presets in the current graph node



CreatePreset

Create a new preset from the current inputs


String parameter: newPresetName Display name for the new preset

RemoveOnePreset

Remove the preset with the given name


String parameter: selectedPresetName Name of the preset to remove

ImportPreset

Import the sbsprs file into the current presets


String parameter: filePath String containing the file path to import the preset from

ExportPreset

*deprecated To remove in 2.5.0*

Export the currently selected preset to an sbsprs file


String parameter: filePath String containing the file path to export the preset to

exportPresetList

Export the given presets to a single preset file


String parameter: filePath String containing the file path to export the presets to

List parameter: presets List containing the names of the presets to export


BakeOutputsOfSelectedGraph

Bake the bitmaps of the selected graph instance to disk


String parameter: filePath The root path directory to write the images to

String parameter: imageFormatExtension The file extension/format to write the images as

Get help faster and easier

New user?