Breakdown – Wicker Substance Material

I needed a wicker substance material for all the baskets I was making for Rome: Fantasy Packs I and II. Substance Designer to the rescue! This one was 100% procedural.

This was fun to do. Since the wicker pattern is lower frequency, you can dial in a greater amount of detail. For patterns like this, it’s super vital that you have a tile generator/random on the side that can do color randomness so you can later directionally warp the albedo map, making it look more 3d.

Getting the shades of brown wasn’t too tough, but mixing in that purple proved to be challenging. Most of it was done via blending two ambient occlusion maps of different spreads, then mixing in some quick dirt blends.
wicker substance materialimg_569511c9e5ea1

Reference image. Some wicker like this one has some nice color variance like the tans, deep browns, and even purple. I felt getting the darkness in the pitted areas was important, as well as the mottling pattern on the strands.


The first step is to create the horizontal strips that weave. Softly bevel a rectangle, then make it weave on the Z axis by multiplying a vertical, beveled gradient. Offset a copy and blend that in. Tile it evenly. A hard greyscale mask is also made.


Make the vertical wicker by statring with a thin rectangle and beveling. Double it with symmetry. Offset and blend to make two on the edges of the canvas. The position here is important since the black space is where the weave will blend in.


I tiled both the same amount using a tile sampler node, then blended using Max Lighten. From here, just tile it as much as you want.


I arbitrarily blend random grunge masks using a custom directional noise node. I max/lighten high and low res versions together for subtlety, then Color Burn purple and tan versions. SD’s colorburn is not like Photoshop’s, so I made my own!


Add spots with Dirt 5 and 2 Max/Lighten’d. Then I just kinda get nutty with blending colors into the texture here for variation.


The texture is flat, so I used the hard weave masks to directionally warp the texture so the weave strands won’t have the same continuity as the vertical ones. I also darkened the texture. This is for the concave/pit areas of the wicker.

Did the same thing here but this is for the vertical and horizontal weaves. For the vertical weave, I just rotated the texture. The dark and light textures blended with just the horizontal weave’s heightmap. That and the vertical weave map then blend.


For the purple subtlety, I made another quick Dirt 5/Dirt 2 map, blurred it, then added that and an ambient occlusion map together to make the mask of where the purple would be multiplied in. Use ambient occlusion on the final heightmap to get the pits!