1. 3D & Motion Graphics
  2. 3D Studio Max

Create a Game-Ready Fire Extinguisher With 3D Studio Max: Part 1

Read Time:13 minsLanguages:
This post is part of a series called Create a Game Ready Fire Extinguisher.
Create a Game-Ready Fire Extinguisher With 3D Studio Max: Part 2
Final product imageFinal product imageFinal product image
What You'll Be Creating

Making models for 3D games is really fun. And the most exciting and challenging part is that we model in low poly and then bring the details to life through sculpting, texturing and baking methods. Although the final model looks quite highly detailed, in reality it is still a low poly mesh. In this tutorial series, we'll learn how to create a game ready Fire Extinguisher in 3ds Max. We'll start with basic low poly modeling techniques and then cover the highly detailed modeling, texturing and baking of this object in later parts.

Additional Files:

1. Setting Up Our Image Reference

Step 1

We'll begin with this reference image of a fire extinguisher. To start, open the image in Photoshop and press Control+I to open the Image Size dialogue box and then note the dimensions of the image.


Step 2

Now open 3ds Max and create a Plane with the same dimensions.


Step 3

Now we will apply the reference image on the plane. So press M to open the Material Editor. Then select an empty material slot and click on the Diffuse channel map box (1). This opens the Material/ Map Browser window, here choose Bitmap and then select the Fire Extinguisher.jpg file from your HDD (2). Now select the Plane and click on the Assign Material to Selection icon (3). And don’t forget to click on the Show Shaded Material in Viewport button (4).


You can also freeze the plane so it can not be selected, or moved accidentally when you work on the actual mesh of the object. So with the Plane selected, Right Click and select Object Properties.


This opens the Object Properties window. Here turn off the Show Frozen in Gray option.


Now with the Plane selected, Right Click and select Freeze Selection. Hence the plane becomes frozen, but we can still see the texture applied to it.


2. Modeling the Tank

Step 1

Once your Image is visible on the plane, you can start modeling. Create a Cylinder with 24 sides, and adjust its Height according to the reference image on the plane. You can switch to X-ray (or ghost view) on of your mesh by pressing Alt+X, so you can see your reference through the mesh.


Step 2

Now convert the Plane mesh into an Editable Poly by Right Clicking on it and choosing Convert To: > Convert to Editable Poly. Then add two edge loops horizontally with the help of the Connect tool. With any of the vertical edges selected, click on the Ring button found under the Selection rollout in the Modify panel, and then click on the Connect tool options button found under the Edit Edges rollout. Here enter a value of 2 for the Segments and a value of 73 for the Pinch amount, as shown below.


Step 3

Insert 3 more edge loops according to the details on the reference image. Here I have divided the model into three main parts, the head, main cylinder and the bottom base.


Step 4

Switch to Polygon selection mode, and select the polygons along the bottom edge and the ones that correspond to the ridges that run around the middle of the tank. And use the Bevel tool to shape them. Don’t try to match the same values shown here, because it’s dependent on your systems unit setup and the scale of your model. So just make it with artistic feel.


Step 5

Next, select the faces indicated below and Bevel them inside a bit.


Once done, the model now looks like this.


Step 6

Insert 3 new edge loops to match the head of the cylinder, as shown.


Step 7

Now we have to make the follow the reference image. So with each of the edge loops selected, start scaling them down one by one using the Scale tool to match them to the reference image (we will make the top handle part later.)


Once done, the model should look like this.


Step 8

Now we`ll start adding details to some of the areas. So add 2 new edge loops to the neck of the cylinder, and then Scale them up a little bit to make the ridge detail a little smoother.


Step 9

Add 2 more edge loops to the bottom groove area, and Scale them down to make it slightly curve inwards.


The model looks like this at this stage.


3. Modeling the Hose

Step 1

Now we will start making the cylindrical hose which is hanging from the main chamber. So create a Torus with 12 Segments and 12 Sides.


Step 2

Select the polygons shown below in red and Delete them.


Step 3

Now select the bottom edge ring of Torus.


Step 4

With the Shift key pressed, use the Move tool to drag the edges downward following the reference image.


Step 5

Insert an edge loop at the top as shown.


Step 6

Select the faces along the top edge and use the Bevel tool to bevel the faces outwards, using Local Normal as the Bevel Type.


Step 7

Next, select and Delete the inner side faces.


4. Modeling the Main Handle

Step 1

Create one more Torus on the top to create the handle for the tank.


Step 2

Just make sure the size of this Torus is identical to the size of main cylinder's top.


Step 3

Insert an edge loop close to the corner of the top cap as shown in the image below. We will extrude the pillars for the handle from here.


Step 4

Select these 8 faces with equal gaps in between as shown.


Step 5

Extrude these faces upward to match the height with the reference image.


Step 6

Switch to Vertex selection mode and select the top vertices of the handles. And Scale them outwards to make them slightly slanted.


Step 7

This is what we have created so far.


Step 8

With the top vertices selected again, Scale the four handles down a bit from the top to make them tapered.


Step 9

Now add 2 new edge loops in the middle of the four handles.


Step 10

Select the vertical edges in between the new edges, and Scale them down to create a bent effect.


Step 11

You can add more loops or curves using the Flow Connect tool. It’s a very useful tool to make curves with exact angles. With the desired edge loop selected, go to Graphite Modeling Tools > Loops and click on Flow Connect.


Step 12

Once done, this is the model we have created so far.


5. Modeling the Secondary Handle

Step 1

Now we will make the handle used to carry the fire extinguisher. We'll use spline modeling here.


Step 2

So first create a Rectangle shape in the viewport (Create Panel > Shapes > Rectangle.)


Step 3

Convert the Rectangle into an Editable Spline, by Right Clicking on it and choosing Convert To: > Convert to Editable Spline.


Step 4

Now we'll add some vertices. So with the top 2 vertices selected, apply the Fillet command and then arrange the vertices as shown in the following image.


Step 5

Select the bottom segment using the Segment mode, and Delete it.


Step 6

jump into the Side view, and bend the spline a little out at the top.


Step 7

And now make it little tapered out from middle.


Step 8

In the Side view once again, bend the spline out a little at the bottom also. (Make sure the bend in a little less than the top segment.)


Step 9

It should look like this.


Step 10

Now go to Editable Spline and turn on the Enable In Renderer and Enable In Viewport options. And adjust the Thickness amount of the spline as needed.


Step 11

Rotate the handle a little bit, as shown in the image.


Step 12

Now go to the modifier list and apply the FFD 4 modifier to the handle.


Step 13

Right Click on the handle and select the middle lower control points, and Scale them down a bit inwards.


Step 14

We have the base model of the fire extinguisher ready. Now we'll add some more details and supporting edges for smoother corners and better highlights.


6. Detailing the Tank

Step 1

We'll start adding details to the fire extinguisher model. We'll first make the information panel on the fire extinguisher. To most people, it looks like a sticker, but in the reference image, it's made from a metal plate. Check this link for more details Start by inserting 2 edge loops in the middle of the main cylinder, these should match the position of the plate, which is visible in the reference image.


Step 2

Select the polygons around the plate area, as shown


Step 3

Detach the polygons by clicking on the Detach button found under the Edit Geometry rollout in the modify panel. Check the Detach As Clone option and press OK.


Step 4

Now click on the Bevel option box, under the Edit Polygons rollout in the modify panel. Adjust the settings to make it little thicker. We could have used extrude as well, but we want the polygons to taper a little bit from the edges. We want them to be slightly tapered, because it will help later to get a better normal map.


Step 5

Press M to open the Material Editor and apply a standard material onto the selected faces. You can always change the material at a later stage. We do this to make the plate look a little different and separate it from the rest of the model.


7. Detailing the Hose

Step 1

Now add 2 edge loops to the pipe using the Connect tool.


Step 2

Select the polygons between the two new edges and use Bevel to create an inner groove.


Step 3

Insert 1 more edge loop, as show in the image below.


Step 4

Now select the polygons just beneath the edge, as shown in the image.


Step 5

Repeat the same Bevel operation, but bevel the faces outwards this time to extrude them.


Step 6

Insert 1 more edge loop to the lower polygons, as shown in the image below.


Step 7

Select the indicated polygons and use the Bevel tool again to extrude them outwards.


Step 8

Now we'll make the nozzle. Insert an edge loop where the nozzle separates from the pipe.


Step 9

Insert 1 more edge loop above the last one.


Step 10

With the in-between faces selected, Bevel the polygons outwards.


Step 11

Select the bottom vertices and scale them down using the Scale tool, as shown in the image below.


Step 12

Insert 2 more edge loops to the tapered part, as shown in the image.


Step 13

Select the lower vertices and Scale them outward a bit.


8. Creating the High-Res Model

Step 1

Now let’s move ahead to make the high-res/ high poly mesh of our object. We'll do it by adding smoothness to the corners with the help of Supporting Edges. Working with supporting edges is the basic approach to making a high-res model. We add supporting edges to give support to the main edges, because when we later apply the Turbosmooth modifier, all the edges run into the center. So to avoid the shape crumbling, we need to add supporting edges.

The following image makes this clear.

In this image you can see the deformation/ shape cramping in the model with no supporting edges, because all the edges run to the center, causing the original shape of the object to deform. Now look at the second model where the red lines are the main edges (old/original mesh) and the green ones are supporting edges that are supporting the main edges, holding them from any unnecessary movement, hence preserving the deformation and shape.


Step 2

Here is an image showing how supporting edges define the smoothness of the corners. If the edges are very close, they will be sharp angles. But if you want a smooth result on the corners, increase the gap between edges.


Step 3

I am using the Swift Loop tool to add supporting edges. It’s very quick and easy to use, and you have quite a lot freedom while using it. Here I'm assigning a hotkey for it to make things faster. To assign a hotkey, go to Customize > Customize User Interface. This opens the Customize User Interface window. Here select the Keyboard tab and then search for the Swift Loop action in the list. Now with Swift Loop selected, click in the Hotkey box and press the Spacebar, then click on the Assign button. Hence, the spacebar has become the hotkey to turn on the Swift Loop tool.


Step 4

Now let me explain how to use Swift Loop. Just press the spacebar to turn On the Swift Loop tool and drag the mouse on your object. Now you'll see a green line appear on the object, which follows the movement of your mouse. Now wherever you want to insert an edge loop, just click on the area and you will insert an edge loop. When you use this tool while pressing Shift, you can insert flow connect edge loops. With normal connect, you can’t get the flow of the geometry and you have to adjust it manually. But with the help of Swift Loop, you can turn a 12 sided cylinder into a 24 sided cylinder while keeping the original flow and roundness intact. And if you want to remove an edge loop with a single click, just click on the edge while pressing Shift+Control, and the edge will be removed with its corresponding vertices.


Step 5

Here we start adding supporting edges. You can see the supporting edges are just holding the main edge. If we remove these edges, we can turn the model back into a low-res one, just like before. One edge up and one edge down; this is the main criteria for adding supporting edges.


Step 6

Here you can see I added some edges to the main cylinder. Actually these are not supporting edges, but just for the distribution of the mesh. They will help to reduce shading errors, because sometimes you get the shading errors on flat parts.


Step 7

Here I have added some more supporting edges. Do make sure to add the supporting edges while pressing the Shift key to get a proper mesh flow.


Step 8

I inserted several supporting edges in the metal plate also.


Step 9

I have added several supporting edges to the joint area of the dome, and the main cylinder too.


Step 10

This part can be difficult sometimes. Here you may have to end some edges without making a continuous loop. You can see there are two edges coming together, as shown in the image.


Step 11

Insert several supporting edges to the joint of the pipe and the clamp area, like so.


Step 12

And add several supporting edges to the end of the pipe also.


Step 13

Here you can see how I added supporting edges to the bottom of the cylinder. Make the bottom part a bit smooth and bent.


Step 14

Here I created a new part to add on top of the tank. However this is not visible in the reference image, but sometimes you need to add some extra details to make your object more realistic.



Here is the final high-res fire extinguisher model. In the next part of the series, we'll optimize this mesh to create the low poly version.


Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.