How to Use Substance Designer to Create Basic Networks

How to Use Substance Designer to Create Basic Networks

Nodes 101: A non-destructive workflow. Learn how to build robust and modular Substance Designer Networks with ease.

Nowadays, Substance Designer is one of the best 3D material authoring tools that you can find on the market.

For those of you who are opening Designer for the first time, the interface might look a bit intimidating, unintuitive, or overcomplicated because of its nature based on nodes.

Nodes are elements that provide different functionalities essential for a non-destructive workflow (making changes without overwriting what you’ve already done).

Furthermore, creating materials in Designer is just like sculpting a human body in Zbrush. What I mean by that is:

You start from primary shapes and big massesFrom there, you add secondary and tertiary detailsAnd finish with micro details

When creating materials, you have to think in the same way. Work from the largest details first, then “zoom into” the smallest. Or, for instance, when creating a basic rock, you’d start from the largest forms and incrementally add small details until you’re satisfied with the result.

In this article, I’ll cover how to model the primary shapes and teach you how important it is to choose the right nodes for a solid base. We’ll cover a bit of the secondary details without getting into too much detail. (We won’t be talking about texture maps like albedo, roughness, and so on, as it’s not the purpose of this article.)

This article assumes that you’ve already opened Designer a few times and know the basic interface (and have some familiarity with generating the output from the nodes)—we will discuss nodes later on.

CobblestonesAn example of material I created in Substance Designer. Image via Artstation.

Creating a Basic Rock Wall

When you approach Designer, rocks are the first thing you’ll probably learn. Nonetheless, it’s a common error to start with several nodes and think about secondary details before everything else.

With few nodes, you can have a solid base for your next steps and a decent network to work with.

This is an example of a basic rock wall we’re going to discuss in-depth. I modeled the main shapes and added a bit of secondary details on the rocks. From this base, you can add more nodes and subnetworks in order to have tertiary and micro details.

Basic Rock ExampleBasic rock example rendered in Marmoset Toolbag 4.

Tiling Operation ResizedThe same rock wall but with a different tiling.

For the purpose of this network, we’ll use sixteen nodes. This is sufficient to obtain the previous result. The network can be divided into three parts:

The generation of the main shapesThe addition of basic cuts to the rocksThe addition of some noise and details to the surface where the rocks sit

Rock Wall NetworkThe Substance Designer network for the basic rock wall.

Consider the first three nodes, which are essential to define the main shapes. These are:

The Brick Generator nodeThe Distance nodeThe Edge Detect node

Creating Main ShapesThe nodes used for the main shapes.

The Brick Generator

The Brick Generator, as the words suggest, is responsible for the creation of the basic structure. The node itself has a lot of parameters to work with, and I strongly recommend experimenting with some settings before moving on.

The Brick Generator basically builds a pattern based on bricks. This is the list of the parameters I used:

Brick Generator ParametersParameters in the Brick Generator node.

It takes time and patience to establish the best setting, but don’t give up. Here’s an easy exercise: Try to change the brick number in X and Y, as well as the Gap between one brick and another. You’ll be able to see different variations as you slightly change these sliders.

The Distance Node

I could have just considered the bricks as basic shapes, but I wanted to have a custom variation.

Now we turn to a powerful node called the Distance node. It performs an outward linear fade from any pixel, until an element reaches its neighbor elements—the shapes will never overlap and that creates an interesting pattern for our network.

This node is cool for creating Voronoi patterns.

The node has two inputs—a mask to control the effect of the distance fade and the source. The output of the Brick Generator is connected to both of the inputs of the Distance node. The maximum distance parameter is set to an extremely high value (6,000), to remove the gradient effect of the node.

The Edge Detect Node

Once you’ve obtained a nice output from the Distance node, it’s time to create some gaps and edges.

I used the Edge Detect node, which detects the contrast to create a black and white image with some edges.

The result is managed by the Edge Width and the Edge Roundness parameters. The former allows choosing an appropriate width while the latter creates rounded edges. I chose 1.35 and 5.8, respectively.

Generating Cuts

The next part of the network allows us to give the shapes some depth and cuts, in order to create the final rocks.This is achieved by a common node called Flood Fill node. The node itself doesn’t do anything, but it prepares the input to a series of amazing effects and transformations.

I created three copies of the node called Flood Fill to Gradient Grayscale. They simply fill our shapes with a random gradient, controlled by a parameter called Angle Variation, that is different for each copy of the node.

Rock CutsThe nodes used for the depth and cuts of the rocks.

If we blend them together with two Blend nodes set to min, we obtain a grayscale image with some cuts on the shapes (see the cuts in the following image).

Cuts DetailsSome cuts on the shapes.

The Auto Levels node works on the luminance histogram to cover the full range from black to white, thus, it increases the contrast. This is nice if you want to increase the displacement of the rocks (in this case, we do).

The Gradient Map node isn’t crucial, but it helps us remap the grayscale input to a custom ramp map. I used it with another Blend node set to min, to generate a new series of cuts.

By mapping the output to the height and the ambient occlusion maps, this is what we have—the primary shapes.

Basic ShapesMain rocks with simple cuts.

A Bit of Secondary Detailing

As I mentioned at the beginning, the purpose of this tutorial is to explain the main shapes. Nonetheless, I wanted to start covering the possibilities of some secondary shapes.

Secondary DetailsAn easy example of secondary details.

The Directional Warp node takes our previous output and a Cloud 2 node (which is a noise generator) as inputs. It performs a warp along a precise direction (245 degrees to be precise) and with an intensity of 10, by deforming our rocks with the noise generator.

The purpose is to add a first level of secondary details. From there, you can experiment with other noises and generators.

Finally, I used a Height Blend node which blends two inputs, deciding at what height the first (Cloud 2) combines with the second.

The Height Offset parameter (set to 0.08, in my case, very low) allows me to fill the gaps with some noise (Cloud 2). For high values of the Height Offset parameter, the cloud noise will tend to cover the rock wall.

Cylinder Secondary DetailsSecondary details mapped on a cylinder. I adjusted the tiling and the offset of the texture to capture a more interesting pattern.

Small Variations, Different Results

We’ll now demonstrate how we can easily modify the result by applying small changes to our network. The goal is to smooth our rocks a bit and blend them with the base.

Terrain Blending

Terrain In-DepthTerrain Blending Cube MappingIn these examples, the rocks are being merged more with the base.

There are many approaches to this concept and several unique pathways, so I’ll show you a quick way you can reach the previous result.

I added six other nodes to the previous network and quickly changed some parameters.

Group 1 lowers the edges of our rocks towards the base. Node 2 is simply a Blend node between the result of the cuts and the result of Group 1.

Finally, node 3 is the Auto Levels node, used to adjust the luminance histogram and add more depth to the final result.

Network ChangesNew nodes adding more variations to our rocks.

The Flood Fill Mapper Grayscale Node as a Powerful Solution

Let’s explore Group 1.

Lowering the EdgesGroup 1 in-depth.

The general idea is to create a simple circular shape and use it as input in the Flood Fill Mapper Grayscale node.The Mapper is powerful because it maps the circular shape onto each rock that comes from the Flood Fill node. This way, we establish a gradient where the height decreases as we move away from the center.

The Histogram Range and the Levels nodes are used to tweak the luminance of the input and output of the Mapper, respectively. I strongly invite you to find your right parameters while working with those nodes.

Node 2, previously mentioned, performs a multiply blending operation between the result of Group 1 and the basic rock wall with cuts.

Here’s the comparison just before and after the blending.

Scroll and see the comparison. After the blending—although the edges look darker and that means lower height—the center looks the same.

Also of note: The brick wall pattern might look a bit different from before because I wanted to introduce a small variation in the final result.

Finally, you have to tweak the Height Offset parameter in the Height Blend node (around the value of 0.18), to make the rock sink a bit into the base.

That’s it! You’ve just learned how to apply variations.

Not Just Rocks

In this last part, we’ll have a quick look at a different way to use Designer for the creation of simple patterns. We’ll start from primitive shapes in order to generate a more complex design.

This is the final network:

Decoration NetworkNetwork to generate our custom pattern.

Custom PatternCustom pattern built from primitive shapes.

The pattern is abstract and the intention is to use it for decorations or ornaments for ceilings, or whatever suits your needs. Again, this is just an idea, you can continue from here, or create your own decoration from scratch.

We’ll essentially make use of three kinds of nodes:

Shape nodeTransformation 2D nodeBlend node

The Shape node provides users with several different primitive shapes—circles, squares, cones, pyramids, and so on. They serve as basic inputs to build complex shapes.

The Transformation 2D node, instead, is used to manipulate the 2D shapes, so that we can apply translation, scaling, rotation, and many other operations.

The Blend node, in this particular case, is necessary to combine and merge the result of different shapes.

The Network In-Depth

Let’s see the network in-depth. I invite you to follow the description of every single node.

Node DescriptionsNode descriptions.

Here’s the part where we build the eye-shaped pattern. Again, we use a simple primitive to extract the oval shape, then work on its upper and lower part.

Simple PatternsThe “Creating offset” part takes two copies of the eye shape and creates a small offset in order to extract the upper and lower lids with simple Subtract Blending modes.

Finally, we create the frame for the eye shape.

Simple PatternsThe stripes are built by starting from a simple disc. Notice how many controls you have to manipulate your shapes!

It’s time to combine the three parts together.

The following subnetwork is quite easy. Simply put, it takes the three described outputs, combines them together by two different blending modes, and adds a square frame.

The Invert Grayscale node simply inverts the grayscale input. The result is easier to combine with the final shape (max blending mode).

Pattern CombinedCombining the subnetworks to create our final pattern.

Maybe the most interesting part of the previous network is connected with the Tile Sampler: a tile-pattern-generating node. In our case, this takes the final shape by duplicating it in X and Y several times.

The node has lots of parameters to work with and most of them are intuitive. As this can hold several configurations, I invite you to explore and find your best configuration.

Here’s the final result:

Final Shape

Final ProductThe final result mapped on a cylinder.


We learned how to build a Substance Designer network from scratch and how important it is to start from the main shapes to incrementally add secondary, tertiary, and micro details.

Furthermore, we presented an example of a brick wall with some variations.

Finally, we showed how Designer isn’t just specific for rocks or terrains, but also for interesting patterns created from simple primitive shapes.

Take some inspiration and guidance from this article and build your networks with ease. You can also find examples of finished Substance Designer networks at my Artstation page.

Let’s stay on the design train with these inspiring articles:

10 FREE Unexpected Winter Color PalettesEverything a Designer Needs to Know About the History of Animal PrintsStill Life’s Journey Throughout History10 FREE Fall Color Palettes With a Neon TwistFREE Rainy Day Activity Sheets for Students – Download Now!

The post How to Use Substance Designer to Create Basic Networks appeared first on The Shutterstock Blog.

Read more:

Leave a Reply

Your email address will not be published. Required fields are marked *