Procedural Texture creation

For a while now i've been learning to use a program called Substance Designer. It allows you to procedurally and nondestructively create textures for 3D programs to use. For me i've been trying to use it to emulate the Team Fortress 2 Style.


Node Workflow

There's been a few programs i've used in the last few years that use a node based workflow. Blender, Davinci Resolve Fusion and now Substance; so this felt very natural to me. 

Basiccaly you start on the leftmost part of the graph with something that produces a basic texture. These are usually procedrual noise textures or shape nodes.

Just like with a painting or any kind of "art", you start with very rough and basic shapes, and slowly add in detail over time. 

The set of nodes provided by Substance allow an artist to do mathematical transforms such as warps, blurs, blending with other sub graphs, color transformations, masking and a lot more. 

The coolest thing about it being procedural is that you can change the inputs at the beginning of the graph and can produce a lot of variation. These textures all are produced using the same procedure, but just have different base shape inputs:

Also technically all the nodes produce vectorized graphics under the hood, so you can scale your texture output to insane numbers like 16k x 16k. (For TF2 you generally work at 1024 or 512).


Maps, maps, maps

For Team Fortress 2, you generally work with diffuse textures, which is essentially just color with ambient occlusion baked onto it.

However substance is able to produce a wide variety of other maps useful for TF2.

Specular

Otherwise known as roughness; this is telling a renderer how shiney something should be. Or how much of the world to reflect on it's surface.

Normal

Normal maps are extremely useful and powerful and used almost everywhere.

Basically they allow an object to catch lighting without actually having any extra geometry. This is very powerful because calculating how light will hit a 3D object's face is relatively expensive (which is why game engines want low poly objects).

Normal maps do have their limitations though. If you view them really close up you can tell that it's actually just a flat plane instead of the geometery. They work best on adding small details like cracks, indentations or clothing folds but shouldn't be use to do larger details that need real geometry.

Height

One thing that I can't use because Source Engine simply doesn't support it is Height Maps. Substance Designer is very powerful with the addition of height maps. Basically they're black and white images that tell a renderer where to "push out" geometery. 

Here is an example that demonstrates it this very powerful feature:

Other Maps

  • Blend Modulation - Source Engine's way to blend between 2 different textures
  • Emissive - Source Engine allows a "self illumination" property so something looks like it glows while the object itself doesn't emit light

My First Textures with Substance

Okay, as usual my first attempts were horrendous, but its a learning process right?

 

This was a wood bark texture I tried to make, quite unsuccessfully i admit. Though with this one I do think i got a rough gist of wood, perhaps adjusting the colors a bit would help sell it better. Though either way this def does not fit into TF2.

 

This was an attempt to make sand. I think I got the general wavy flow of sand but actually getting the "grainy-ness" of it it a lot harder, and defiantly not as easy as just adding a bunch of little dots everywhere haha.

 

I'm happy to call this one a complete failure. This is intended to be a dirt texture. I'm not even sure what I was thinking making it, but again; you gotta have these failures so you can get a feel for the tool and learn how to do things better over time.

 

This one is a tile floor texture I tried to replicate, its got the basic shapes but it's missing the dirty floor look like the in game one has.

With all of these, its just baby steps. One thing I think i've done well in my life is embrace the learning process and accept that at the beginning of some new endeavor that I'm going to suck at it, but as long as I'm seeking to improve and being critical of my failures and understanding why I failed, then I improve quite quickly. 

These textures were my first steps; attempts that I made within a few weeks of owning the software. The next section is textures I made after a few months of continued practice.


Showcasing my "better" textures

Below is some textures and the graph for them that i've made after a few months of using Substance. These are much closer to the artstyle for TF2 and some of these I think could be used in game quite well.

Wood

 

Grass

 

Snow

 TrussCliff WallBamboo
Herringbone BambooChesterfield Gold Coins
Arrow Sign (recreation)

 Stone Wall

 

Crazy Stuff Expert Artists have Made

These all blow my mind that it's possible to do this all procedurally but here we are. I feel very inadequate compared to these guys, but then again they're all professionals. I do think admiring art of people who are better than you at it is a great way to learn and inspire. I'll also say that all of these look way more impressive because they have the benefit of using height maps, which makes it look a lot better than the flat stuff I do, but as said before, I can't use height because TF2's Source Engine branch does not support it unfortunately. Nonetheless these are all very impressive.