User Guide Cancel

package | Substance 3D Automation ToolKit

  1. Substance 3D home
  2. Home
  3. Command Line Tools
    1. Command Line overview
    2. sbsbaker
      1. sbsbaker overview
      2. sbsbaker command line options
      3. sbsbaker Example Command Lines
    3. sbscooker
      1. sbscooker overview
      2. sbscooker command line options
      3. sbscooker pattern variables
    4. sbsmtools
      1. sbsmtools overview
      2. sbsmtools command line options
    5. sbsmutator
      1. sbsmutator overview
      2. sbsmutator command line options
      3. sbsmutator Example Command Lines
    6. sbsrender
      1. sbsrender overview
      2. sbsrender base parameters and pattern variables
      3. sbsrender command line options
      4. sbsrender example command lines
    7. sbsupdater
      1. sbsupdater overview
      2. sbsupdater command line options
  4. Pysbs - Python API
    1. Pysbs - Python API overview
    2. Getting started
    3. General topics
      1. Basic manipulation
      2. Substance creation
      3. Substances modification
      4. Dependencies management
      5. PySbs batchtools module
      6. metadata manipulation
      7. SAT demos
      8. Edit sbsar with SBSARManager
      9. Spot Colors
      10. Thumbnail creation with SAT
    4. Examples
      1. demohelloworld
      2. demos
      3. demos_batchtools
      4. script_update_with_sbsupdater
    5. API Content
      1. API Content overview
      2. Substance definitions
        1. Common interfaces
          1. basegraph
          2. package
          3. sbsarobject
          4. sbsobject
        2. compnode
          1. compnode overview
          2. common
          3. compimplementation
          4. paramgraph
        3. context projectmgr
        4. graph
          1. graph overview
          2. function
          3. inputparameters
          4. output
        5. mdl
          1. mdlannotation
          2. mdlcommon
          3. mdldictionaries
          4. mdlenum
          5. mdlgraph
          6. mdllibclasses
          7. mdlmanager
          8. mdlnode
          9. mdlnodeimpl
          10. mdloperand
          11. mdlsbsbridge
        6. modelgraphindex
          1. modelannotationnames
          2. modelgraph
          3. modelgraphgenerator
          4. modelgraphimplementation
          5. modelnodenames
          6. modeloperand
          7. modulegraphindex
          8. moduleannotation
          9. moduleconnection
          10. modulegraph
          11. modulegraphgenerator
          12. modulegraphimplementation
          13. modulegraphlibrary
          14. modulegraphregister
          15. modulenode
          16. modulenodeimplementation
          17. modulenodeinstance
          18. moduleoperand
          19. moduleoutputbridging
          20. moduleparaminput
        7. params
          1. params overview
          2. dynamicvalue
          3. paramnode
        8. projectmgrdoc
        9. sbsarchive
          1. sbsarchive overview
          2. sbsarenum
          3. sbsargraph
          4. sbsargui
          5. sbsarguiwidgets
          6. sbsarmanager
        10. sbscommon
          1. connections
          2. gui
          3. nodes
          4. values
        11. sbspreset
        12. sbsproject
        13. substance
          1. substance overview
          2. content
          3. resource
      3. Libraries
        1. sbsenum
        2. sbslibrary
          1. sbslibrary overview
          2. sbsdictionaries
          3. sbsfilters
          4. sbsfunctions
          5. sbsfxmapnodes
          6. sbslibclasses
          7. sbswidgets
        3. sbsbakerslibrary
          1. sbsbakerslibrary overview
          2. sbsbakersdef
          3. sbsbakersdefaultprops
          4. sbsbakersdictionaries
          5. sbsbakersenum
          6. sbsbakingconverter
          7. sbsbakingconverterparam
          8. sbsbakingparameters
          9. sbsdialogstate
          10. sbsscenedata
        4. Helpers
          1. sbscleaner
          2. sbsexporter
          3. sbsgenerator
          4. sbsparser
          5. sbswriter
          6. qtclasses
            1. qtclasses overview
            2. qtvariantreader
            3. qtvariantwriter
          7. psdparser
          8. sbsimpactmanager
          9. batchtools
          10. autograph
            1. ag_functions
            2. ag_layout
            3. ag_types
          11. info_mesh_parser
          12. sbsbaker_info_handlers
          13. sbsrender_render_handlers
          14. output_handlers
          15. spotcolorinfo_handler
          16. thumbnail
          17. batchtools overview
        5. Execution context
          1. context
          2. functions
        6. API Change log
  5. Samples
    1. Samples overview
    2. Texturing Template Demo
    3. Batch Tools Demo
    4. Variations
    5. Texture Mat
    6. Pixel Processor Ray tracer
  6. Setup and Getting Started
    1. Setup and Getting Started overview
    2. Compatibility
    3. Frequently asked Questions
    4. Known issues
    5. SAT Cookbook
    6. Use Pysbs in different python interpreter (maya, sd, blender...)
  7. Integrations
    1. Substance Maya toolset
      1. Substance Maya Toolset overview
      2. Installing
      3. Launching
      4. Baking
        1. Baking overview
        2. Export parameters
        3. Baker parameters
        4. Mesh setup
        5. Using a template
      5. Changelog
  8. Release notes
    1. Version 11.3.0
    2. Version 11.2.0
    3. Version 11.1.0

package

Module package aims to define all common interfaces related to the .sbs and .sbsar packages:
 class common_interfaces.package.Package(aContext, aFileAbsPath)  

Bases: object

Class used to provide a common interface between a SBSDocument and a SBSArchive.

Members:
  • mContext (Context): Execution context, with alias definition
  • mFileAbsPath (str): Absolute path of the package
  • mDirAbsPath (str): Absolute directory of the package
  • mIsAnArchive (bool): True for a .sbsar, False for a .sbs
 buildAbsPathFromRelToMePath(aRelPathFromPackage)  

Build a path starting from the current package absolute directory and complete it with the given relative path

Parameters:aRelPathFromPackage (str) – The relative path from the current package
Returns:The complete path, as a string
 parseDoc(aResolveDependencies = True)  

Parse the file content

Returns:True if succeed
 getObjectFromInternalPath(aPath)  

Get the object pointed by the given path, which must references the current package.

Parameters:aPath (str) – the relative path, starting with ‘pkg://’
Returns:the pointed SBSObject if found, None otherwise
 getSBSGraph(aGraphIdentifier)  

Get the Graph object with the given identifier

Parameters:aGraphIdentifier (str) – Identifier of the graph to get
Returns:A Graph object
 getSBSGraphPkgUrl(aGraph)  

Get the path of the given graph relatively to the current package (pkg:///…/aGraphIdentifier)

Parameters:aGraph (A SBSGraph object) – Identifier of the graph to get
Returns:A string containing the relative path from the root content to the given graph, None otherwise
 getSBSGraphList()  

Get the list of all graphs defined in the .sbs file

Returns:A list of Graph
 static isAnArchive(aFilePath)  

Check if the given filename is a .sbsar package or a .sbs package

Parameters:aFilePath (str) – Path of the package
Returns:True if the given path refers to an archive (.sbsar), False otherwise
 static isAPackage(aFilePath)  

Check if the given filename is a .sbs file or .sbsar file.

Parameters:aFilePath (str) – Path of the package
Returns:True if the given path ends with .sbs or .sbsar, False otherwise
 isInitialized()  

Check if the package is correctly initialized (parsed or well setup for future usage)

Returns:True if the package is initialized, False otherwise
 setInitialized()  

Set the package as initialized

 static removePackageExtension(aFilePath)  

Remove the package extension to the given path (.sbs or .sbsar)

Parameters:aFilePath (str) – Path of the package
Returns:The same path without the package extension
 class common_interfaces.package.ParamInput(aUID='', aIdentifier='')  

Bases: object

Class used to provide a common interface between a SBSParamInput and a SBSARInput.

Members:
  • mIdentifier: Unique identifier of the input
  • mUID: Unique Id of the input
 getAttribute(aAttributeIdentifier)  

Get the given attribute value

Parameters:aAttributeIdentifier (AttributesEnum) – the attribute identifier
Returns:the attribute value if defined, None otherwise
 getDimension()  

Get the dimension of the parameter type (1, 2, 3, or 4 values)

Returns:The dimension as an integer
 formatValueToType(aValue)  

Return the given value formatted in the appropriate type for this parameter (bool, int or float)

Parameters:aValue (string, bool, int, or float) – The value to format
Returns:The value as a bool, int of float depending on the parameter type
 getGroup()  

Get the input GUI group containing this input

Returns:the GUI group as a string if defined, None otherwise
 getClamp()  
Returns:the clamp as a boolean if defined for this parameter, None if not defined
 getMinValue(asList)  
Returns:the minimum parameter value in the type of the parameter (int or float), None if not defined
 getMaxValue(asList)  
Returns:the maximum parameter value in the type of the parameter (int or float), None if not defined
 getDefaultValue()  
Returns:the default value as a value or a list of values, in the type of the parameter (bool, int or float), None if not defined
 getDropDownList()  
Returns:the map{value(int):label(str)} corresponding to the drop down definition if defined for this parameter, None otherwise.
 getLabels()  
Returns:the list of all labels defined for this parameter, in the right order, as a list of strings. None if not defined
 getStep()  
Returns:the step value (in the type of the parameter) of the widget for this parameter, None if not defined
 getUsages()  

Get the usages of this param input

Returns:the list of SBSUsage defined on this param input
 getWidget()  
Returns:The widget used for this parameter, None if not defined
 hasUsage(aUsage)  

Check if the given usage is defined on this param input

Parameters:aUsage (str or UsageEnum) – The usage to look for
Returns:True if the given usage is defined on this param input, False otherwise
 isAnInputImage()  

Check if this input is of kind image.

Returns:True if this is an input image, False otherwise
 isAnInputParameter()  

Check if this input is a parameter.

Returns:True if this is an input parameter, False otherwise
 getType()  

Get the type of the input among the list defined in ParamTypeEnum.

Returns:The type of the parameter as a ParamTypeEnum
 getIsConnectable()  

Returns True if this parameter can be connected to

Returns:(bool) If this input is connectable
 class common_interfaces.package.GraphOutput(aUID='', aIdentifier='')  

Bases: object

Class used to provide a common interface between a SBSGraphOutput and a SBSAROutput.

Members:
  • mUID (str): identifier of the input.
  • mIdentifier (str): uid of the input.
 getAttribute(aAttributeIdentifier)  

Get the given attribute value

Parameters:aAttributeIdentifier (AttributesEnum) – the attribute identifier
Returns:the attribute value if defined, None otherwise
 getUsages()  

Get the usages of this graph output

Returns:the list of usages defined on this output
 hasUsage(aUsage)  

Check if the given usage is defined on this graph output

Parameters:aUsage (str or UsageEnum) – The usage to look for
Returns:True if the given usage is defined on this param input, False otherwise
 getType()  

Get the output type of this GraphOutput.

Returns:the output type in the format ParamTypeEnum if found, None otherwise
 class common_interfaces.package.Preset(aLabel='', aUsertags='', aPresetInputs=None)  

Bases: object

Class used to provide a common interface between a SBSPreset and a SBSARPreset.

Members:
  • mLabel (str): label of the preset.
  • mPresetInputs (list of PresetInput): list of preset inputs.
 getPresetInputs()  

Get the list of preset inputs defined in this preset

Returns:a list of PresetInput
 getPresetInput(aInputParam)  

Get the preset of the given input parameter

Parameters:aInputParam (ParamInput or str) – the input parameter as ParamInput or identified by its uid
Returns:a PresetInput if found, None otherwise
 getPresetInputFromIdentifier(aInputParamIdentifier)  

Get the preset of the given input parameter

Parameters:aInputParamIdentifier (str) – the input parameter identified by its identifier
Returns:a PresetInput if found, None otherwise
 getInputValue(aInputUID)  

Get the value of the given ParamInput in this preset

Parameters:aInputUID (str) – UID of the input to get
Returns:the input value in this preset if defined, None otherwise
 class common_interfaces.package.PresetInput(aUID='', aIdentifier='', aValue=None, aType=None)  

Bases: object

Class used to provide a common interface between a SBSPresetInput and a SBSARPresetInput.

Members:
  • mUID (str): uid of the input parameter targeted by this preset input
  • mIdentifier (str): identifier of the input parameter targeted by this preset input
  • mValue (SBSConstantValue): value, depend on the type.
  • mType (SBSParamValue): type of the input
 getValue()  

Get the value of this preset input as it is saved in the file

Returns:the input value in this preset input
 getType()  

Get the type of the input among the list defined in ParamTypeEnum.

Returns:The type of the parameter as a ParamTypeEnum
 getTypedValue()  

Get the value of this preset input correctly formatted in the type of this preset (e.g. bool, int, float, list of int, …)

Returns:The input value in the appropriate type

 Adobe

Get help faster and easier

New user?

Adobe MAX 2024

Adobe MAX
The Creativity Conference

Oct 14–16 Miami Beach and online

Adobe MAX

The Creativity Conference

Oct 14–16 Miami Beach and online

Adobe MAX 2024

Adobe MAX
The Creativity Conference

Oct 14–16 Miami Beach and online

Adobe MAX

The Creativity Conference

Oct 14–16 Miami Beach and online