Documentation for Substance 3D Painter is now available on Experience League. After March 14th, HelpX pages will automatically redirect to the equivalent Experience League page.
Refer to the FAQ for more information about which documentation is affected.
- Substance 3D home
- Home
- Getting Started
- Getting Started overview
- Activation and licenses
- System requirements
- Project creation
- Export
- Export overview
- Export window
- Output templates
- Export overview
- Glossary
- Getting Started overview
- Interface
- Interface overview
- Assets
- Substance 3D Assets
- Color picker
- Display settings
- History
- Layer stack
- Main menu
- Project configuration
- Properties
- Settings
- Shader settings
- Texture Set
- Toolbars
- Viewport
- Miscellaneous
- Painting
- Painting overview
- Paint tools
- Path tools
- Path tool overview
- Paint along path
- Ribbon path
- Filled path
- Erase along path
- Smudge along path
- Straight line
- Lazy mouse
- Symmetry
- Fill projections
- Presets
- Presets overview
- Creating and saving presets
- Creating particles presets
- Photoshop brush presets
- Dynamic strokes
- Advanced channel painting
- Vector graphic (.svg & .ai)
- Text resource
- Effects
- Baking
- Content
- Creating custom effects
- Importing assets
- Creating custom effects
- Features
- Automatic resource update
- Automatic UV Unwrapping
- Physical size
- Smart Materials and Masks
- Subsurface Scattering
- Dynamic Material Layering
- UV Reprojection
- UV Tiles
- Color Management
- Post Processing
- Iray Renderer
- Plugins
- Sparse Virtual Textures
- Custom Shaders
- SpaceMouse® by 3Dconnexion
- Universal Scene Description (USD)
- Send to
- Technical Support
- Performance Guidelines
- Configuring Pens and Tablets
- Exporting the log file
- Exporting a DXDiag
- Technical issues
- GPU Issues
- Crash when working with overclocked GPU
- Forcing the external GPU on Mac OS
- GPU drivers compatibility
- GPU drivers crash with long computations (TDR crash)
- GPU has outdated drivers
- GPU is not recognized
- GPU is not recognized and is mentionned as GDI Generic
- Issues with Nvidia GPUs on recent Mac OS versions
- Multi/Bi-GPU
- Running on integrated GPU
- Painter doesn't start on the right GPU
- Startup Issues
- Rendering Issues
- Stability Issues
- Miscellaneous Issues
- GPU Issues
- Workflow Issues
- Export Issues
- Tools Issues
- Project Issues
- Library Issues
- Viewport Issues
- Plugins Issues
- License Issues
- Pipeline and integration
- Installation and preferences
- Configuration
- Resource management
- Scripting and development
- Scripts and plugins
- Shader API Reference
- Shader API overview
- Changelog - Shader API
- Libraries - Shader API
- Lib Alpha - Shader API
- Lib Bayer - Shader API
- Lib Defines - Shader API
- Lib Emissive - Shader API
- Lib Env - Shader API
- Lib Normal - Shader API
- Lib PBR - Shader API
- Lib PBR Aniso - Shader API
- Lib Pom - Shader API
- Lib Random - Shader API
- Lib Sampler - Shader API
- Lib Sparse - Shader API
- Lib SSS - Shader API
- Lib Utils - Shader API
- Lib Vectors - Shader API
- Parameters - Shader API
- Shaders - Shader API
- Release notes
- Release notes overview
- All Changes
- Version 11.1
- Version 11.0
- Version 10.1
- Known issues
- Old versions
- Version 10.0
- Version 9.1
- Version 9.0
- Version 8.3
- Version 8.2
- Version 8.1
- Version 7.4
- Version 7.3
- Version 7.2
- Version 2021.1 (7.1.0)
- Version 2020.2 (6.2.0)
- Version 2020.1 (6.1.0)
- Version 2019.3
- Version 2019.2
- Version 2019.1
- Version 2018.3
- Version 2018.2
- Version 2018.1
- Version 2017.4
- Version 2017.3
- Version 2017.2
- Version 2017.1
- Version 2.6
- Version 2.5
- Version 2.4
- Version 2.3
- Version 2.2
Version 9.1
Substance 3D Painter 9.1 adds tangent control for the Path tool, support of the SVG file format, the ability to import and apply resources by drag and drop and support for translucency in the viewport.
Release date: 7 November 2023
Major features
New tangent controls and improvements for path tool
In this new version we continue the development of the Path tool (introduced in version 9.0) to add missing bits and features requested by the community.
-
Control path points tangents manually
It is now possible to manually set the tangents of a specific point on a path. This allows to override the automatic behavior to create new shapes.
-
Edit path points via manipulators
Sometimes, just slidings points on the surface of the object is not enough. The manipulators allow to move points beyond the surface. This can be very helptful to move several points at once for example in case they were too far from a surface after a mesh re-import.
-
Toggle paths visibility individually
Paths visibility can now be changed per path via the dedicated viewport panel. Disabling a path will remove its contributions from final textures without having to delete it.
-
Copy and paste path positions and properties
Copy and pasting paths has been extended to be able to only copy a path point positions or its properties. Syncing paths in different ways is now possible, making it easier to create complex effects (via the positions) or to share a specific look across different locations (via the properties).
For more information about the Path tool, see the dedicated documentation.
New support for translucency, transparency and absorption in viewport
The Adobe Standard Material (ASM) shader, which is the default when creating a new project, has been updated to support Translucency, Transparency and Absorption properties. This means it is now possible to view the result of those rendering behaviors in the real-time viewport (as well as inside Iray renderer).
So authoring materials like glass, foliage or plastics with a thin absorption of light is now possible and directly viewable in the viewport. Exporting to other Substance 3D applications will also result into matching look thanks to the ASM definition.
-
New ASM shader settings
The ASM shader has been updated to support new functionalities, which can be modified via the Shader settings window:
- Transparency (opacity): is it not necessary anymore to switch to another shader to get transparent surfaces, like foliage. Instead, enable either the alpha test or alpha blending parameter under the Geometry > Opacity group. The usual settings, like dithering, are also available.
- Translucency: this new property allows to create surfaces like glass, making shapes transparent while keeping the specular reflections. To use it add a Translucency channel in your project and enable the Translucency parameter under the Interior group.
- Absorption: this new property allows to simulate light passing through an object and being absrobed which can be useful to simulate plastic or liquids in a better way than using sub-surface scattering. To use it enable the Absorption setting under the Interior group.
- Transparency (opacity): is it not necessary anymore to switch to another shader to get transparent surfaces, like foliage. Instead, enable either the alpha test or alpha blending parameter under the Geometry > Opacity group. The usual settings, like dithering, are also available.
-
Improved shader settings UI and tooltips
With the rework of the shader we took the opportunity to improve the UI of the parameters, as well as adding many new tooltips to more easily discorver how to activate them.
The order of parameters should also match better other Substance 3D software, making it easier to do back and forth when trying out settings.
-
New sample project to demo the Adobe Standard Material
Manipulating the new ASM properties can be difficult at first, so a new sample project demonstrating several features of the shader has been added to make it easier to learn them.
This project is called French Restaurant Table and can be found via the File > Open sample menu. It also uses a lot of little tricks, so it can be a great learning resource to discover new ways of texturing.
-
Translucency channel now defaults to a black color
In order to make the new shader properties easier to use and avoid unexpected results in the viewport, the default color of the channel Translucency has been changed to black (instead of white).
If this channel was already in use in your project, you can get the previous behavior by simply adding a fill layer at the bottom of your layer stack and setting the channel value to white. You might want to enable the setting Use translucency as scattering mask in the shader parameter as well to re-apply the contribution of the channel to the sub-surface scattering result.
New support for vector graphic files (SVG)
This release adds the support of SVG files as resources that can be used in layers, paint tools, etc.
SVG file are quite handy to represent logos or shapes precisely while being very lightweight. In Painter they can be rendered at a desired resolution and easily updated, making them perfect for the non destructive workflow.
-
Import SVG files
SVG files can be imported like any other resources, in projects, in libraries, etc. SVG up to version 1.1 can be imported, features from newer versions are unsupported.Import has also been made easier in this version as well (see below) so that using SVG files can be done by simply drag and dropping resources from outside Painter directly onto the mesh or the layer stack.
-
Dedicated SVG settings
When using an SVG resource, a few settings are available to control its look:- Resolution: to either use an automatic one, one defined within the file or one a custom value.
- Crop area: to define the specific region of the SVG canvas to use.
- Scope: to select the whole content of the SVG or only some elements.
-
New SVG tailored materials
3 new resources have been added to help the use of SVG files when texturing:
- Custom Spray Paint: allows to simulate a decal painted on a wall from a single input image.
- Custom Sticker: to create a plastic sticker on a surface. It features several settings to simulate damage and folding.
- Graphic to Material: allows to create several material properties from a single image input. This resource is automatically inserted when drag and dropping an SVG file into the viewport. This resource offers an easy way to share the transparency of its input across multiple channels, making it perfect for simple decals.
- Custom Spray Paint: allows to simulate a decal painted on a wall from a single input image.
For more information about the SVG format and settings, see the dedicated documentation.
New import of resources via drag and drop
This release make it possible to drag and drop an external file into different contexts of the application to automatically import a resource and use it. This new process allows to skip tedious steps related to importing files.
-
Import via drag and drop into the viewport
Drag an external file into the viewport to be able to put it directly on the mesh. This action will automatically create a new layer. Depending on the nature of the resource (image, Substance material, Substance filter, etc.) the result will adapt accordingly.
-
Import via drag and drop into the layer stack
The same way it is possible to drop external resource files into the viewport, dropping files into the layer stack allow to directly create layers or effects with the resource in it.
-
Import via drag and drop into a resource slot
Importing a resource directly into a layer or a tool is also possible. If a fill layer or effect with the right setup already exists, simply drop an external file into one of the channel slot of the Properties window to import and apply it.
For more information on importing resources, see the dedicated documentation.
New resource drag and drop behaviors
Drag and drop improvements are not limited to importing resources. Drag and dropping a resource from the Assets window can now be used to create new layers, effects and even masks on the fly.
-
Drag and drop many types of resources
It is now possible to drag and drop types of resources directly into the viewport or the layer stack. The following type of resources can now be drag and dropped (almost) anywhere:
- Alphas
- Textures
- Procedurals
- Materials
- Smart materials
- Smart masks
- Generators
- Filters
- Environment maps
-
Drop resources as new layer or effect
By choosing where a resource is dropped, Painter will automatically create a new layer or a new effect:
-
Choose between Content or Mask effect stack while dragging
When dragging a resource over a thumbnail Painter will automatically switch to the associated effect stacks. After that it becomes very easy to just drop the resource in a precise location inside that stack. This avoid the need to switch to the right stack beforehand.
-
Create a new black mask on the fly
A new icon appears on any layer without a mask while dragging a resource. When a resource is dropped on this ghost mask it will automatically create a new mask and add the new resource. It is a quick way to setup a new mask and avoid to cancel the drag and drop to add it manually.
-
Drop in the viewport to create new layers
Drag and dropping resources can also be done in the viewport to create new layers. Depending on the type of the resource, the result may change. A filter will create a paint layer in passthrough mode, while a smart mask will create a fill layer with a new mask.
-
Use keyboard modifiers for advanced behaviors
When dropping a resource, maintaining the keyboard modifier CTRL or ALT can enable additional behaviors:
- CTRL while dropping in the layer stack: create a new layer with the resource in a black mask. can be useful to force a material to be put into a mask for example. Or to skip the dropdown menu with an alpha.
- ALT while dropping in the layer stack: only applies when dropping over a layer thumbnail. ALT will remove all the previous effects. This can be used as a quick way to try out different resources, notably smart masks, without having to manually remove them first.
- CTRL while dropping in the viewport: create a new layer with the resource in a black mask. The resource will be put under a Color ID Selection effect which will be set based on the selection done in the viewport.
- ALT while dropping in the viewport: same as before, will force a resource to be in decal projection mode.
Miscellaneous improvements
Several minor features and improvements have also been added in this release.
-
Lossless compression of 16bit images
From now on, any images contained in a project with a bit depth of 16 will be compressed with a lossless algorithm, allowing to reduce their size without losing quality. This is in addition of the project file already compressing its own data.
This change principally target bake textures which are usually the reason why project files can be very heavy on the disk. In average we saw projects being reduced by 30% to 50% in size on disk.
This compression is applied automatically when saving any project (old or new) on resources not already compressed. It means that for old projects, saving for the first time in this new version could take a bit more time than usual. Saving time should be back to normal once this is done.
-
New UV set to UV set fill projection mode
A new projection mode for fill layers/effects has been added named UV set to UV set projection. It can be used to project a texture based on different UVs available on the mesh inside the project. It can be used to perform more advanced texture transfert without the need to rely on external tools.
UV set 0 is the default UV used for painting by Painter. If additional UV sets are available, they will be available inside the dropdown from the setting Source:
-
Temporal Anti-Aliasing is enabled by default on any new project
When creating a new project, the Temporal Anti-Aliasing setting available in the Display Settings window is now enabled by default in order to improve the quality of the rendering in the viewport.
-
New Python API improvements
The Python API recived a few additions in this release:
- Painter can be closed/shutdown via Python with the new substance_painter.application.close() function.
- The main viewport camera can now be modified via the API. This includes its position, rotation but also its other properties like Field of View, Aperture, etc. To make it easier to position the camera regarding the mesh, the API now also exposes the scene bounding box.
- Exporting the project mesh, with triangulation or not and displacement or not, is now possible via the export module.
- The project export textures path can now also be retrieved from the API.
-
New send to After Effects (beta)
A new send to action is available to export a mesh and its texture to After Effects, making it convenient to iterate on visual effects. This feature requires the access to After Effects version 24.1 beta minimum.
Tutorials
Release notes
9.1.0
(Released: November 07, 2023)
Summary: Major release introducing SVG and transparency support, as well as drag and drop and path tool improvements
Added:
- [SVG] Allow to import vectorial files (SVG)
- [SVG][UI] Add support for SVG-specific properties
- [SVG] Add an option to easily preserve original image proportions
- [SVG] Allow to automatically use alpha of SVG with transparency
- [Interop] Allow to send a textured mesh to After Effects (Ae 24.1 beta)
- [Interop] Add settings for Send to After Effects
- [QoL][Assets][UI] Auto-import asset when drag and dropping into UI slot
- [QoL] Allow to drag and drop external assets into the layer stack
- [QoL][Layer Stack] Drag and drop textures from Assets Panel into the Layer Stack
- [QoL][Viewport] Allow to drag and drop generator, filters on the mesh
- [QoL][Viewport] Allow to drop external assets onto the mesh
- [QoL][Projection] Add new UV set to UV set projection mode
- [QoL] Drag and drop Smart Masks as new layers in viewport and Layer Stack
- [QoL] Add selector for Generators with multiple outputs when used in mask
- [QoL] Allow to drag and drop single channel images over a fill effect
- [QoL][Layer stack] Use CTRL/ALT modifiers with drag and drop to specify where/how to create effects/layer
- [Path] Toggle paths visibility individually in path panel
- [Path] Allow to use transformation manipulators for path points
- [Path] Allow to control tangents per vertex manually
- [Path] Copy/paste path properties
- [Path] Introduce an empty shortcut for break tangent button
- [Shader] Add support for Opacity & Translucency in ASM shader
- [Shader] Add support for Absorption color channel with ASM shader
- [Shader] Improve ASM shader parameters tooltips
- [Shader] Change Translucency channel default color to black
- [Display settings] Enable Temporal Anti-Aliasing by default
- [Display settings] Enable Sub-surface scattering setting by default
- [Substance] Add support for ColorSpace property from graph input/output
- [Substance] Update Substance engine to version 9.0.3
- [UI] Make contextual toolbar button accessible even if the app window is small
- [Auto Unwrap] Control UV Tiles number with Texel Density
- [Baking] Deactivate GPU raytracing on AMD GPUs by default
- [Performance] Apply lossless compression on 16bit images to reduce project footprint
- [Python] Allow to manipulate the default Camera in 3D View
- [Python] Expose the ability to export mesh via scripting
- [Content][Samples] Add new sample project "French Restaurant Table"
- [Content] Update Substance logo alpha to new version
- [Content] Add three SVG focused material filters (Custom Sticker, Custom Spray and Graphic to Material)
Fixed:
- [Crash] Changing manipulator size when not using symmetry tool
- [Crash] [Layer stack] Creating layer when nothing is selected
- [Project] Mesh maps can be corrupted after a removing unused resources
- [Project] Resource corruption after re-importing or re-baking image
- [Assets] Reloading an asset removes it from Favorites
- [Import] Can not import resources when there is "No result found" in asset panel
- [UI] Contextual toolbar arrow does not appear in some cases
- [Substance] Side by side button for boolean values is not supported
- [Level] Wrong channel label when used in mask
- [Export][glTF] glTF/GLB files exported from Painter do not have a physical size unit
- [Content] Blur filter intensity is clamped to 16
- [Content] Color Match filter "target color" image input is not visible
Known issues:
- [Color Management] HDR color space conversions with ACE on Linux produce clamped colors
- [Crash][Linux] with Linux Wayland on AMD when drag and dropping resource in the Layer Stack
- [Crash][Mac] Changing Anisotropic filtering value on Monterey OS
- [Crash] Exr used as image input
- [Crash] Using 16K environment map
- [Auto Unwrap] UI issue for texel density control
- [Regression][UI] Right Click Menu is too small on hd screen
- [Python] Crash exporting USD triggered by TextureStateEvent
- [QoL] Drag and drop of Alpha resource in decal mode creates UV projection in mask