this is so cool! as someone who doesn't really understand the process of making simulations, i liked the explanations and it makes me appreciate the amount of work and creativity that's involved in making them.
Godot forever s2
Jack Williams gave a talk on hard-surface prop production for games and did a breakdown of his recent model Emperor made with ZBrush, Maya, Substance Painter, and Toolbag.
My name is Jack Williams, born and raised in the heart of London and I come from a creative family. I spent much of my childhood fascinated by games and their inner workings. On my tenth birthday, I bought the Pokémon Colosseum Gamecube which included the Zelda collector’s edition. I didn’t know how, but it was then that I decided I was going to make games.
I’ve spent my last three years chasing that dream, by studying 3D game art at Falmouth University, where I recently graduated. During my time at Falmouth University, I specialized in creating props and environments for games.
Having graduated, I’m now seeking opportunities in the games industry.
I love conveying story elements through 3D art, and Imagining how the prop I’m working on might have been used, in what conditions, the environment it’s in, and how that might be displayed physically.
I started my project “The Emperor” with the goal of creating both a functioning game asset and a visually pleasing portfolio piece within a set time frame. This proved to be a real challenge, as it had to look great up close, but also be well optimized for real-time use. I set myself a target of one week to completion, including presentation.
I’m a huge fan of the science fiction genre, specifically cyberpunk for its style of gadgets, technology, weaponry. Films like Blade Runner, Alien, and Ghost in the Shell are hugely influential for me. I believe movies offer a great foundation for the inception of game art visuals.
Before starting this project, I knew that I wanted to develop my hard surface skills. So when searching for ideas, I just couldn’t resist this concept by Peterku of a chunky, Sci-fi Energy Revolver, what an absolute hand cannon!
My approach to starting any project is, first and foremost, gathering plenty of reference material, the more the merrier usually. References are key to building a strong concept, which ultimately, will contribute to creating a more authentic piece.
When searching for references, I gather images that will answer any visual queries I may have throughout development.
PureRef is my choice of software here, it’s lightweight and offers lots of useful features. It’s also free, so I would highly recommend occupying your second monitor with it during your next project.
The 3D package I use is Maya 2018.
I start off my project by blocking out basic forms. My main focus here is to nail both silhouette and proportion before moving on.
I approach creating the handle and stock of the revolver with the use of subdivision modeling. I usually start off with my reference in the scene and a proxy smoothed plane in an orthographic view, which I shape to capture the silhouettes. I found that working with fewer verts gave me more control. Maintaining edge flow in the pre subdivided mesh was also important in order to avoid pinching.
Once I was happy with the flat shape, I extruded my plane to give it some thickness, smoothed it and then removed any unnecessary geometry to optimize, while being careful not to facet the silhouette.
I had set myself a time constraint of one week for this project, so finding areas where I could economize time was paramount.
To quickly generate High-Poly components, I individually exported my low poly elements to ZBrush where I made use of the Zremesher and polish features. Using this method, I was able to produce seriously fast, top quality results. Some custom tweaking per mesh was required to achieve the most desirable result.
Once I was happy with the High-Poly, all that was left for me to do was decimate the mesh and bring it back into Maya.
Generating my High-Poly through this method allowed me to dodge time-consuming topology and edge flow corrections, that would have been necessary if I were creating my High-Poly through subdivision modeling. I saved a lot of time with this solution, leaving me much more time for the texturing process. Win.
When working with lots of components in Maya, it’s important to stay organized. I do this by grouping my High-Poly and Low-Poly components in the Outliner, and then assign my High-poly and Low-poly groups to two separate layers. The layers make it easy to hide/show my High-Poly/Low-Poly, and the grouping will come in handy later when baking.
Before starting this project, I knew I wanted my repeating geometry to share UVs.
This would help achieve high texel density on objects like the screws, rails, and barrels while also saving valuable UV space.
There are UV stacking tools in Maya for this, but I found that the results weren’t always 100% accurate. My approach to solving this was to unwrap objects as I worked. Unfolding UVs, straightening, and then later duplicating objects produced pixel perfect shell stacks.
My texturing software of choice is Substance Painter.
One of my favorite features in Substance Painter is the option to ‘Bake by mesh name’, it’s a really useful option which allows users to bake assets with many individual parts separately, removing the need to “explode” the mesh.
To organize group structure within Maya in accordance with the Substance naming convention (or a custom convention of your choosing) follow the example here and make sure you export your groups as FBX files.
This was the final High Poly that I baked from, and as you can see it’s quite simple. It serves mostly to provide smooth bevels for the harsh edges of my Low-Poly.
I aim to apply the vast majority of my details at a texture level in Substance. Having texture based details is my preferred approach, as it provides a great deal of flexibility to my workflow. Allowing me to iterate quickly on ideas, and any time saved now is an opportunity for refinement later.
I briefly mentioned stacking UV shells earlier in order to save space in my texture sheet, below you can see that I set aside duplicates of my repeating objects (which have stacked UVs) to be baked singularly. a screw, a barrel and one of the rail pieces.
To begin my texturing process, I started by creating a materials reference sheet. My goal here was to replicate these in Substance Painter for later use as my base materials.
Most of my references present clean materials with very little wear and tear. I wanted the Emperor to look slightly worn, so it was important once creating the base material to then add a little wear and tear around the edges. Substance makes adding wear really easy with its range of grunges and masks.
For the handle of the gun, I created a plastic base material. I fashioned a grip pattern by tri-planar projecting a hexagonal pattern onto a mask, which drove height and AO through a fill layer. I tilted the tri-planar projection slightly to mitigate some warping happening due to the curved surfaces of the handle. The seam groove in the handle and where the hex pattern terminates is hand drawn in. Enabling the lazy mouse really helped me out here.
I painted the bolts into a mask on a height layer, just like the hexagonal pattern. I do most of my details like this, as it allows me to make adjustments if needed later on down the line.
Specular breakup is an important aspect of any believable material, one way I achieved this is by adding a dirt layer.
I propagated my dirt through an AO driven mask, which I then added variance to with the help of a multiplied grunge mask.
I presented The Emperor using Marmoset Toolbag 3.
My aim in Marmoset was to set up a three-point lighting system that would capture and embellish the bevels of the Geometry and Normal map, and highlight specular breakup in the materials.
I approach setting up my toolbag scene by first finding an HDRI that works well with my prop. In this case, I set my sky brightness to a low value (0.3 in this case) and had it serve as my fill light. I then found my camera angles and finished off my three-point light setup with a couple of rim lights and a key light.
Don’t be afraid to add a few point lights to accentuate specular details and reflections. As an added side note, I found it was worth playing around with the width of my point lights, this helped soften shadows and greatly minimized shadow artifacting.
Thank you for reading! Hopefully, you’ve enjoyed learning about my process and found something useful that you can take away and use in your next project. I initially started The Emperor as a way to further develop my skills as an artist, and I can say with confidence that I’ve certainly learned a thing or two.
I really enjoyed this project, and I’m seeking to maintain the momentum I’ve built up while working on it. I’ve caught the Sci-fi bug now, and I’m looking to dive straight into my next project, so expect to hear from me again soon!
If you’d like to check out some of my other work, or keep an eye out for my latest projects, feel free to check me out on Artstation.
Special thanks to:
David Croft-Sharland for providing artistic feedback throughout my project.
80.lv and Kirill Tokarev for recognizing my work and offering me the opportunity to contribute to one of my favorite sites.
Jack Williams, Environment & Prop Artist
Interview conducted by Kirill Tokarev
The goal of the ClearCut courses is to teach you a solid workflow that is used in the AAA game industry. The first episode covers the process of creating an AAA fire hydrant from start to finish.
Any future updates are included and will be available for download in case they are released. Next episodes are not included.