Tree Bark Texture Study

As a change of pace from my last project, I decided to do some Tree Bark texture studies and work in Substance Designer some more. Here are my final results:

(Please click on the images for full res versions)

Originally my inspiration came from spotting an interesting tree bark in my hometown, and upon research bark types online I found artwork by Peter Sekula. After seeing these, I decided to try and create my own version.

First off, I found some images of various, older barks, mainly American Red Wood tree bark, American Cypress tree bark, and olden worn down, damp trees which would have fallen down.


After studying this and looking at other processes for creating bark, I created a step by step basis to create the bark height map, which I could then use later on to create all the other graphs.

First I recreated the vertical strip-like details as a noise, and applied this to vertical disk-like shapes, which were then scattered and tiled to create the basis of the bark, blended with a finer version of the tiled bark for finer details. I then warped the bark to keep it from being perfectly straight, and used randomly scattered blurred points, subtracted from the original bark grain to create bark knots, and blended them ontop of the bark. Finally, I filled in any perfectly black cuts in the bark with fine noise.

The finished Bark Height generation, to now be used for masking and creating the Height / Normal maps

Using this height map as a basis, I created the diffuse map. Wood diffuse colours are mostly noise based on what part of the bark it is, so I started off with a base noise and subtracted a linear grain from it to create stripes. I then subtracted a harsher noise, and began using the height map to select different heights of the bark and darken them (the deeper the grain, the darker the diffuse).

I then used an inverted way of selecting the height of the bark to add red tints with lighter rims around the redness to simulate height, and then adding darker bark layers ontop to go underneath the outer bark, whiter strips. The outer bark was generated with a huge mish-mash of noises blended with each other, and then added ontop using the height map levels again.

Using the normal map, I generated a curvature map to select finer flow lines of the bark and graded them to add in finer details yet again, and then to finish I added in subtle moss sections ontop, and used a harsher curvature map to darken edges to simulate ambient occlusion.

Finished Diffuse map, once the moss and final details were added:

The roughness map was created using a very softened, subtle layer of the height map (seen below). The right corner of the map is one of the height map selections I used in the process, where you can see it isolated the higher sections, leaving the lower half as black and not used.

Other than the height selection method mentioned above, another vital method I used was Quantizing the height map, which broke up the layers somewhat more than previously (which was otherwise soft and blended). The main quantized layer was far too harsh, so I softened it by blending it together with the original height map (as seen below). Doing this meant that the main layers were more distinguishable, which lead to the layered effects.

Leave a Reply

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