Version 2019.3 (9.3)

Substance Designer 2019.3 introduces Color Management with support of OpenColorIO as well as improved bakers updates and a new atlas scatter node.

Release date: December 19, 2019

Major Features

Color Management and OpenColorIO support

Substance Designer now supports color management, which allows to control how colors are interpreted and transformed. This feature comes with the support for OpenColorIO, which is a widely used color management system used in the Entertainment and VFX industry.

  • Setting up color management in the main settings
    By default Substance Designer will be set in "legacy" mode meaning it won't load any specific configuration and will continue to work as before. To switch to OpenColorIO for example, simply heads-up to the main settings and then in the project settings to configure and enable it. 

  • Color Management is applied in 3 different ways
    Different parts of the application receive the color management which have different implications:
    • 2D and 3D View
      Both the Real-time opengl viewport and Iray can be color managed. This allows to preview in context the material and texturing. The color profile can be easily switched via the dedicated dropdown. It is also possible to display the view in Linear Gamma to preview without color correction.

    • Graph Inputs and Outputs and bitmap export
      When reading and writing bitmap images at the entry and exit of a graph, the color management can adjust the image and convert them to work in the right conditions. This can be controlled in the main preference for bitmap in the graph and modified in the export dialog during the export process. Saving an image from the 2D View will also offer a way to choose the color space.

New Curvature from Mesh Baker

The Curvature from mesh baker has been remade from scratch. It now takes advantage of raytracing which allows GPU acceleration but also adds the support of mesh intersections.

For more information see the Curvature from Mesh documentation.

The previous Curvature from mesh baker is now deprecated. We recommend switching to the new version.

Improved Ambient Occlusion from Mesh Baker

The Ambient Occlusion From Mesh baker now has a new setting named "Ground Plane" which simulates a plane under the mesh to produce ground occlusion. This can help produce more interesting looking result for static geometry or non-organic objects. The Ground Plane sits at the bottom of the mesh bounding box by default but can be pushed further with a dedicated settings.

For more information see the Ambient Occlusion from Mesh documentation.

Improved Properties and Preset Editor

The properties editor has been improved as well as the preset editor:

  • Faster preview mode
    Switching to the preview mode when editing graph parameters is now much faster, especially on graphs with a lot of exposed parameters. The preview mode is now a dedicated tab which makes easier the back and forth between the parameter editor and its preview.

  • Reworked preset editor
    The way presets are managed in Substance Designer is now much easier and faster: the preset editor has now its dedicated tab and each presets now list which parameters they affect.

  • Visible If is now taking into account for 2D transform gizmos
    When a transform 2D gizmo has a Visible If condition, it can now be hidden in the 2D View, making it contextual to the parameters.

New Content

In this version we introduce the new Atlas Scatter node. This node allows to read an atlas image (an image containing sub-images) and automatically separate its content into individual component which can then be scattered randomly. This node can be used for example to place branches and leaves on a dirt ground material. Substance Source now includes many Atlas materials which can be scattered with this new node.

This release doesn't support CentOS 6.x anymore.
On CentOS 7.x the application may not start because of some dependencies issues, to fix the problem either update the system or copy the following library in the installation folder.

Release Notes


(Released February 14, 2020)


  • [Batchtools] Ship default OCIO profiles with batch tools


  • [Content] Atlas Scatter: issues when using random color/normal in some situations


(Released February 04, 2020)


  • [SBSRender] Add Color Management support


  • [Content] Linear sRGB to ACEScg node: I/O labels are incorrect
  • [Content] ACEScg to sRGB node: Output labels is incorrect
  • [Content] Panorama Light nodes: adjust Temperature range
  • [Graph] Severe performance drop and freezes when tweaking a nested graph with 'In-Context Editing' active
  • [Graph] Crash when deleting multiple nodes in FX-Map
  • [Performances] Designer's process may stay alive after quitting


(Released January 27, 2020)


  • [Graph] Severe performance drop and freezes when tweaking a nested graph with "In-Context Editing" active
  • [Graph] Cannot enter enum value out of [0, 99] in Integer1 tweak
  • [Graph] Comment is not moved when the corresponding frame is displaced
  • [Graph] Input names are missing on custom instance node
  • [Graph] Thumbnails may be rendered when loading graph even if the corresponding option is disabled in the Preferences
  • [2D View] Negative alpha shows checker no matter the display option
  • [2D View] Surface conversion from 32f to 8bits fails with high values
  • [2D View] Top/left skew and 'Make Square' set some coordinates to huge values in forward transformation matrices
  • [2D View] UVs of all mesh objects are not displayed on UV sets other than "0"
  • [Content] Bevel: Angular mode does not work correctly on tiling mask
  • [Content] Flood Fill To Gradient: slope image value is not sampled in the middle of the shape
  • [Content] Function; "Equality Boolean" is broken
  • [Bakers] Artefacts when using automatic tonemapping in "Curvature From Mesh" baker in specific cases
  • [Bakers] Crash in DXR when baking while no material is selected
  • [Bakers] Performances issue in the 2D View when enabling the "info"
  • [Engine] 'Pow' function outputs huge values when using very low input value and high exponent on SSE2 engine
  • [Engine] Crash when using a high jpg compression on bitmap resources
  • [Engine] Value Processor returns wrong $size value when inside a subgraph
  • [Parameters] Empty pop-up appears when selecting an instance node with high number of parameters
  • [Parameters] Integer value is not shown in drop-down parameter items
  • [Parameters] Transform Matrix 'Edit' button is not available in Preview mode
  • [Cooker] $size in ValueProcessor is wrong when inside a graph instance
  • [Cooker] Outputsize is incorrect when value link passes through a dot node to an atomic node
  • [UI] Button to display all items in the 2D View bottom bar is not visible
  • [UI] Preview of picked RGB values display incorrect numbers when using Color Management
  • [Export] 16f RGBA images are exported as grayscale
  • [3D View] Cannot import OBJ with multiple spaces
  • [Color Management] OCIO config is not taken into account when publishing sbsar
  • [Color Widget] Color sliders ranges can expand exponentially in a specific case
  • [Doc] "paramValue" section is incomplete in Sbs format reference
  • [MDL] Color Widget in sbsar instances are not correct
  • [Presets] Crash when updating presets in a specific case
  • [PSD] FreeImage error when loading PSD files from recent versions of Photoshop
  • [Resources] Crash when undoing Bitmap linking directly into graph
  • [SVG] SVG nodes do not update automatically when using the vector tools


(Released December 19, 2019)


  • [General] Support Color Management using OpenColorIO configuration file
  • [Presets] Improve presets management
  • [Presets] Synchronize 2D View Gizmos and Preview Sliders
  • [Presets] Restore preview values when switching back to Preview mode
  • [Presets] Keep preview mode active when editing other nodes, resources or graph
  • [Presets] Undo works smoothly when navigating between the 3 presets tabs
  • [Presets] Allow to Reset parameters to Graph's default or Preset's value in Preview mode
  • [Presets] Improve pinning of parameters
  • [Presets] Import/Export all Presets of a graph to a file
  • [Bakers] New 'Curvature from mesh' baker based on ray tracing
  • [Bakers] Add ground plane option in 'AO from Mesh' baker
  • [Bakers] Add match by name option to ignore backface in 'AO from Mesh' baker
  • [Content] New Atlas Scatter node
  • [Content] New Color Space Conversion nodes and functions (ACEScg)
  • [Content] Improve naming consistency for nodes with Color/Grayscale versions
  • [Graph] Improve performances in Presets Preview mode
  • [Graph] Add $(colorspace) macro to export graph outputs option
  • [Parameters] When a parameter is set to invisible, hide the corresponding gizmo in the 2D View
  • [Parameters] Do not add 'Graph input group' as a prefix when exposing parameters
  • [Parameters] Add tooltip for VisibleIf in Graph parameters
  • [AXF] Update AXF SDK to v1.6


  • [Linux] Designer does not launch on CentOS 8 due to Qt platform loading failure.
  • [Linux] WARNING: Freetype library has been removed from SD application: Users with CentOS version <= 7.5 has to install it manually.
  • [AxF] Crash when importing files created with newer AxF versions
  • [2DView] Brush textures fed by a resource are not applied
  • [2DView] Crash when modifying inputs of instanced graph with position tweak
  • [3DView] Crash when canceling the "Load..." action
  • [3DView] Add Color Space option for emission textures in GLSLFX Shaders
  • [Bakers] Maps fed through resources are ignored during baking
  • [Bakers] 'World Space Direction' options are incorrectly locked
  • [Bitmap] EXR bitmaps with floating point values are rendered as a black image
  • [Content] Flood Fill to index: shape detection fails in a particular case
  • [Content] Crop: sampling issue when the crop node has a lower resolution than the input
  • [General] Crash when closing Designer while generating the Library
  • [Graph] Bitmap nodes do not reflect the compression of the associated bitmap
  • [Graph] Cache is not cleared when clearing node thumbnails after first render
  • [Graph] Node size incorrectly invalidated
  • [Graph] Crash when im some cases when changing input connections on a Pixel Processor Node
  • [MDL Graph] Failure when restoring a function call default value
  • [Properties] 'Edit' and 'Matrix' buttons in transform matrix parameters are confusing