- Substance 3D home
- User guide
- Glossary
- Getting started
- Interface
- Interface
- Customizing your workspace
- Home screen
- Main toolbar
- Preferences
- Explorer
- Graph view
- Library
- Properties
- 2D view
- 3D view
- Dependency manager
- Resources
- Resources
- Importing, linking and new resources
- Bitmap resource
- Vector graphics (SVG) resource
- 3D scene resource
- AxF (Appearance eXchange Format)
- Font resource
- Warnings from dependencies
- Substance graphs
- Substance graphs
- Substance graph key concepts
- Creating a Substance graph
- Exposing a parameter
- Graph parameters
- Inheritance in Substance graphs
- Output size
- Values in Substance graphs
- Publishing Substance 3D asset files (SBSAR)
- Exporting bitmaps
- Exporting PSD files
- Sample Substance graphs
- Warnings in Substance graphs
- Nodes reference for Substance graphs
- Nodes reference for Substance graphs
- Atomic nodes
- Node library
- Node library
- Texture generators
- Texture generators
- Noises
- Noises
- 3D Perlin noise
- 3D Perlin noise fractal
- 3D Ridged noise fractal
- 3D Simplex noise
- 3D Voronoi
- 3D Voronoi fractal
- 3D Worley noise
- Anisotropic noise
- Blue noise fast
- BnW spots 1
- BnW spots 2
- BnW spots 3
- Cells 1
- Cells 2
- Cells 3
- Cells 4
- Clouds 1
- Clouds 2
- Clouds 3
- Creased
- Crystal 1
- Crystal 2
- Directional noise 1
- Directional noise 2
- Directional noise 3
- Directional noise 4
- Directional scratches
- Dirt 1
- Dirt 2
- Dirt 3
- Dirt 4
- Dirt 5
- Dirt gradient
- Fluid
- Fractal sum 1
- Fractal sum 2
- Fractal sum 3
- Fractal sum 4
- Fractal sum base
- Fur 1
- Fur 2
- Fur 3
- Gaussian noise
- Gaussian spots 1
- Gaussian spots 2
- Grunge concrete
- Grunge Damas
- Grunge galvanic large
- Grunge galvanic small
- Grunge leaks
- Grunge leaky paint
- Grunge map 001
- Grunge map 002
- Grunge map 003
- Grunge map 004
- Grunge map 005
- Grunge map 006
- Grunge map 007
- Grunge map 008
- Grunge map 009
- Grunge map 010
- Grunge map 011
- Grunge map 012
- Grunge map 013
- Grunge map 014
- Grunge map 015
- Grunge rough dirty
- Grunge rust fine
- Grunge scratches dirty
- Grunge scratches fine
- Grunge scratches rough
- Grunge shavings
- Grunge splashes dusty
- Grunge spots
- Grunge spots dirty
- Liquid
- Messy fibers 1
- Messy fibers 2
- Messy fibers 3
- Microscope view
- Moisture noise
- Perlin noise
- Plasma
- Caustics
- Voronoi
- Voronoi fractal
- Waveform 1
- White noise
- White noise fast
- Patterns
- Patterns
- 3D linear gradient
- 3D volume mask
- Alveolus
- Arc pavement
- Brick 1
- Brick 2
- Brick generator
- Checker 1
- Cube 3D
- Cube 3D GBuffers
- Fibers 1
- Fibers 2
- Gaussian 1
- Gaussian 2
- Gradient axial
- Gradient axial reflected
- Gradient circular
- Gradient linear 1
- Gradient linear 2
- Gradient linear 3
- Gradient radial
- Height extrude
- Mesh 1
- Mesh 2
- Panorama shape
- Polygon 1
- Polygon 2
- Scratches generator
- Shape
- Shape extrude
- Shape mapper
- Shape splatter
- Shape splatter blend
- Shape splatter data extract
- Shape splatter to mask
- Splatter
- Splatter circular
- Star
- Starburst
- Stripes
- Tile generator
- Tile random
- Tile random 2
- Tile sampler
- Triangle grid
- Weave 1
- Weave 2
- Weave generator
- Filters
- Filters
- Adjustments
- Adjustments
- Apply color palette
- Auto levels
- Channel mixer
- Chrominance extract
- Clamp
- Color match
- Color to mask
- Contrast/Luminosity
- Convert to linear
- Convert to sRGB
- Create color palette (16)
- Grayscale conversion advanced
- Hald CLUT
- HDR range viewer
- Height map frequencies mapper
- Highpass
- Histogram compute
- Histogram equalize
- Histogram range
- Histogram render
- Histogram scan
- Non-uniform histogram scan
- Histogram select
- Histogram shift
- ID to mask grayscale
- Invert
- Lighting cancel high frequencies
- Lighting cancel low frequencies
- Luminance highpass
- Min max
- Modify color palette
- Pow
- Quantize color (Simple)
- Quantize color
- Quantize grayscale
- Replace color
- Replace color range
- Threshold
- View color palette
- Blending
- Blurs
- Channels
- Effects
- Effects
- 3D texture position
- 3D texture SDF
- 3D texture surface render
- 3D texture volume render
- Ambient occlusion (HBAO)
- Ambient occlusion (RTAO)
- Anisotropic Kuwahara color
- Anisotropic Kuwahara grayscale
- Bevel
- Bevel smooth
- Cross section
- Curvature
- Curvature smooth
- Curvature sobel
- Diffusion color
- Diffusion grayscale
- Diffusion UV
- Directional distance
- Edge detect
- Emboss with gloss
- Extend shape
- Flood fill
- Flood fill mapper
- Flood fill to Bbox size
- Flood Fill to gradient
- Flood Fill to grayscale/color
- Flood Fill to index
- Flood Fill to position
- Flood Fill to random color
- Flood Fill to random grayscale
- FXAA
- Glow
- Mosaic
- Multi directional warp
- Non-uniform directional warp
- Reaction diffusion fast
- RT irradiance
- RT shadow
- Shadows
- Shape drop shadow
- Shape glow
- Shape stroke
- Summed area table
- Swirl
- Uber emboss
- Vector morph
- Vector warp
- Normal map
- Tiling
- Transforms
- Material filters
- Material filters
- 1-click
- Effects (Material)
- Transforms (Material)
- Blending (Material)
- PBR utilities
- Scan processing
- Mesh-based generators
- Mesh-based generators
- Mask generators
- Weathering
- Utilities (Mesh-based generators)
- Spline & Path tools
- Spline & Path tools
- Working with Path & Spline tools
- Path tools
- Spline tools
- Spline tools
- Paths to Spline
- Point list
- Scatter on Spline color
- Scatter on Spline grayscale
- Spline 2D transform
- Spline (Cubic)
- Spline (Poly quadratic)
- Spline append
- Spline bridge (2 Splines)
- Spline bridge (List)
- Spline bridge mapper color
- Spline bridge mapper grayscale
- Spline circle
- Spline fill
- Spline flow mapper
- Spline mapper color
- Spline mapper grayscale
- Spline merge list
- Spline render
- Spline sample height
- Spline sample thickness
- Spline select
- Spline warp
- UV mapper color
- UV mapper grayscale
- 3D view (Library)
- 3D view (Library)
- HDRI tools
- Node library
- Substance function graphs
- Substance function graphs
- What is a Substance function graph?
- Create and edit a Substance function graph
- The Substance function graph
- Variables
- FX-maps
- FX-Maps
- How it works
- The Iterate node
- The Quadrant node
- Using Substance function graphs in FX-Maps
- Warnings in Substance function graphs
- Sample Substance function graphs
- Nodes reference for Substance function graphs
- MDL graphs
- Bakers
- Best practices
- Pipeline and project configuration
- Color management
- Package metadata
- Scripting
- Scripting
- Plugin basics
- Plugin search paths
- Plugins packages
- Plugin manager
- Python editor
- Accessing graphs and selections
- Nodes and properties
- Undo and redo
- Application callbacks
- Creating user interface elements
- Adding actions to the Explorer toolbar
- Using color management
- Using spot colors
- Logging
- Using threads
- Debugging plugins using Visual Studio Code
- Porting previous plugins
- Packaging plugins
- Scripting API reference
- Technical issues
- Release notes
Bitmap painting tools
This page describes the painting tools available in the 2D View panel for compatible bitmaps.
In this page
Overview
The 2D View panel offers basic bitmap painting tools which let you create or edit images manually directly within the application. These tools are particularly useful, for instance, for quickly painting masks.
The tools support pen input, including pen pressure. To take advantage of pen displays, you may undock the 2D view panel, then place and resize it into any configuration which is more comfortable for painting.
Edits can be undone individually, and all the other features of the 2D View panel are still available to you while you edit the image, such as Histogram panel, Tiled display, and Background image.
You can paint only on 8-bit bitmap resources which are new or imported.
Windows only
Tablet users should apply the settings described in the following page for the most reliable experience: Configuring Pens and Tablets
Enabling the painting tools
The painting tools will be enabled automatically in the 2D view panel when the following criteria regarding a bitmap are met:
- The bitmap is a new or imported resource
- The bitmap has 8-bit precision
- The bitmap is displayed in the 2D view panel
New bitmaps can be created the following ways:
- In the Explorer panel, click RMB on an SBS package or a folder within a package to open their contextual menu, then open the New submenu and select the Bitmap option
- In a graph, create a Bitmap node and select the From new resource... option in the contextual menu
The New bitmap window will open, letting you set the name, resolution and background color of the new bitmap resource.
New bitmap resources always have RGBA colors and 8-bit precision.
For the best performance with the painting tools, we recommend using bitmaps with resolutions which are powers of two – e.g. 128, 256, 512, 1024, ...
Toolbars
The painting tools and options are arranged in toolbars within the 2D view panel. These toolbars can be relocated to any side of the panel or as a floating toolbar, by clicking and holding LMB on their handle – displayed as a triple line – then releasing LMB at the desired location.
Two toolbars are displayed when the painting tools are enabled: the Tool selection toolbar and the Tool options toolbar, which are described below.
The painting tools can be found in the Tool selection toolbar, which is placed on the left side of the 2D view panel by default. Keyboard shortcuts let you access these tools quickly, and are marked below between parentheses after the tool/function name:
Color selection thumbnails: Let you define a primary and secondary color. Click on any of these thumbnails to display the Color editor window and define a color. Tools will use the primary color. The primary and secondary colors can be swapped (X) at any time
Brush tool (B): Applies the primary color at the cursor location, when the pen tip or LMB button is pressed, using the options defined in the Tool options toolbar
Stamp tool (T): Lets you stamp a part of the image onto another. You can define the source which should be stamped by holding the Alt key and clicking LMB. This area of the image will then be stamped onto the target area of the image at the cursor location, when the pen tip or LMB button is pressed, using the options defined in the Tool options toolbar. Please note the source will track the movements of the target, and that the size of the source area will match the size of the brush
Enable alignment (Stamp tool option): Lets you define whether the source should stay in place when a new stamp begins, or if it should relocate relatively to the new stamp location
Eraser (E): Replaces the current color of the image with the (0, 0, 0, 0) value at the cursor location, when the pen tip or LMB button is pressed, using the options defined in the Tool options toolbar. Make sure the Transparency display is enabled to keep track of the impact of this tool on the Alpha channel.
Tool options toolbar
The options for the tools available in the Tool selection toolbar can be found in the Tool options toolbar, which is placed on the top side of the 2D view panel by default.
BRUSH SELECTION
The Brush selection lets you select a preconfigured brush from the available brush presets, set its Size and Hardness (see Shape section of Brush editor), and displays a preview of a brush stroke.
Brush presets can be created and edited in the Brush editor and arranged in libraries. The brush presets which will appear in this panel is the sum of all loaded brush presets libraries. These librairies can be managed by accessing the Brush library menu (see Presets section of Brush editor)
The Select background color button lets you change the background color of the brush stroke preview.
BRUSH EDITOR
The Brush editor gives access to granular options to define the behaviour of the brush:
Presets
Brushes can be customized then saved as a Brush preset, which will then be available in the Brush presets list and the Brush selection panel.
To create a preset, set the properties below to your liking, then click the Add brush preset button and set a brush name in the Preset name window. The new preset is now automatically selected in the Brush presets list, and at any time you may update it with the new current settings, or delete it.
Presets are organised and saved in libraries, which can be managed in the Brush library menu:
Export library: save the current presets and all their settings to a library file
Import library: load presets from an existing library file, and add them to the current list – presets with the same name are replaced by the ones from the library file
Reset library: resets the current presets by the default library
Replace library: load presets from an existing library file, and dismiss the current list
Brush settings
The settings of a brush are grouped into the following sections:
The Shape type parameter controls the basic shape of the brush. Available shapes are:
- Ellipse: a round shape set as a circle by default
- Rectangle: a straight shape set as a square by default
- Polygon: a straight shape which has a customisable number of edges and angles
Edges count (Polygon shape only): lets you choose the number of faces of the polygon
Inner radius (Polygon shape only): provides control over the distance between a face midpoint and the shape center, effectively creating a star pattern
Hardness: defines fade radius of the shape
When applying a brush stroke to the image, the stroke is effectively a repeated stamping of the brush pattern, following the behaviour defined by the controls in this section.
Size: sets the diameter of the brush shape in pixels
Size jitter: lets you randomize the brush size per stamp, is expressed as a percentage of the Size value and controls the range of random values from 0 to the Size value
Size control: if you use a pen input with support for pen pressure, you can use this parameter to let it control the brush size
Spacing: controls the spacing between each individual stamp along a brush stroke. This helps separate and define the shape patterns more clearly
Roundness: by default, the Shape type selected in the Shape section has a width-to-height ratio of 1:1. This parameter lets you change this ratio by lowering the width as a percentage of the height
Roundness jitter: lets you randomize the roudness per stamp, is expressed as a percentage of the Roundness value and controls the range of random values from 0 to the Roudness value
Angle: controls the rotation of the brush pattern in degrees
Angle jitter: lets you randomize the rotation per stamp, is expressed as a percentage of the Angle value and controls the range of random values from 0 to 360 degrees
By default, the shape pattern is stamped strictly along the stroke. You may want to disrupt this by applying an offset to the shape pattern so they can be scattered around the stroke for a more organic or chaotic effect.
Scatter: the maximum distance by which each individual stamp should be offset from the stroke, expressed as a percentage of the brush size. Note that this distance is randomized by default from 0 to the set percentage of the brush size, and that the direction of the offset is also random
Count: the number of scattered copies of individual stamp
The color applied by the brush is defined by the selected primary color – and the Brush texture, if one is currently applied. This color can be changed dynamically using the controls in this section.
Flow jitter: lets you randomize the flow per stamp, is expressed as a percentage of the maximum flow
Flow control: if you use a pen input with support for pen pressure, you can use this parameter to let it control the flow
Hue jitter: lets you randomize the color hue offset per stamp, is expressed as a percentage of the entire hue span
Saturation jitter: lets you randomize the color saturation offset per stamp, is expressed as a percentage of the entire saturation span
Brightness jitter: lets you randomize the color brightness offset per stamp, is expressed as a percentage of the entire brightness span
You can apply a bitmap file to the brush, and use it to stamp that bitmap instead of a flat color. The brush texture behaves as follows:
Texture file: defines the path of the bitmap which should be used as a brush texture. You can select the bitmap through your system file browser by using the button next to the input field
The texture only replaces the basic flat color of the brush, meaning that all the brush properties listed above can still be used and function as described
The texture's colors are hue-shifted towards the set primary color, meaning that if the set primary color is white, the texture colors can be used as-is. The more saturated the set primary color is, the more the texture colors whill be hue-shifted towards it
OPACITY/FLOW
The Brush, Stamp and Eraser tools offer controls for the Opacity and Flow:
Opacity controls the maximum opaqueness of the stamp. It is additive on separate strokes, meaning the opacity of an area can be added back to its maximum of 100% by performing multiple separate strokes in that area
Flow controls the amount of the tool's effect which is applied at any given time. It is additive on the same stroke, meaning the opacity of an area can be added back to its maximum of 100% by performing multiple passes of the same stroke in that area, or multiple separate strokes.
TILING MODE
The Brush, Stamp and Eraser tools also let you set their Tiling modes, which define their ability to loop back around to the opposite side of the image when a stroke impacts an area outside of the image's bounds:
Tiling X and Y: brush strokes tile both horizontally and vertically
Tiling X: brush strokes tile horizontally only
Tiling Y: brush strokes tile vertically only
No tiling: brush strokes do not tile