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
Channel specific filter
An effect can be specific to a particular channel. In that case, if you want to affect a specific channel, you need to create an input AND an output which identifies this channel. As a general rule, the input / output structure should always respect a 1:1 rule. If you want to input a specific channel, you have to output the same channel.
Example of a filter affecting the basecolor channel only :
It is not possible to combine generic setup (input/output nodes) and specific channels (basecolor/basecolor).
Alpha component management
Channels stored as RGBA support alpha (basecolor for instance). For these channel, the alpha Input/Output can be stored directly in the Substance color output. However, the Substance engine does not support Alpha for grayscale images: it has to be managed using a secondary map. To get the alpha component of a specific channel in a substance graph, create a grayscale input named 'channelname_Alpha', example: basecolor_Alpha, roughness_Alpha and so on.
To output this alpha component, create an output node with the same name convention.
The specific "_Alpha" output per channel doesn't work with regular materials. To hide a channel with a mask, a specific output must be created with the following naming convention :
- Identifier : channels_Alpha
- Usage : channels_Alpha
List of input/output usages and identifiers
It is possible to use either the usage or the identifier in an input node (the usage has the priority).
| Channel name | Usage | Identifier / Identifier Alpha |
|---|---|---|
| Ambient Occlusion | ambientOcclusion | ambientOcclusion / ambientOcclusion_Alpha |
| Anisotropy Angle | anisotropyangle | anisotropyAngle / anisotropyAngle_Alpha |
| Anisotropy Level | anisotropylevel | anisotropyLevel / anisotropyLevel_Alpha |
| Base Color | basecolor | baseColor / baseColor_Alpha |
| Blending Mask | blendingmask | blendingmask / blendingmask_Alpha |
| Diffuse | diffuse | diffuse / diffuse_Alpha |
| Displacement | displacement | displacement / displacement_Alpha |
| Emissive | emissive | emissive / emissive_Alpha |
| Glossiness | glossiness | glossiness / glossiness_Alpha |
| Height | height | height / height_Alpha |
| IOR | ior | ior / ior_Alpha |
| Metallic | metallic | metallic / metallic_Alpha |
| Normal | normal | normal / normal_Alpha |
| Opacity | opacity | opacity / opacity_Alpha |
| Reflection | reflection | reflection / reflection_Alpha |
| Roughness | roughness | roughness / roughness_Alpha |
| Scattering | scattering | scattering / scattering_Alpha |
| Specular | specular | specular / specular_Alpha |
| Specular Level | specularlevel | specularLevel / specularLevel_Alpha |
| Transmissive | transmissive | transmissive / transmissive_Alpha |
| User 0 | user0 | user0 / user0_Alpha |
| User 1 | user1 | user1 / user1_Alpha |
| User 2 | user2 | user2 / user2_Alpha |
| User 3 | user3 | user3 / user3_Alpha |
| User 4 | user4 | user4 / user4_Alpha |
| User 5 | user5 | user5 / user5_Alpha |
| User 6 | user6 | user6 / user6_Alpha |
| User 7 | user7 | user7 / user7_Alpha |
Examples
In this example the Base Color alpha channel is extracted via a grayscale node to overwrite the Roughness channel.
In this example the Roughness channel is multiplied over the Base Color.