Hi, my name is Lee Borrer and I’m a 3D artist at West Pier Studio. I studied Computer and Video Games Art at Solent University. I had an inspiring course leader, Adam Barton, who made sure we knew how highly competitive the industry we chose could be. He hammered into us that the only way we could break in is through constant hard work and self-motivation.
Since university, I have worked at West Pier Studio. It’s mainly a work for hire company that other studios or clients outsource to. Channel 4, Hasbro, Dovetail, and Atari are among our clients. I have worked on a lot of cross-platform projects varying in style, ranging from Military mixed reality simulators to casual mobile racing games. The majority of my time I have worked on real-time architecture visualization apps developed in Unity aimed at mobile or WebGL. I think the show home aesthetic of archviz makes me want to get a bit dirty or stylized in my personal projects to balance things out.
From Photoshop to Quixel to Substance Designer
When I began studying 3D I found texturing the most fun. I really enjoyed adding narrative and history to the piece, trying to make it believable, thinking about how and why an object has become worn, decayed, and soiled. I think you can save a bad model with good texturing but bad texturing is a lot harder to save with good modeling. When I began university Substance and Quixel weren’t really a thing yet. All my maps were created in Photoshop using my bakes from 3ds Max. For my first environment project, I sourced all the textures primarily using a camera and manipulated them in Photoshop, making them tile and painting in grunge, etc. - bricks, concrete, windows. If I couldn’t get a primary source, I would create it in Photoshop using masks and generated effects. Sort of the basics of what happens in Substance Designer. In Photoshop, I could generate a noise, add a motion blur, and make the base of brushed metal, for example. I had this purist mindset from art college that everything had to be created by you. Naive, I know! How would that workflow be sustainable for production times in the industry? By the second project I was using CG textures (later to become Textures.com) to source my base textures to work upon.
This way of texturing was still common practice as I entered the industry. Within a year Unity 5 and UE4 were released, PBR became a thing and I found Quixel Suite. I think I was drawn towards the latter due to it running inside Photoshop. I found it very similar to just sourcing textures and manipulating them. Instead of picking a wood from CG textures to start with, I would pick a wood scan, then layer and manipulate to create what I needed. Since then, all my materials have been created with Quixel Suite by feeding it my Colour ID, Normal and AO maps from 3ds Max or ZBrush.
I bought SD 2019 during a Steam sale last year. Friends of mine had been yelling at me to get it for ages, telling me that I needed it in my life. But there was always an excuse “I just gotta finish this personal project”, “I need to learn this other piece of software first” or “my children need my attention”. In December last year, I stopped making excuses and parked a project to start playing in SD. I used the SD Getting Started tutorial series to make a rusty metal. It helped me get into the software, navigate and push something through it. I then brought Dan Thiger’s Plasterwall tutorial (a beautiful material), took a day's holiday, and banged that out. It was a lot to try and take in but it did let me handle the power of the tool which felt good. After that I made my first self-directed material. I wanted to start with something beginner-level, fun, and interesting. I picked a public toilet floor!
I now realize how amazing this tool is, the speedy iteration and non-destructive workflow is a material artist’s dream. A simple thing like adjusting the scale of an element at the beginning of your graph, then watching it cascade and update through to the final material preview is so satisfying. I really regretted not picking it up sooner. I left SD for a few months to finish my other personal project and then jumped back into it again a couple of weeks ago to start the lockers.
Lockers: Inspiration & Goals
I got inspired by the cover of the Sunglasses Kid album, I thought it was an interesting subject to have a go at in SD.
Maybe it’s that nostalgia element, something that provokes a memory from your youth. I thought about the narrative possibilities, maybe each locker could somehow reflect the personality of its user. Overall, I wanted to have fun with it, give it a few personal touches and draw from personal experience. With a material subject like this, I could have a time and place to help guide the direction with my sticker and graffiti choices. The stickers were based on popular crazes I remember from my youth. It’s like trying to weave bits of truth into a lie to help the audience believe and become immersed.
My main goal of the project was to learn more about SD. I also wanted to play with a lot more nodes than when making my previous material and make it more challenging to broaden my knowledge.
The first step, as with any project, was reference. I gathered some nice shots of the style of the locker I wanted, finding close-ups of the individual parts I was going to build up and made a PureRef scene. If I ever got stuck during production on something I was not sure of, I searched again.
Breaking it down, the material is essentially a set of primitive shapes tiling. I created one locker individually first, then put it through the tile sampler.
Locker elements built up:
To create the different locker parts, I blended shapes together and controlled their height value using the Levels node. I used Blur HQ Grayscale a lot to get rid of jagged height and with Levels to round corners of a shape.
Shape build-up of the combination lock:
Only after I had a brand spanking new set of clean lockers, still in only height, normal and AO information, would I go back and fold in the dents, edge lippage, damage, and scratches starting to create their narrative. Edge lippage was achieved by isolating the door panel tile, then using Flood Fill to gradient, but with some extra masks to control it and prevent it from lipping where it shouldn’t, like on the hinges. I also used Flood Fill to Random Grayscale to break it up further.
Working with Variables
I tried exposing the color management as well as the sticker and graffiti placement controls, but my computer screamed and hung in Marmoset whenever I tried adjusting them. Not sure if this is because my machine is 8 years old or my material was too heavy, probably both! So I exported the variations out separately for beauty shots. The lockers are set with one base uniform color.
After the lockers are tiled I mask in some subtle color variation using an HSL node. So any change to the base color will automatically inherit these adjustments.
The mask is a mixture of the Sun Bleach and Dirt nodes.
I hunted down the stickers I wanted from Google images and arranged them into an atlas.
Using the cropping sliders in the Blend node I isolated each sticker image. You could customize the sticker images by updating the atlas, keeping to its borders.
80 Level stickers:
For the random placement I used the Mutli Sampler node from Substance Share, as this allowed for more image inputs than the standard tile sampler. I played around with the adjustments until I was happy with the random sticker distribution.
I used the Mask Map input to control the sticker placement areas, masking out vents, handles, and locks. Stickers on these elements didn’t look believable.
To increase the number of stickers, I isolated the control to a Levels adjustment by knocking down the white value of my mask map input. Dark gray = Fewer Stickers; Light Gray = More Stickers.
Sticker wear-and-tear effect was created using Flood Fill nodes again, but creating two layers of sticker damage using Histogram Select. One layer of surface image peeled to paper and another layer for the paper peel.
Sticker wear nodes:
Sticker wear was isolated to a Levels adjustment after the Flood Fill to Gradient node.
The direction of sticker wear was controlled by angle adjustment inside Flood Fill to Gradient
This was fairly simple, I let the Metal Edge Wear node do most of the heavy lifting here and created some masks to help break it up and control where I wanted it.
I wanted to add some bigger paint damage mainly around the corners of the doors and make it more interesting. Again, I used Flood Fill to Gradient, then a Levels to concentrate it on a corner with a Clouds blended for variation.
I found sticker and graffiti scatter challenging using the mask driven placement. Trying to make them look plausible and convincing took trial and error. Also, I discovered when creating the material in 2k and then switching to 4k, Marmoset gave me some undesirable effects I had to resolve. Mainly, the Flood Fill nodes behaved differently in 2k so I switched them specifically to 4k when editing in SD.
Advice for Learners
When I first started in Substance Designer, as well as reading the 80 Level SD articles I was listening to a lot of Alex Beddows GDD podcasts. He had some awesome material artists come on and discuss SD like Josh Lynch and Javier Perez and there was a conversation about how best to learn the tool. They encouraged people to pick a material and tackle it, find solutions to problems as they come up. If you find a certain property or characteristic you want that you can’t achieve, look specifically for that isolated issue online or through a related tutorial. I found that information went in easier along the way as I solved the problems and achieved the properties.
My personal advice is to try and pick something interesting to you and make it fun when trying to learn SD. Learning a new piece of software is tough sometimes, there can be a lot of struggles trying to push it through. Picking a random vanilla flavor material to learn with could make it more of a chore and unrewarding, so pick a material that gets you inspired or excited and have some fun.