Sci-fi ships in 3ds Max - Part 1 of 3
In this first part of this tutorial I'm going to show you how I made a sci-fi spaceship based on a concept by Markus Lovadina. I've been working on ship models for about one year now, so I'm going to share my techniques to approaching different pieces of a model. I'm going to share how I made the panels and cut-lines, basically only using edge loops and edge extrusions. I will also show you the way I make final chamfers on the borders of the models to give them a more detailed finish. Finally, I will show how I optimize the mesh once the model is done. I hope that my tricks and methods will be helpful for all of you, and worthy to be used in your own models.
Step 01: Evaluate the concept
Before starting any modeling, we need to see the concept in detail and evaluate every object and piece we see on it. It will be very helpful if we make a breakdown of the whole object and divide it into different sections. Each one of these sections will be a single mesh in the future 3D model. It is possible that each section has sub-objects, but the important thing now is to have a clear vision of the main shapes we will work on. In the image you can see how I interpret the concept and how I separate the different pieces.
Step 02: Base model
I've provided you with the base mesh for this model (here) so you can start with it and continue with the rest of the steps. The object is in half, so you should apply a Symmetry modifier to work with it. As you can see, it is a very rough and simple model, created by making simple boxes, adding edge loops and bevels, and scaling polygons to make the base shapes as close to the concept as possible. Of course, all of the proportions I'm suggesting here may change in the future, but if we start with the right proportions before starting to add any detail, it's a better beginning. Notice that I also make each object based on the separations I previously made in the concept.
Step 03: Edit geometry and constraints
I'm going to talk about this particular option right now because I use it a lot and I'm going to mention it a few times in this tutorial. It's a very useful feature that most of the time is forgotten.
In any sub-selection mode of an editable poly, under the Edit Geometry rollout you will find the Constraints option. This option allows you to move, rotate or scale any sub-object selection (vertex, edge, polygon), restricting the transformation to the selected constraints (edge, face, normal). For example, if you want to move a vertex or edge that belongs to a leaning polygon, you can select Edge Constraint to restrict the transformations to the edge boundaries. See the image for a simple example.
Step 04: Modeling the front section of the ship
We can see in the concept that the big pieces of the ship have very smooth edges, so this is the first thing I make. I select the front edges and apply a small chamfer of 2 segments. I do the same with the edges in the bottom. For the edges on the top, I make a bigger chamfer of 3 segments because I see in the concept that the top edges of the ship are smoother than the ones on the bottom (04a). After making all the chamfers I collapse some unnecessary vertices and connect some others as shown (04b). Always remember to check all the edge loops after applying a chamfer or extrude, and collapse or connect any vertex where needed. Don't forget to check the back of the object using the exact same process as before.
Step 05: Creating cut-lines and panels
Let's move on with the front panels. I make some loops to get the lines I need, then I move some vertices to make the desired shape of the panels. Once I have the shape I want, I select the corresponding edges and make a small chamfer (time here to go and clean some vertices). After that, I select the resulting polygons and make a bevel inwards (05a). Finally, to separate these new panels from the rest of the object, I select one of the front loops and applied an extrude. I clean some vertices again (05b).
To make the cut-lines, I basically always make loops here and there when needed, and move the vertices to get the desired shapes. In this process of moving vertices around you may want to use some Constraints to get a better result. So, once I have the desired shapes, I select the corresponding edges and make an extrude. The final step is to always have a look all around the loops to see if there are any unwanted vertices to collapse and delete. Don't be worried about the polygon count, as we will delete all the unnecessary edges later on anyway (05c).
Knowing that, we can say that the formula to make cut-lines and panels is: make loops, move vertices to get the desired shapes, select edges and extrude, then clean extra vertices. Keep in mind that in some cases, when the lines you want to extrude don't have any corners, you won't need to clean the vertices (05d).
05c. Four steps to make cut lines and panels:
loops, move vertices, extrude, and clean
05d. Sometimes, when the lines don't
have any corners, it's not necessary to clean vertices
Step 06: Making the detail pass
This is what I call the detail pass on a model. Here I make chamfers all around the edges of panels, surfaces and other pieces once all the initial modeling is done. This way, when the model is put into a scene, the light will bounce in a nice way and will give a better-looking result. See a small example of how the chamfers can make a big difference in a model (06a). Of course, making these chamfers will considerably raise your poly-count, so it is important that you always keep in mind your poly budget and be smart about where to use them or where not to - usually in the big and main pieces of the model, the ones that will be more visible.
So, how to make these chamfers? Simple, just select the complete loop of edges (around panels or any piece you want to make them) and apply a small Chamfer. You may need to also check for extra vertices to collapse and delete (06b, 06c, 06d).
Step 07: Optimization pass
Now that the model and the detail pass are completely done, it's time to optimize it by deleting and collapsing all the unused edges and vertices. I always start the optimization by selecting all the polygons that are hidden behind other objects and deleting them. In 07a you can see that all the polygons at the bottom are covered by another object and are not visible, so I delete them.
After that I continue deleting extra edges. I select an unused loop of edges, collapse the first vertex of the loop and then delete it. Keep in mind that when you delete a loop, you will usually end up with some n-gons left over (polygons with more than four sides), so be ready to look for them and add an extra edge to kill them as I show in 07b, 07c and 07d. So far, this object is complete, detailed and optimized.
Step 08: Making the main cabin
I use the same process I just showed you to make all the objects of the ship. For the cabin, I start by adding a bevel to the roof and back area, then make necessary edge loops (remember to use Constraints if you need them). Then instead of selecting the edges and making an extrude, I select the respective polygons and make a bevel outwards (08a). After that, I add more loops for the windows, then select the polygons and make a bevel inwards. Something to keep in mind when using bevels is to make sure that all the new vertices are all aligned correctly (08b). To add more details and interest to the object, I make some cut-lines and panels around (08c). Finally, I make the detail pass and the optimization pass as described before. Don't forget to look for extra vertices to delete and collapse every time you make an edge chamfer or extrusion, as in 08d and 08e.
8d. Select all the sharp edges and apply a chamfer.
Remember to clean unnecessary vertices
Step 09: Making the engines
I start the engines at this point, by making a big bevel for the grilles and a big chamfer to smooth the borders, make sure that all the vertices are well aligned when making bevels.
I also add some vertical loops here, and move the vertices on top to create a nice-looking curvature similar to the concept (09a). To make the grille, I detach the inside polygons from the bevel and delete all of the edges that I don't need. I add five edges, then select the six resulting polygons and apply bevels.
Once I have the six holes, I select the four corner edges and make a chamfer to suggest a more curved ending. And yes, it's time again to clean some extra vertices! I make the final chamfers to the borders of the grille and it's done (09b).
Step 10: Making the bottom X-shaped vents
On the long bottom object of the ship I make four big inward bevels to add some vents. I take the polygon of the bevel and copy it to make the vents.
I create three edges and add a chamfer to them to create the separation between the vents. After that I make diagonal cuts on the big polygons to get the ‘X' shape.
I select all the resulting triangles, make some bevels and delete the base polygons to get the holes (10a). Of course, I need to clean up some vertices in the process. For the detail pass, same as usual, I select all the edges, apply a chamfer and then clean up (10b).
Step 11: Making the back section of the ship
Following the same process, I make all the ship's components: making loops, bevels, extrusions, chamfers, and always remembering to clean the geometry by collapsing and deleting extra vertices. Keep in mind to use the Constraints option when necessary. Make the optimization pass to keep the mesh optimal, as if for the final game engine.
I show in 11a and 11b one final example of how I make the back section of the ship. Now you can go and give it a try with the rest of the objects.
Step 12: N-gon checks and collapsing Symmetry
Once I've finished all the pieces of the model, it's time to make sure I don't have any n-gons. A quick and easy way to do so is by going to the Graphite Modeling Tool found on the ribbon. You need to select the model and, while in the polygon sub-object, go to the Selection panel in the Graphite Modeling tool. At the very end you will find an option to select: Equal, Less than, or Greater than the specified number of sides. Specify the number of sides as ‘4', press the ‘>' symbol and click Select. Now 3ds Max should have selected all the polygons in your model with more than four sides, so go simply ahead and make the corresponding connections to kill all the n-gons in the model. Repeat this process until you don't have any n-gons when pressing ‘Select'.
The final step is to collapse the symmetry. Make sure that all the center vertices are in ‘0' for the ‘Y' axis (if you are using the model I've provided) and collapse the Symmetry modifier. Now, check for n-gons again, as sometimes collapsing symmetry may create new n-gons in the center of the model.
Step 13: Making the cables
Cables are a final detail that I always like to include in all my models, as they give a nice look and visual interest to any piece. I make them with Lines. I start by making a line of three vertices (you don't need more for a simple cable), then selecting all three vertices. By right-clicking, I select the Bezier option so I can now use the Bezier handles of each vertex to have more control in making the shape I want for the cable.
I play a bit with the flow of the cable by moving the vertices and the Bezier handles, making twists to give more visual interest. Make sure you have activated the ‘Enable in renderer' and ‘Enable in viewport' options under the Rendering panel, and also feel free to use different Thickness values for the cables (13a).
Once I've populated my model with cables, I convert them to Editable Polys and delete all the cap polygons at the end of each cable. I also make a little piece to hold the cables so they look more real (13b).