This video shows how to create a concrete material using Substance Designer. You will learn how to procedurally generate a concrete material within Substance Designer.
Basic Template
Begin with a new project and use the Metallic-Roughness template
Give your graph a name and set your texture size
Use the Space Bar to add a base material node
Under the instance parameters, change the material preset to dielectric (which essentially means non-metal)
Under the user defined maps section, activate normal, AO, and height maps
Add a normal map node and plug it into the normal input of the base material
Under the specific parameters, you can use either OpenGL or DirectX for the normal format – I use OpenGL because it is compatible across more platforms (both operating systems and game engines)
Add a histogram range node and connect it to the height input of the base material
Since the ambient occlusion is determined by the height map, plug the histogram range node into the AO input of the base material
Select this new connection and add an ambient occlusion (HBAO) node
You can delete the nodes connected to the output nodes
Right-click on the base material and choose view in 3D view
Concrete Base
For the base concrete, add a fractal sum base and connect it to the normal and histogram range nodes
Under the instance parameters, make changes to the roughness and global opacity
You can also change the min level and max level
Add a warp node and connect the fractal sum base to the input
Under the specific parameters, you can change the intensity
Add a clouds 3 node and connect it to the gradient input
Under the instance parameters, change the scale and disorder
Select these three nodes, right-click and add a frame – naming it appropriately
Second Layer
For the second layer, add a grunge texture
Under the instance parameters, change the balance and contrast
Add a warp node and connect the grunge map to the input
Under the specific parameters, increase the intensity
Add a Perlin noise and connect it to the gradient input
Under the instance parameters, decrease the scale
Adjust the intensity of the warp
Add a blend node and connect the warp node to the foreground
Connect the warp node from the base concrete to the background
Under the specific parameters, change the blending mode to soft light and lower the opacity
Connect the blend to the normal and histogram range nodes
Select these three nodes, right-click and add a frame – naming it appropriately
Third Layer
For the third layer, add a Perlin noise and decrease the scale
Add a levels node to the Perlin noise
Under the specific parameters, move the black color stop to darken the Perlin noise
Add a sharpen node to the levels
Add a blend node and connect the sharpen node to the foreground
Connect the first blend node to the background
Under the specific parameters, change the blending mode to linear dodge
Connect the blend to the normal and histogram range nodes
Select these three nodes, right-click and add a frame – naming it appropriately
Fourth Layer
Add a grunge map to start the fourth layer
Since this should be a lighter color, under the instance parameters, increase the balance
Add a transformation 2D node to the grunge map
Under the specific parameters, multiply the grunge map by 2 – this will increase the scale of the grunge map
Add a sharpen node and under the specific parameters, increase the intensity
Add a blend node and connect the sharpen node to the foreground
Connect the second blend node to the background
Under the specific parameters, change the blending mode to subtract
Connect the blend to the normal and histogram range nodes
Select these three nodes, right-click and add a frame – naming it appropriately
Cracks
For the cracks, add a cells 2 node and under the instance parameters, decrease the scale
Also decrease the edge width to a very low number
Add a directional warp node and connect the cells 2 node
Add a clouds 1 node and connect it to the intensity of the directional warp
Under the specific parameters of the directional warp, you can change the intensity and warp angle
To add some more interest to the cells, add a warp node and connect the directional warp node [top]
Add a gaussian noise and connect it to the gradient input of the warp node
Double-click the warp node and single-click the gaussian noise
Under the instance parameters, decrease the scale of the gaussian noise
To add some smaller details, add a transformation 2D node
Connect the cells 2 node to the transformation 2D node
Select the transformation 2D node and under the specific parameters, under the stretch option, divide by 2 – this will shrink the texture
Duplicate the directional warp and connect the transformation 2D node to the input
Add a blend node and connect the duplicated directional warp to the foreground and the warp node to the background
With the blend node selected, under the specific parameters, change the blending mode to multiply
To better blend the small details, decrease the opacity of the blend
Add a levels node to the blend node
Under the specific parameters, change the black output to fade the black and white of the details
Add a blend node and connect the levels node to the foreground
Connect the third blend node to the background
Under the specific parameters, change the blending mode to multiply
Select these nodes, right-click and add a frame – naming it appropriately
Texture Outputs
Now that you have the basic geometry set, you can start using the texture outputs
Delete the base material node
Connect the normal node to the normal output
Connect the histogram range to the height output
Connect the ambient occlusion node to the AO output
With the ambient occlusion node selected, under the instance parameters, change the GPU optimization to true
Base Color
Add a uniform color node to the base color output
Under the specific parameters you can change the output color [
Roughness
To change the roughness map, add a curvature smooth node and connect the normal node to it
Connect the curvature smooth node to the roughness output
Under the instance parameters, if you are using OpenGL, you will need to change the normal format
Metallic
We will not be using the metallic map so you can just delete it
Exporting
In order to export this material, select the Output nodes
Under the Tools menu, select Export Outputs
This will make the material available for use in external programs
If you want to use this material in Substance Painter, select the Package and click on the Publish button
From here, you have the option to Publish the file – this will give you a prompt to save the file
You can then drag the file into your shelf in Substance Painter
You also have the option to send the material directly to Substance Painter