Sci-fi cars in 3ds Max: Desert Racer Part 1
In this tutorial I will guide you through the process of modeling a futuristic vehicle using concept art by Matt Tkocz and rough blueprints as a guide. I will not be following the blueprints precisely, but using them just to give rough dimensions. I will use 3ds Max to model the vehicle, but the same techniques can be applied to all other modeling packages out there. By the end of this tutorial, we will have a 3D model ready for unwrapping, texturing and rendering using Photoshop and Marmoset Toolbag 2.
Step 01: Aligning the blueprints
With a fresh scene open in 3ds Max, place a plane in the left viewport and assign the left blueprint texture to it. (My blueprints are included with the resources for this tutorial.) Make sure the plane has no divisions and scale the plane to match the texture, using the plane's parameters to get a precise scale (I use 1.5m for the length and 4.0m for the width). These will only be rough guides for us, so I'm not going to be too precise.
Repeat the same process for the top and back blueprint texture, adding the planes to the corresponding viewport. When you've finished, you should have a 3-sided open cube consisting of the three blueprint textures.
Step 02: Modeling the bonnet
Start in the top viewport and add a plane roughly the same size as the bonnet of the car. I like to have no subdivisions to start with, then add them in when needed. Because a car is a very symmetrical object, I only model one half, using the Symmetry modifier to flip the geometry to the other side. The mirrored half is then updated live when we edit the original half.
You can see I have added two subdivisions horizontally using the Connect Edges method. I add them one by one and then move the vertices to match the shape of the blueprint. I add four vertical subdivisions and move them into place, keeping in mind the topology of the geometry when moving the vertices, so it flows nicely and reduces the possibility of any kinks in the surface.
Step 03: Giving depth to the geometry
So far we have only modeled the rough outline of the bonnet in the top viewport. Even though the shape is now correct from above, the mesh is completely flat when you look in the perspective viewport. To fix this we need to select each vertex in the top viewport and bring it down or up in the left viewport; if you stick to moving them up or down in the left viewport, you shouldn't stray away from the shape we modeled in the top viewport. This process can be tricky to master and you have to be patient with it! Keep checking all the viewports to make sure you are moving the vertices in the correct axis and not deviating from the bonnet shape. You should now start to see a more fleshed-out model.
Step 04: Finishing off the bonnet
A useful tool for making planes (or any sort of 2D geometry) into 3D geometry is the Shell modifier. It acts as a sort of Extrude modifier but with some extra options. Apply the Shell modifier after the Symmetry modifier, and you'll see you have two main options: Inner Amount and Outer Amount. I change the Inner Amount to 0.03, as I don't want this asset to be too thick. I then apply a TurboSmooth modifier and set the iterations to 2, which makes the asset higher-poly and gives us nice smooth geometry which will look good in the final renders.
Step 05: Chamfer those edges!
After applying the TurboSmooth modifier, you can see that it's done a good job at smoothing and rounding off the surfaces, but it comes at a price. Where we want creases and sharp points, it doesn't know that these areas need to be tighter. To fix the issue, you can chamfer the edges to create denser areas of geometry and give the modifier less opportunity to round off the corners. In this image, I have chamfered the pointed corner and the crease that runs along the bonnet from front to back. Depending on how tight you make the chamfer, you can get a nice crease or a tighter curve.
Step 06: Modeling the back end
Using the same techniques as explained above, I continue to model the rest of the car. This part of the asset is a little more complicated in form, but the modeling principles are still the same. I cut in a door and add a crease so it looks like a separate object, also giving tight creases to the hood and the wheel arches. I'm not too worried about the underside of the car body just yet, as most of it will be covered by the interior and the undercarriage. Keep rotating around your asset and check how the light reflects over the surface - this will show up any surface defects that you need to smooth out to get a nice painted finish in the final renders. Try applying a shiny material to the asset to help with this.
Step 07: Creating the wheel
The inner wheel is created using a Tube primitive that is scaled to size using the primitive's options - no gizmo scaling. Once you're happy with the dimensions, make sure the wheel's amount of segments is smooth enough (I use 40).
Ring-select the segments and chamfer them into smaller sections that cut through the whole of the wheel. These smaller sections will eventually become the spokes of the wheel. Chamfer the edges of the Tube primitive to give the wheel smooth edges. I also extrude a small lip inside the inner part of the tube to add some extra detail.
Next, ring-select the smaller sections of the inner part of the tube (as shown in the image) and extrude until they're close enough to form a circle in the middle of the wheel. With the section still selected, I finish off the spokes by group-rotating them anti-clockwise so they skew slightly. This makes them a little more interesting than leaving them straight.
Step 08: Tire tread made easy!
Tire treads can be quite complex pieces of geometry too, but can be done quickly using the right tools. Start by creating the shape of the tread using splines in the top viewport. Once you're happy with the shape, apply a Shell modifier to flesh out the geometry and collapse it to an Editable Poly. The mesh may require some tidying up, as geometry created from splines can have quite dirty topology. Apply a TurboSmooth modifier to test that the geometry tessellates correctly.
Step 09: Finishing the tire treads
To finish off the tire tread, fill in the gaps between the shapes and form an edge around them (shown in the image as the white geometry). Once you are happy with the shape, Instance Duplicate it and snap the bottom edge to the top edge of the old object (shown in the image as the green object). With the center vertices snapped together, start snapping the vertices of the old object to the bottom of the new object. This will create a perfectly tileable object that can be duplicated many times and not have any gaps. We will have to duplicate this enough times to get a suitable amount onto the circumference of the tire. I duplicate it so I have 48 in a row.
Step 10: The Bend modifier
The Bend modifier becomes a very useful tool in the completion of the tire. We want to not only put our flat row of tire tread into a circle, but it also needs to be slightly curved across its width. This would be extremely difficult to do by hand, but using the Bend modifier takes all the guesswork out of the process.
Add the first Bend modifier, which will be the slight curve of the tread. Change the Bend Axis to X and the Bend Angle to 290 degrees. The tire tread should now look like it's slightly wrapped around a cylinder. Then add the second Bend Modifier, which will create the circular wheel shape. Change the Bend Axis to Y and the Bend Angle to 370 degrees. This number completes the circle, depending on how many tread shape objects you created - just make sure the two ends join together. I also change the Bend Direction to -90 degrees, which ensures the tire tread is on the outside of the tire and not the inside!
Step 11: The wall of the tire
Now we have the tread completed and forming a complete circle, so it's time to tidy up the outer edges by collapsing them together. Extrude the inner border so it meets the metal wheel rim that we created in Step 7. The wall of the tire will be quite flat now, but it needs to bulge because it's full of air. Ring-select the new edges from the extrude and connect them. Feel free to move the connect before committing, so your new edge is in the correct position to be pulled out slightly. Do this a couple more times to form a nice bulge to the wall of the tire. In the image you can see where I have created cuts. I also create an inner wheel cap to finish off the metal part of the wheel.
Step 12: Simple interior and wheel
Using the outer shell of the vehicle we previously created, I carve out a simple interior using the same modeling techniques as before, forming a dashboard and foot well. I also add a little curved detail along the door, forming a bit of an arm rest - this area won't be that visible so we can keep it to a minimum
To add a steering wheel, I create a Tube primitive and delete the top and bottom quarter of polygons. I then extrude four polygons into the center, intersecting them with another cylinder that forms the steering column. In order to add a little more detail to the body of the vehicle, I now create a petrol cap made from a very thin cylinder primitive, and add it.
Step 13: Protruding suspension springs
The suspension support is a simple cylinder that I have cut and extruded, forming a cap on the end for the spring to attach to. The suspension spring is actually a Dynamic Object that 3ds Max provides - I adjust the parameters so the spring coils around the support arm and has enough turns to look natural. I also adjust the thickness of the spring so it doesn't look too bulky but also doesn't look too thin and weak.
Because the suspension will stick through the wheel arch, we need to add a hole for it. Going back to the wheel arch, delete a polygon on the top and bottom sides of the shell and bridge them together to close the gaps. Chamfer the newly created edges to round off the hole (the TurboSmooth modifier will help do this too).
Step 14: Finishing off the back end
I model in an undercarriage to complete the body of the vehicle, as one object that goes from rear to front. For the rear bumper I add a small lip just to give it some interesting shape, which also gave an area for the rear lights to be placed. The lights are just simple box primitives with a TurboSmooth modifier applied to round them off.
A spoiler is also added, again using a box primitive to start with, then cutting in new edges to form the shape and chamfering the edges to create points and tighter edges. The rearguard is a spline that's made renderable in the viewport with a cylindrical shape to it. I adjust the Bezier curves on the corners to get a nice rounded shape. The exhausts are cylindrical objects that are beveled and extruded into the correct shape. Also notice the rear wheels are scaled slightly larger than the front wheels.
Step 15: Finishing off the front end
I continue the undercarriage of the vehicle around the front, forming the front bumper. Notice the detail of the front grill and headlights are also modeled in. The side undercarriage of the vehicle has some nice detail added, and this forms part of the door too, so I add an opening for the door handle here.
When modeling the undercarriage, remember to allow enough room behind the wheel to account for the tire itself and the suspension attached to the axle. I'm not too worried about adding more detail here, as it will not be seen in the final renders of the vehicle. This completes the modeling phase of the vehicle! In the next chapter, we will UV map and texture the vehicle, creating some nice renders of our asset in Marmoset Toolbag 2.
Top tip: Paint deformation tool
A car's painted surface is very smooth and sometimes when modeling it's difficult to get this right. A little trick I've learned to help speed up this process is the Paint Deformation tool in the Editable Poly modifier. Select the Relax brush and give it a small size; you can also adjust the Strength if it has too much of an effect on the surface. Be careful not to destroy your creases or tight chamfer edges - it's best not to go near them. Rotate the viewport so the light reflects off the surface at different angles in order to show the bumpy areas that need relaxing.