- Substance 3D home
- Home
- Getting Started
- Getting Started overview
- Activation and licenses
- System requirements
- Project creation
- Export
- Export overview
- Export window
- Export presets
- Export overview
- Glossary
- Performance
- Getting Started overview
- Interface
- Assets
- Substance 3D Assets
- Color picker
- Display settings
- History
- Layer stack
- Main menu
- Project configuration
- Properties
- Settings
- Shader settings
- Texture Set
- Toolbars
- Viewport
- Miscellaneous
- Assets
- Painting
- Painting overview
- Tool list
- Straight line
- Lazy mouse
- Symmetry
- Fill projections
- Presets
- Presets overview
- Creating and saving presets
- Creating particles presets
- Photoshop brush presets (ABR)
- Dynamic strokes
- Advanced channel painting
- Vector graphic (.svg & .ai)
- Text resource
- Effects
- Baking
- Content
- Creating custom effects
- Importing assets
- Creating custom effects
- Features
- 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 10.1
- Version 10.0
- Version 9.1
- Old versions
- 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
Shader settings
The Shaders Settings window allows to control the shader (and Iray mdl) parameters and the geometry displacement parameters.
A shader is a function that defines how an object should look when interacting with lighting and shadows in the viewports. In this application shaders are used to know how to read the Texture Set channels and render the 3D mesh in the viewports.
Undo stack and shader file
This section of the Shader Settings window controls the main parameters when manipulating shaders.
The Undo/Redo stack for the shader is independent from the main History to not create conflicts when painting.
If the shader file is marked as "Outdated", it is recommended to update it when possible. See : Updating a Shader
Setting | Description |
---|---|
Undo | Revert/Cancel a change of shader file or any shader parameters modification |
Redo | Apply again a change that was cancelled via the Undo. |
Shader file | Button showing the current shader file used. Click on the button to open a mini-shelf and choose a different shader. |
Instance name | Name of the shader instance. |
Restore defaults | Restore all the shader parameters to their default values (as they are in the shader file). |
Shader instance
A Shader Instance is a shader based on an original shader file but with customized parameters. A Shader Instance can be shared across Texture Sets, and a Texture Set can have a unique Shader Instance.
For example: a project can use a base shader, while one texture set uses a custom shader to support opacity.
To create and manage Shader Instances, see the Texture Set list window.
Shader parameters
Shader parameters are dependent of the shader file currently loaded.
Displacement and tesselation
Displacement and Tesselation are two functionalities that can be used to modify the shape of an object to add further details.
- Displacement: Push or offset the geometry based on an input channel.
- Tesselation: Subdivide the geometry to densify it. More density means that the spacing between polygons is shorter which gives finer details.
A filter named "Height To Normal" is available in the Shelf and can be used to get the final normal map (in case the native conversion is not strong enough).
Displacement
Below are the Displacement settings:
Setting | Description |
---|---|
Source Channel | Channel from which the mesh deformation is based on. Default is Height but can be set to Displacement as well. |
Scale | Controls the amount of deformation applied to the mesh in the project. A scale of 1 correspond to the maximum size based on the bounding box of the mesh. |
Tesselation
Below are the Tesselation settings:
Setting | Description |
---|---|
Subdivision Mode | Determines how the amount of subdivision is computed. Available configurations are :
|
Subdivision Count | (Mode Uniform) From 1 to 32. A high value produce more polygons which gives more details but can introduce performance issues. |
Max Length | (Mode Edge Length) 1 / Value. Every polygon edge is divided until each segment is equal to or shorter than this number, 1/1 being the size of the scene. |