Tips for Substance Painter and Substance Designer
Subscribe:  iCal  |  Google Calendar
7, Mar — 1, Jun
York US   26, Mar — 29, Mar
Boston US   28, Mar — 1, Apr
Anaheim US   29, Mar — 1, Apr
RALEIGH US   30, Mar — 1, Apr
Latest comments

Very interesting! Thank you Valery for such a useful review of your work!

I found your blog to be very informative. I am very happy to read your blog it's very useful to me.

by Tomasz Wikliński
10 hours ago

Great stuff. And many thanks for those tuts by Jason! They helped me a lot.

Tips for Substance Painter and Substance Designer
4 September, 2016

In June 2016 Gnomon helped to host Substance Days – a great event, which featured a bunch of professional artists, sharing tips and tricks of Substance Designer and Substance Painter. Plus it also featured a nice keynote from Allegorithmic, which we attended. Unfortunately not everyone was able to travel to LA to be present at the event, but guys from Gnomon made a little article, which features the highlights from Rogelio Olguin, Environment Texture Artist at Naughty Dog, Leo Ribeyrolles, CG Artist at Blur Studio, Glauco Longhi, Senior Character Artist at Santa Monica Studio and Christophe Desse, Technical Artist at Naughty Dog. You can also check out the full presentations on Gnomon’s Livestream channel fro free.

You can find the original post here. And there’s not 10 but 8 pieces of advice actually. But they are still great.

1. Keep your node graph organized (Substance Designer)


Substance Designer graphs quickly get complicated. Grouping related nodes into frames and keeping them well separated makes it easier to see what’s going on at a glance.

Watch the video (07:30 – 12:00)

In Substance Designer, graphs can get complicated quickly. To avoid confusing coworkers when you pass over materials you have created – or confusing yourself when you come back to a material you haven’t worked on for a while – keep your nodes organized, says Rogelio Olguin.

The image above shows the node network for a procedural bricks-and-mortar material. Choosing different inputs for the Pattern Switch section of the graph generates a range of different-shaped bricks and tiles. Note how groups of nodes with a shared function have been grouped into frames (Right-click > Add Frame) and given appropriate names, and kept well separated from one another.

It also helps to work from left to right. In the image above, the frames that generate the height map for the material (Pattern Creation, Pattern, Pattern Switch and Stone Damage and Grout – the latter of which generates the spacing between the bricks, and the wear on their edges) are on the left of the graph; the frames that generate the material properties (Albedo, Roughness and Ambient Occlusion) are to their right; and those that generate the final output are to the far right.

The same holds true for the nodes within a frame: for example, in the Stone Damage and Grout frame, the nodes that generate the largest forms are on the left of the frame. As you move towards the right of the frame, the forms that the nodes generated become progressively smaller and smaller.

You can also use the vertical axis of the graph to separate different types of nodes. In this example, all of the noise sources used to generate procedural wear effects have been moved to the bottom.

2. Create quick edge wear effects (Substance Designer)


A noise source and a blur node connected to the Slope input of a Slope Blur Grayscale node create organic-looking irregularities in the edges of bricks and tiles.

Watch The Video (31:15 – 34:45)

The Directional Warp, Directional Blur and Slope Blur Grayscale nodes are all good for generating realistic-looking irregularities and wear effects in the edges of tessellated materials like bricks.

In the video linked above, Rogelio Olguin shows their effects on a simple checkerboard pattern (Generators > Patterns > Checker 1). Using a stripe pattern (Generators > Patterns > Stripes) instead would create wood grain effects. To add the nodes themselves, right-click on the graph and choose Add Node, or select them from the Library.

The Directional Warp node can be used in conjunction with a spherical gradient (Generators > Patterns > Shape, then move to the Instance Parameters for the node on the left of the screen, and select Paraboloid from the Pattern rollout) to generate nice organic-looking wavy edges. Connect the pattern source (in this case, the checkerboard) to the Input of the Directional Warp node, and the spherical gradient to its Intensity Input. In the Specific Parameters rollout on the right of the screen, set the Intensity to a low value, and adjust the Warp Angle setting as necessary.

The Directional Blur node works in a similar way, but softens the edges of the pattern.

The Slope Blur Grayscale node can be used in conjunction with a noise source (in this example, Rogelio is using the Cloud 3 noise) to generate edge wear effects. Connect the pattern source to the Grayscale input of the Slope Blur Grayscale node, and the noise source to the Slope input. In the Instance Parameters rollout, set Samples to near the maximum value, and reduce the Intensity.

To refine the edge wear effect, connect a Blur HQ Grayscale node between the noise source and the Slope Blur Grayscale to get a more organic-looking wavy edge. Try different settings from the Mode drop-down of the Instance Parameters. The Min setting moves the edges in; the Max setting moves them out, and can be used to create interesting eroded effects.

3. Painter isn’t just for painting! (Substance Painter)


Despite its name, Substance Painter isn’t just for painting. This robot hand was textured using Generators and Masks rather than hand-painted strokes.

Watch the video (02:00 – 19:00)

Although many people think of Substance Painter as a tool purely for hand-painting, it’s actually a very powerful procedural texturing package. Leo Ribeyrolles createdThe Soldier, a cyborg character for a short film, as a test piece to see what is possible using only procedural techniques. The character took two days to set up, and two days to texture, working part-time.

Leo began by assigning simple base shaders for the character in 3ds Max and test rendering in V-Ray to fine-tune the settings. The character’s skin uses the V-Ray skin shader. Rather than spend time setting up complex shaders, the fine detail was created in Substance Painter using Generators and Masks, using layering to build up complexity.

Because the textures are procedural, the output remains fully editable, making it much quicker to accommodate the director’s feedback than painting details by hand and using blending modes.

“It’s a very efficient workflow: it’s more like art direction than texturing,” says Leo. “I could create dirt on the character’s face in 10 seconds rather than the minutes it would take to paint it in by hand and test the result in V-Ray.”

4. Don’t rely on procedural tools alone (Substance Painter)

Watch the video (20:40 – 21:40)

While a procedural workflow gets you good results quickly during look development (see Tip 3), the asset often ends up with a characteristic look that reveals that it has been textured in Painter.

Glauco Longhi estimates that procedural techniques get you 75% of the way to a hero-quality asset off the bat, but to properly finish the textures, you need to edit or paint in details manually.

“It’s hard to make something terrible-looking [in Substance Painter] because you have all these pre-made materials, but to take [the asset] to the next level, you need to hand-paint,” he says.

5. Make Painter work with V-Ray (Substance Painter)


Watch the video (26:15 – 30:00)

One advantage of Substance Painter is that is comes with a range of export presets for getting your texture maps into a range of renderers and game engines, says Leo Ribeyrolles. For V-Ray, use the Config > Vray option from the Export document… dialog (or if you’re using Substance Painter 2.1 or above, and use a UDIM-based texturing workflow, choosing Vray UDIM instead).

If you’re using a standard VRayMtl material inside 3ds Max, and generating texture maps in JPEG format, you need to assign the maps Substance Painter creates to the Diffuse, reflection (Reflect), reflection glossiness (RGlossiness) and Fresnel IOR map slots – the latter is particularly important to get consistent results between the Substance Painter viewport and the final V-Ray render. If you’re generating normal or height information, plug it into the Bump map slot.

(Generating texture maps in EXR format requires fewer maps, since it is no longer necessary to override settings like Reflection or Reflection Glossiness, or the normal map information.)

This set-up gives good results out of the box, although you may want to adjust the settings in the BRDF rollout, particularly GTR tail falloff when using the Microfacet GTR (GGX) option.

6. Use the right ZBrush export settings for Painter (Substance Painter)


Watch the video (17:20 – 18:15)

When exporting your model from ZBrush for use in Substance Painter, uncheck the Grp option in the ZBrush export dialog, advises Glauco Longhi. Doing so exports the sub-meshes of the model – for example, a character and its armor – enabling you to texture them separately, and prevents errors with asset naming when transferring the model between software packages.

For smaller elements that don’t use their own sub-mesh – for example, studs or rivets – you can use ZBrush’s Polypaint toolset to fill in their outlines, then include the Polypaint data when you export and use it to generate an ID map in Substance Painter, enabling you to isolate the element automatically. To do so, set Color Source to Vertex Color in the ID baker parameters of Painter’s Baking dialog.

7. Double your texture resolution before exporting (Substance Painter)

Watch the video (22:15 – 23:15)

Substance Painter lets you paint textures at any resolution you choose, automatically recalculating the maps when you change resolution. It’s usually best to work at the resolution at which you’re actually going to use the maps, advises Glauco Longhi, but stepping up one resolution level immediately before you export can give you extra sharpness in fine details.

To change resolution, use the Size drop-down in the TextureSet settings. Options range from 128 x 128px to 4,096 x 4,096px. Substance Painter 2.1 also introduced experimental support for 8K maps.

8. Give your Smart Materials generic names (Substance Painter)

Watch the video (19:30 – 20:00)

Don’t just rely on Substance Painter’s preset Smart Materials: force yourself to begin a new Smart Material every time you create a new asset, advises Christophe Desse. By doing so, you will quickly build up a library of custom materials tailored to the needs of your own projects.

Avoid giving Smart Materials very specific names like ‘gun scratched metal’. While the material may originally have been created for a gun, that isn’t the only situation in which it could be used. Giving a material a more generic name makes you more likely to think of more creative ways in which to reuse it when browsing through your library.

If you have any Substance-related work to show, drop us a line at editor [at]



Leave a Reply

1 Comment threads
0 Thread replies
Most reacted comment
Hottest comment thread
1 Comment authors
Ant Recent comment authors

Kinda funny bout tip #3, because most people I see actually only use procedural materials and never paint anything.

For good textures, many layers of procedurals and some manual painting be used (whether for masks or actual paint)