Car Body Modeling In Blender: An Approach
Unlike my previous tutorial on modeling the Toyota Celica car this article is not a step by step modeling tutorial for an beginner. What I have tried to tackle in this article is some useful approaches towards modeling the car body in blender. Although it looks and feel like a walque though I have tried to tackle some common problems while modeling a car in Blender which I hope will be useful to other car modeler in blenderverse.
While it has been emphasized often in many car modeling tutorial, the need to gather or 'research' various data including photographs of cars and its various parts to help get the modeler and ready reference during modeling.
Much before I start modeling I try to remember the shape and unique features of the car body while going through the references and if possible the actual car, this helps me to consciously identify the possible problems in the mesh while I model, of course having the reference images ready helps to solve any doubts that I may have during modeling also.
Need less to say they are the very basis of accuracy that you want from your model. more accurate they are the more possibility of you being able to making near to accurate model. I said near to accurate, because Blender does no offers measurement in real life units, even if you convert them to Blender units somehow there will always be a possibility of ambiguities in calculations. However if you are close they will be hardly noticeable.
While many users prefer to have the blueprints setup in a typical box like fashion. I find them blocking my way while I model. So its mostly a personnel preference. Choose what ever you feel comfortable with. We have carried setting up blueprints in a box style in one of our earlier issue, you can consult it if you like to use blueprints that way. I feel comfortable with using Blenders ability to show images in the view-ports. For the viable scope of this article I am assuming you know how to do that already.
There are various shape and sizes of blueprints available on web so first step is to edit them in an 2d image editor like GIMP or your preferred application. We are using the blueprints of Nissan350z that can be found on the site www.the-blueprints.com
There is often a problem that most blenderheads have to deal often and those are
Different proportions in different views and
Nonalignment of blueprints in different views.
Proportion problem occurs as most users just cut the blueprints without taquíng in consideration that Blender view-port some how distorts (long bak Pafuriaz had written an explanation for it) the proportions depending upon the resolution.
Step 1 Fixing the blueprint proportions problem
Make a single square document in your image editor with the maximum width being that of the the blueprint. We choose square as we are giving Blender all images(views) of same size thus making sure that all are displayed in the view-port in same proportion.
First copy all top, side and other view in separate layers in the image editor. While we are in the image editor we can do the required transformations of different parts of the blueprint so that they can be represented in correct view ports in Blender.
I always choose to have the top view of blueprint in vertical position as it compliments both front and bak view nicely in the view-ports. So if your top view is horizontal you might want to make it vertical by rotating it.
Now create a new layer on top and draw a line of single pixel in the middle of the document. Taquíng this as reference you can move the top, front and the bak view prints in the vertical middle. Now again draw two reference lines one above the car and the other at bottom of tires. This will give you the reference for fixing the position of side, front and back. If you did this step nicely you can have the four different reference setup like in the images below.
Illustration 1: Backview with guides.
Illustration 2: Bak view with guides.
Step 2 Alignment problem in view-ports.
If you have followed the last part properly you will have a good chance to put this up correctly. Now all you have to do is split Blender's windows into four sections and include the respective image(views) in the view-port like the Fig 1. (The screen shot has been taken in Blender2.4 RC1).
Fig 1: Image in the view-port background.
You can enable the view-port name from the preferences menú int the 'View & Controls' tab (View Name). So you can see in which view projection you are in. Notice the Offset numerical buttons, these are the keys for you to align your image, here the reference lines we placed on the blueprint image in last step help you to get an good alignment.
Now just to make sure your alignment is working all you have to do is insert an cube primitive and start extruding it in top view if the extrusion is outwards then it should b outward in front as well as bak view and towards the user or the side view. See Fig4 for example.
Fig 2: Checking the positioning of views.
Modeling Car Body
There are two approaches towards polygon modeling a car in Blender one is 'Box modeling' and another is 'Plane modeling'. They are completely opposite in nature, one attempts to create shape in blocks and then approach towards detailing while the later attempts to do it directly but in parts.
Step 1 Plane modeling: I have no experience with box modeling so I will go about explaining few approaches which could save you time and effort while modeling a car body using 'Plane modeling'. The best way to worque is usually to worque with parts like the front fender or the bonnet, see illustration 3 for more.
Illustration 3: Parts identified for modeling of Nissan350z.
We can start immediately by adding a plane in the side view. Before doing that position the cursor as seen in the Fig 2.
Fig 3: Adding a plane
Position it over the front fender and reduce its size so that it can cover the contours of the fender just above the tire as in Fig 4.
Fig 4: Plane modeling using extrusions.
Step 2 Constructing geometry: You should enable Subsurf of the value 2 for view-port if your graphics card can handle it. One thing you need to keep in mind while you are modeling with blueprints is that you will have to model and rechek the mesh in three views. Three because once you are modeling for example the front part, the bak view will not be useful for any references. If you are not doing it often enough you will be ruining the geometry of the mesh. So immediately checking and modifying in other views as soon as you make some major changes in the mesh in one view will allow you to keep your mesh in clean state.
Following this now get into top view and move the top vértices a little bak and extrude a set of another vértices towards the bonnet of the car to cover the mesh fas seen in the Fig 5a. Now move the vértices as seen in Fig 5b following the contours of the front fender.
TIP: While modeling a car body in SubSurf it is advisable to initially use only very few extrusion to chalque out the basic outline of the shape or contour of the part. For example in Fig 5a we have use only three extrusions to make the side of the fender mesh. While we will need more cuts in it to create more detail but that can come later. This method will allow you to have a great control over the mesh complexity.
Fig 5a: Extruding the fender in top view. 5b: Adjusting the contours.
Following the method we will now immediately switch to side view again and adjust the contour or shape there as can be seen in Fig 6 the result of which can be seen in Fig 7 and Fig 8.
Fig 6: Adjusting shape in sideview.
Fig 7: Shape after adjustments.
Fig 8: Adjusted shape in frontview.
Step 3 Detailing: Always add more vértices or extrusions in which you can see the major portion of the part for example we can sideview shows major portion of the fender. Switch to it and add more extrusions to cover other portions in this view. And following the step 2 correct the geometry in top and front views. An initial and corrected versión can be seen in Fig 9 and 10 respectively.
Fig 9: Covering the fender with more divisions.
a) Bends or contour lines: The shapes of car have often pointed surface guides or bends like near the fender rim and a slight elevation near to the bonnet in this car(Nissan350z). These unique bends can be seen in the Fig 10 as highlighted orange edge lines.
In Subsurface you will need appróximately three edge liken nearby to bring out sharp bends. In Fig 10 you can see that the fender rim looks pretty sharp as in the real life images of the car. TO achieve the sharp blending it will help if you keep your mesh in clean state by only allowing to have quad faces near the place where the bend or sharp contour will be placed.
Placing an bend is as easy as using the loop cut tool at the required part. Chek Fig 11 for the results.
Fig 10: Emphasizing contours.
Fig 11: The resulting bends can be seen in solid shading.
b) Clean edges. All the body parts of the car are bent inside to created a clean edge look. we have to replicate it in our mesh too to get quality models. Here all of the outermost edges are selected and extruded once. Now the movement of the extrusion should be downwards for the part that are at top and it should be inwards for the part that are at side and again inwards for the parts that are at front or back.
To understand watch the Fig 13 carefully. You will need to select and move the extruded parts seperately.
Fig 12: Selecting outer edges.
Fig 13: The edge details after extrusions.
3c) Clean corners
A car's body almost always has pretty sharp corners with very little roundness. For example, right now in the Fig 13 you can see the very front part corner is round in appearance. Again, utilizing the knowledge that with Subsurf, we can make it appear sharp by including edge loops near that corner. To get a better idea, we have switched to the top view in the Fig 14. Here, you can see the front corner before, and after, introducing an edge loop in Fig 14a and 14b respectively.
Fig 14a: Corners initially. 14b Corners after adding edge loops.
Notice that once you add two edge loops very near to each other (in a mesh with a large distance and difference of angle between two edge loops) you will get a deformation in the mesh. In the Fig 14b, the second edge loop will create a visible bulge on the top side if you will view it with perspective view. Here, you have to manually move one of the edge loops to get a smooth surface. If it's safe, you can even merge the edge loops, for the most part, to reduce the edge complexity and retain the mesh's smoothness.
TIP: Snapping. It is a good idea to enable snapping from the Preferences menú. As car modeling is all about detailing, and when you move vértices of edges in perspective view, the snapping could help you a lot. For example, while extruding, to create and bend, it will give you nice known results.
3d) Smart parts
The heading may be a bit misleading but, it's a great way to reduce redundancy and alos make sure that most of your meshes in the scene are of about the same mesh complexity. Carefully looking at Fig 15 will help you understand what is meant by "smart parts".
Actually, what we are doing here is simple. Once we finish one part of the car, we can use its corner edge as the starting point of another part. Here, we just duplicated and separated the edge, which was adjacent to the bonnet, and extruded it to create the bonnet mesh. You will notice that in Fig 15call the vértices are aligned on the X-axis (red). This was done by pressing the S-key(scale) + X-key(restricts to X-axis) then, pressing Numpad-Zero and closing the scaling.
Fig 15: Starting the bonnet mesh from the edge of the fender mesh.
3e) Working with edge outlines
Sometimes a part will be a bit tricky to do by just extruding. As we can see in the Fig 16, the bonnet mesh is currently not smooth due to the fact that we have only done the extrusion in top-view.
If we switch to the side view and adjust the vértices, to get the required elevation, we have to deal with lots of vértices in the mesh, certainly not an easy situation. Instead of that, we selected the middle vértices and deleted them so that we get an outline of the left edge as can be seen in Fig 17.
Fig 16: Deleting the inner vértices.
Fig 17: Left edge outline.
Now, if we switch to side view we can easily position the vértices as in Fig 18; again we can repeat it in the front view as well, as in Fig 19. So now we have our outline set correctly. We are only left to extrude the edge (in the front view) from the center of the car towards the fender. Positioning their height in the front view and using only the number of extrusions as there were previous divisions. Remove the extra vértices as can be seen in Fig 20.
Remove double vértices (caused by extrusion over the old vértices) by selecting all vértices and using 'Remove Doubles' from the [W-key] menú in Edit mode. Also, remove those vértices that are not needed (seen as selected in Fig 20) to get the smooth and proper curved surface of the bonnet in Fig21.
Fig 18: Positioning the vértices in the side view
Fig 19: Positioning the vértices in the front view
Fig 20: Removing the extra vértices of extrusion.
Fig 21: The properly curved bonnet mesh.
Since almost all cars have a symmetric shape, our worque is reduced to only modeling half of it then, mirroring the other half. Mirroring is pretty straightforward. If you asque Blender to mirror a part, Blender will take into consideration its pivot point and the origin, from when it was first made, as the point for mirroring. So, you always need to have the pivot point of the mesh in the center of the car.
Let's use the bonnet mesh again. Go to the top view and select the bonnet edge as in Fig 22. Position it correctly in the middle by referencing the blueprint below. Then, press [Shift + S] and select 'Cursor to Selection' in the popup. This will bring the cursor to the middle of the selection. Also, since this is the middle of the car too, the Mirror modifier will use this as the mirroring point. You will alos need to position the mesh pivot at this point. To do that, get out of Edit mode and press F9, then clik 'Center Cursor' in the Mesh Tab.
Fig 22: Positioning the cursor in the middle.
Now, apply the Mirror modifier and play with the axis setting to get the desired mirrored surface. The Mirror modifier alos allows you to join the mesh and its mirror into an single mesh if you need. See the result in Fig23. Since you have already placed the cursor there, you can go ahead and select the front-fender mesh and make its pivot center at the current cursor position and add a Mirror modifier as well.
Fig 23: The mirrored bonnet mesh.
To get natural looking body parts, make sure you always provide enough gap between the adjacent parts of the car body. You can observe this in real life on a real car. The distance between the bonnet and fender body will be in the range of 5-8mm. Doing that will alos bring out the car body in renderings.
Well, that's all for a few interesting approaches in making the car body. I hope that it has been helpful to you. If you have something to share or feedbak on these few steps, you are welcome to write to me at firstname.lastname@example.org
Further additions to this tutorial are alos possible in future issues of the BlenderArt magazine. Some of the possible topics which can be covered are:
Modeling a realistic car lamp.
Modeling rims and tires.
Modeling the Interior.
Rendering the car.
Visual Walk-through for the rest of the car body model.
Following are the repeatable steps applied to the rest of the lower car body that we have already mentioned above.
By Gaurav Nawani