this is an Excellent article, the way its set out with the vids and pics. very technical but not rambley. I learnt alot out of it.
Bob would have been proud
Congratulations Lukas:) Amazing piece of 3D parametric shader:) thank You for sharing Your knowledge:)
François Hurtubise was kind enough to discuss his approach to using materials and decals to dress up dreary underground tunnels.
My name is François Hurtubise, and I’m an environment/prop artist living in Montreal, Canada. I first discovered 3D as part of a course in college three of four years ago, and have been studying game art more seriously since winter 2015.
I’m particularly interested in environment art because I find it’s a great way to showcase multiple disciplines: design, lighting, composition, modeling, texturing, and so on. I think game art in specific is good due to its set of tools and workflows, which give individual artists a chance to realize complete environments in a short amount of time.
I’ve had a bit of experience working in production at an indie studio called Elastic Games last summer, where I helped build some of the environments for the asymmetrical horror game Last Year . I’m currently looking to join a AAA studio in my hometown of Montreal.
This project actually started when I saw a cool photo of the old Tottenham Court Road Station tunnels of the London Underground. From the start, I knew that I wanted to make a shorter, small-scope project so I could have more environments in my portfolio. Unsurprisingly, what seemed at the time like a very simple scene proved to be much more complicated to create than I expected!
I was drawn by the relatively simple yet mesmerizing layout of the cylindrical TCR tunnel. I felt like it was an environment that wouldn’t require a large variety of props or textures, and would be perfect for a one-week project, while still giving me plenty of time to give each feature of the scene an appropriate amount of detail. I didn’t prepare a significant amount of research for the environment, as I’m used to looking things up as I work, rather than preparing large moodboards and reference folders in advance.
The modeling of the hallway was pretty straightforward. I started with a cylinder, and gave it a couple of bends to create an angle for the stairs. From that base, I was able to model other elements, such as the ground and stairs, as well as the railings.
Since the subway tiles were so crucial to getting the right look and scale for the scene, I quickly generated some tile materials in Substance Designer, and used them to lay the foundation of my UVs in Modo. Rather than going for a modular approach, I modeled the whole scene (minus details such as the railings and door) as a single piece within Modo. This allowed me to save some time, as I didn’t need to figure the exact dimensions to create a modular kit with proper snapping, and most of the tunnel I was planning to make had a unique layout anyway.
One reason why I chose to do this scene is because it had a small amount of relatively simple materials – this meant I wouldn’t spend a lot of time figuring out how to create incredibly complex surfaces, and could play with the subtleties of each texture to make things interesting.
I ended up creating six tileable textures for the scene in total, all within Substance Designer: the metal steps, the red railings, the concrete trims of the floor, the tri-color panels which border either side of the hallway, and white and green versions of the subway tiles. For each texture, I took care to only add subtle details, as to not make the tiling obvious – larger-scale detail could later come from my trims and decals. Since the Substance to Unreal export is incredibly quick, I could preview the scale of my tiled details directly within my Unreal project scene, and adjust them on the fly until I got something satisfactory.
The main material material within UE4 for this scene is composed of two parts – one of them accepts tiling textures based on UVs like any regular environment made with tileables, while the other blends a set of “trim grunges” based on a second UV channel. It’s a bit similar to Alex Senechal’s trim texture workflow, but rather than using the second UV set to add hard surface details to any desired texture, I use it to add dirt contextually.
After I was satisfied with my base materials, I created my dirt trim sheet and started adding extra edges and cuts in my mesh to support it. The dirt helped make the materials feel more grounded, as it appears in creases and where different surfaces meet – places where you’d expect dirt in real life, but couldn’t get any if you were limited to purely tileable textures with a single UV channel.
A shiny look
A general workflow for game art would be Modeling > Texturing > Lighting. For me, I do the modeling, but do a lot of back-and-forth between lighting and texturing. Lighting won’t give you an idea of the final product without some color values to look at, and despite PBR helping with material creations, materials won’t look their best unless they’re tested in a precise lighting scenario.
Using some flat material values and a very basic tile texture, I was able to lock in most of my lighting early into the project. This gave me a solid environment to experiment in for texture creation.
For lighting, I always follow one rule: keep things simple and true to real life. Lighting cheats and tricks can be helpful, but they’re more of a finishing touch than a useful base to create a lighting scenario with. Thus, I’ve kept the lighting in my scene very simple: some lengthened point lights to match the fluorescent light tubes placed on the ceiling, and a few box and sphere reflection captures to cover the length of my hallway. My scene is essentially lit the same way the real subway tunnel is.
Looking at my refs, I noticed a factor which contributed greatly to the mood of the old TCR hallways was the warm, yellow hue of the ambient environment. However, the direct light coming from the ceiling lamps was still mostly neutral, not colored. To achieve this effect, I gave the lights in my scene a very slight tint (not enough to register as anything but white in the direct light) but boosted the indirect lighting saturation within UE4’s lightmass. This allowed me to get a warmer ambient light, thus creating a color contrast between my light and dark areas, without having to rely on additional lights or pumping an extra ambient color into my scene.
Decals are the finishing touch for tileable textures. They’re crucial to add that extra bit of unique detail where needed. While my trim dirt texture did a lot of the heavy lifting, there were some places where it wasn’t suitable, for example to add footprints on the ground, which would need their own mask rather than a trim sheet.
Most of my decals are very simple. They’re either masks with some flat values or basic noises (for things such as dirt and grunges), or photo textures with very basic roughness variation (for the stickers and graffitis). For all of these, there’s no need to go fancy with procedurals – I source almost all of my decals from photos because in 90% of instances, a nice photo texture with some adjustments in Photoshop will do the job just fine.
Two decals in particular for this scene were pretty interesting to make. One is the footsteps, for which I fed several images of shoe prints into a Designer tile sampler to get a nice, tweakable spread of shoe marks with just a few minutes of work. The other is
Using tileable textures to build game environments is nothing new, and tileables are pretty much essential to get the best of any environment where surfaces cover wide areas. It can also speed up production a lot, because you don’t have to worry about baking on complex geo, and can change the layout of your environment on-the-fly as changes in design call for it. It’s definitely a viable alternative to modular kits, especially in situations where you want to avoid the repetition which can come from using a kit. (Or for the best, combine modular kits and tileable textures!)
None of the techniques I’ve used here are particularly expensive, and all are commonly used in a production setting. I believe the combination of tileables + decals is a very strong approach to making game environments with a level of detail that meets the standards expected today, though the inclusion of additional, supporting unique meshes (for example, modeling furniture with their own unique high polys and bakes) will always give nicer results than trying to make every single little prop out of tileable textures.