Name
- 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
Layer instancing
Layer instancing allows to synchronize layer parameters across multiple layers and Texture Sets while still being able to generate a mesh dependent result.
When a layer instance is created, the original layer (or source layer) is used to replicate parameters across all the existing instances. Only the source layer can be modified.
Creating a layer instance
To create a layer instance:
- Select any existing layer
- Copy the layer (CTRL+C)
- Paste it as an instance (use CTRL+SHIFT+V or right-click to open the context menu and choose Paste as instance)
Once an instance has been created, the source and target layer will display a new icon. This icon is a button that can be used to navigate between a source layer and its instances more easily, without having to manually switch between Texture Sets (see below).
|
Icon |
---|---|
Non-instanced layer |
|
Instance Source |
|
Instance Target |
|
Creating an instance across Texture Sets
It is possible to create a layer instance on multiple Texture Sets in one action, avoiding to copy/paste it manually.
To create an instance across multiple Texture Sets:
- Select any existing layer
- Right-click on the layer to open the context menu
- Choose Instantiate across texture sets
- In the new window, check which Texture Sets needs to receive an instance.
- Click OK to validate and create the instances.
Switching between an instance and its source
Since an instance can only be updated by editing the source (because of technical reasons), it is mandatory to select the source layer to edit its properties.
This can be done by clicking on the instance properties button on the layer in the layer stack.
When clicking on an instance properties button, it will switch the properties window from the current tool/layer to a list displaying a source layer and its instances.
Clicking on any element of the list to automatically jump to this layer . This will automatically change the current Texture sets selected to the right one as well.
Using the instance tree list is the best way to quickly go from an instance to its source while seeing the dependencies at the same time.
Instance cycles (and how to solve them)
Cycles are instances that are used into the source layer itself either directly or indirectly. Cycles cannot be computed by the Substance 3D Painter engine and therefor require to be disabled until fixed or removed.
Example:
In this example, the instance of the source layer is moved inside it (because it is a folder). The instance becomes broken because in order to generate its parameters we need to query the parameters from the source, which depends of the parameters from the instance. This create a cycle that cannot be solved automatically. The instance becomes disabled.
The only way to fix a cycle is to either move the instance outside the folder or to delete it.
Layer instances can be used in source layers as long as the the instance itself refer to a different source layer.