Adventurers Dream

Vehicle Breakdown

Alexander Thieme

Thumb
22-1

Alexander Thieme

3D Artist

Introduction

Hello readers! My name is Alexander Thieme, and I’m an aspiring game artist from Stockholm, Sweden. For years I’ve done 3D as a hobby, but recently I decided to try to turn this hobby into a career. I’m currently studying 3D for games at Futuregames in Stockholm.

Planning/Goals

For this project, I used the idea of creating a personal project as if it were made for a live project. This is something I’ve heard a few times from industry professionals. What type of game is this asset for? How would it be used in the game? Thinking like this helps you set some realistic parameters to work with, like polycount, texel density and design choices.
Setting a deadline also helps, as it’s otherwise easy to spend an unrealistic amount of time (in a production sense) to make every little bit perfect for your portfolio.

So, I imagined creating a vehicle for use in a 3rd person adventure game. It would be a hero asset that the player uses to explore the world. So, I wanted a fairly high detail model and 512px/m when using 2K textures (although in the presentation renders I use 4K textures). Having these things nailed down from the beginning and keeping them in mind throughout the project was really useful.

For the vehicle, I had a few different ideas but settled on an older off-roader with some accessories and modern modifications. I also didn’t want the car to look clean but rather like it’s been used and taken out on an adventure. To achieve this I needed to choose accessories that made sense and also use texture to tell a story of where it’s been.

I did consider creating an interior as well, but due to time constraints (this was made for a school assignment) I opted to skip the interior and put all effort into the exterior.

Software

I modelled everything in Blender, UV’s were done in both Blender and RizomUV, baking and rendering in Marmoset Toolbag 4 and texturing was done in Substance 3D Painter. I used PureRef to organize reference images.

References/Inspiration

I started out by looking on Google for different off-road vehicles from the 90’s/80’s because I wanted that rugged and boxy look. I decided to base my car on a smaller 80’s Land Cruiser. I also looked for references of what people typically put on their off-road vehicles. Things like roof racks, winches, radio antennas, etc. I ended up with a list much longer than what I actually used on the model in the end because I thought it got a bit too cluttered, so I scrapped a lot of things.

Because the car would be lifted and have some big tires I knew the underside would be visible from many angles, so I gathered some reference of suspension, axles and so on.

01-1

Modelling

My most recent vehicle projects have been what I guess you’d call mid-poly models (100k-200k tris) that one might use in a racing game. But when creating a vehicle for a 3rd person adventure game I had to think differently about modelling, I certainly couldn’t have 200k+ tris. I didn’t want to set a hard limit to how many tris I could use, but I tried not to add unnecessary edges. The most important thing was to keep it clean and within a reasonable number (I ended up with 46k tris).

17-scaled

Where I previously made individual body panels with thickness and accurate gaps there’s simply not the budget for that here. A lot of things needed to be simplified while still giving the illusion of being there. The sizes of the “gaps” between the panels are slightly exaggerated to make sure they’re visible on the end product.

02

When deciding where to add extra geometry I usually look for places along the silhouette where you can easily see the individual edges. For example, the inside of the canoe has a fraction of the amount of triangles the outside has, even though they share the exact same shape. The reason being that no matter what angle you look at it from you’ll never be able to see the individual edges of the inside, especially once the normal map is applied. On the outside, however, it would be much more obvious, so more geometry is used.

03-1

The underside of the vehicle is simplified while still having the major elements you’d expect a car to have. More focus is put on the suspension and axles because they will be clearly visible from many angles. While it may look very flat and boring at this stage there’s a lot of detail added when baking normal maps and applying textures.

04-1

I try to mirror as much as I can to save modelling time as well as UV space when possible. If we look at the underside again, you’ll see that almost everything is mirrored. The suspension setup is mirrored both on the X and Y axes.

05

High Poly

For the high poly I used simple subdivision modelling. This makes it a pretty quick process – just add some extra support edges and a Subdiv modifier. Some areas need a little more love, but I managed to make the entire high poly version in less than a day. Of course, it’s not as clean and perfect as it could be, but if it shades and bakes right, I’m happy!

One useful technique I use a lot is floating geometry to add extra detail. Take these vent holes just in front of the windshield for example. Instead of going in and trying to add these details in the panel itself, I create new geometry that I place close to the surface. I give the part of the mesh that’s supposed to be the hole a different color, which gives me the ability to bake a Material-ID map that can be used in Substance Painter to easily mask out the holes from the car paint.

06-1

I used the same process for the headlights, amongst other things.

07

One thing that’s good to consider when creating the high poly is that you may want to make some adjustments to get a good bake, even though it might not be 100% accurate to the real-world reference. The example below is a good example of what I’m talking about:

08-1

You’ll see how much more depth the tire tread on the right has. I noticed that when I did the first bake the depth only came from the AO. The normal map was more or less flat because the tread sides were completely vertical and thus were not baked. After making them slightly angled I got way more depth in the normal map.
I made another quick example to make the difference even clearer:

09-1

Materials/UVs

When planning for the materials I was thinking about possible customizations to be made in-game. For example, you may want to change out the roof rack and its accessories, so they have their own texture set. That way you only use those textures if those assets are used. The underside of the vehicle has its own texture set, as maybe you’ll want to use lower texel density on those parts due to them not being as visible.
In total 5 texture sets are being used – body panels, roof rack w/ accessories, exterior details, underside and windows. I could have used one 4K texture set and still kept my target of 512px/m, but by using several 2K texture sets instead I have more flexibility.

As I mentioned in the modelling section I mirrored as much as possible and the same is true for the UVs. Many of the body panels, the underside, and other smaller details are mirrored to optimize UV space.

Baking

I baked my texture maps in Marmoset Toolbag 4. I feel it’s the best option out there for baking as you immediately see the bake result and it’s easy to make adjustments if needed. If you have good naming conventions in your 3D software of choice you can use the Quick Loader which groups the objects based on their names and suffix.
I bake Normals, Position, Curvature, AO and Material ID. To avoid artifacts when using these maps in Painter I select 16bits/channel. The only thing I bake in Substance Painter is the World Space Normals.

I usually bake 4K maps, even if the textures will be a lower resolution in the end.

10-2

Texturing

With the textures, I wanted to tell a bit of a story of where the vehicle has been. The dusty dirt covering most of the car tells you that it’s been driven a lot off-road in a dry environment, while the mud kicked up from the wheels as well as some dried drips tell you it’s been through some puddles and perhaps a bit of light rain.

When texturing in Painter I think smart materials and mask generators are a really good way to get started, but they do need a lot of manual adjustments. While the generators are cool and indeed very useful, they do not take into consideration what the object is, how it’s been used or what’s happened to it. It simply uses the baked maps you gave it and applies the effect uniformly based on them.
I try to think about the object I’m texturing and about how it’s being used and what it’s been through. The vehicle is traveling forward most of the time, so the windshield will likely be dirtier than the sides. The tires will kick up mud and dirt when driving through puddles, but the side steps will block some of it. Little things like that bring the model to life and make it believable.

When adding dirt, I like to work in an add-and-remove kind of way. I’ll add a dirt layer with a generator then I’ll add a paint layer to the mask stack and set it to multiply. I’ll use low-stroke opacity and a dirt alpha brush and gradually paint away from the dirt where I don’t want it. If needed, I’ll add another paint layer to the mask stack and paint in the dirt in areas where the generator didn’t add any.

11

The muddy dirt that’s been kicked up from the wheels was added manually with some good splatter alphas. I added a bit of height to that layer to make it look thicker, as well as lowering the roughness slightly to make it stand out more from the dry and dusty dirt covering the rest of the vehicle.

12-1

All rust was painted by hand. I started by using a brush with high stroke opacity and hardness to get the flaking paint effect and then I went in and painted around that with lower opacity go get the rust spread.

13

Adding everything together will give you a well used car!

14

I think one of the most important things to keep in mind during the texturing phase is to use roughness and color variation. Even if you’re not adding dirt or rust, a small variation in roughness using something like a grunge texture will really bring that extra detail to the model. Combine it with a small variation in color and you’ll have a decent looking surface. Without it even good models can look flat and kind of lifeless.

Rendering/Presentation

I rendered the presentation images in Marmoset Toolbag 4. It’s super quick and easy to work with and setting up a turntable takes literally 5 seconds.

The lighting is nothing fancy, I used one of the HDRI’s that comes with Toolbag 4. Sometimes I add extra lights, but for this model, I liked the way it looked with just the HDRI.

I usually render with transparent background so that I can add something in Photoshop. I like a nice dark background with a slight gradient.

15-scaled

I recommend adding a turntable video to your portfolio. Turntables and short videos add that little extra to the presentation. Having the model in motion also shows off the materials better when you see how they interacts with the light.

 

Conclusion

16-scaled

This was a fun project to work on. After creating a couple of new and shiny cars, it felt very refreshing to rough something up, give it a story and make it feel used.

I love the 3D community for the sharing of knowledge, tips and tricks and I’m very happy to be part of that with this article. I really hope that there’s some useful information here. If there’s anything you feel I didn’t explain or that you want more detail on, go ahead and send me a message on Artstation (https://www.artstation.com/thethieme)!

Thank you for reading!