Mar 12, 2012

How to model a building

1) Aligning the cad files.
The first step that you need to make in order to model a building following the cad files provided by the architect is to correctly align the plans and the elevations in the viewport, like in the following image (for easier manipulation you need to group the imported cad files and name the groups accordingly “ground floor plan”, “front elevation”, “back elevation”, etc.):

We will start modeling the ground floor, so after aligning the plans you need to hide the upper floor plan.
2) Creating the walls
Create a box with the width equal to the thickness of the wall, convert it to editable poly and place it like in the picture bellow.

Adjust the height of the geometry by pulling up the vertices in order to match the height of the ground floor like in the following screen capture.

Extrude one of the sides, following the ground floor autocad plan. When extruding keep the delimitations of the windows or doors (like in the image bellow). This will save you a lot of time later.

When you have finished extruding all around the perimeter of the ground floor, delete the 2 polygons (in the corner, where the last wall created meets the first one) and weld the vertices like in the image below:

*in case you were wondering why you have to delete the 2 polygons the answer is simple: to avoid coplanar faces that may cause artifacts later when rendering.
3) Creating the windows and doors
Many will be tempted to use Booleans at this point, especially the ones that have a lot of autocad background. However, I try never to use them, since they mess up the geometry, which not only makes it difficult to edit it later if needed, but also it may result in artifacts when rendering.
So here’s the way I do it:
Select the polygons that will become the windows and use quick slice tool, to cut them according to their height dimension in the elevations.
Now delete the polygons that are facing the interior of the wall, and extrude the opposite ones towards the inside; in the “extrusion height” type “-“ and enter the amount equal to the thickness of the wall.

After the extrusion, detach the already selected polygons and drag them forward until they match the window frames represented in the ground floor autocad plan (top view).
This will become the geometry for the window frames, so you can assign them a name and a material.
In the front view, use the quick slice tool, to “draw” the shape of the frames (you can also do this using “inset” if it suits you better). In my case I have a double frame window, but in order to keep the explanation as simple as possible, I will ignore that for the moment and assume that it is a single frame.
Therefore, after having selected the middle polygon, detach it (this one will become the glass).

Now apply a shell modifier to the window frame and give it the desired thickness.
If you have a double framed window, repeat this step with the detached polygon.
You should end up with something like this:

Following the same principles, you can continue modeling the rest of the windows and doors of the ground floor.
TIP: When working on one elevation of the building make sure you select the polygons that you will work with, before using the “quick” slice tool. Otherwise you will end up cutting the geometry behind as well, and you risk messing up the geometry.

4) Modeling the upper floor
Hide the ground floor plan and unhide the upper floor. Select the top polygons like in the image below, and extrude them according to the height in the elevation.

After having extruded the walls for the upper floor, it is best to hide the polygons of the ground floor.

If the upper floor perimeter is the same as ground floor than you are lucky. As you can see from the viewport grab, I’m not that lucky since it’s slightly different in the left corner.
In this case, the first thing that needs to be done is to delete the polygons that create the “diagonal wall”

Now select the edges from the left, hold “shift” and drag them along the “y” axis, following the cad file of the upper floor up to the corner.

After having done that repeat the operation, but this time on the “x” axis, until the edges meet with the ones from the other wall. Adjust the vertexes position until the vertices from one wall are placed exactly over the corresponded ones from the other wall, and weld them.

If the upper floor is considerably different than the ground floor, this could take a lot of time, so it would be better if you model it separately following the same methods.
5) Modeling the details of the roof
Extrude the polygons from the border of the roof in order to match the details in the elevations.
Create the roof border by selecting all the polygons of the roof walls, detach them as clone and apply a shell modifier to the object.
Convert the newly created object to editable poly and adjust the width by dragging the vertices along the x and y axis so they match the dimensions indicated in the cad drawings.

Now it’s time to create the windows and doors following the same methods that you used at the ground floor.
Finally we model the balconies and the steps separately.
In the front view create a box and place it over the balcony. Adjust its dimensions until it matches perfectly the balcony in the elevation.

In the top view adjust again the vertices until they match the position of the balcony from this view as well. Now use the quick slice tool to “cut” the shape of the handrail and the flower stands.

After having selected the needed polygons, extrude them to the desired height.

The workflow for creating the stairs is very similar. Start with a box, convert it to editable poly and use extrude, quick slice and drag the vertices until everything matches in the top view and the side elevations.
The handrails of the stairs are created with editable splines, with the desired thickness.

That’s about it. If you have any questions feel free to ask by posting a comment.

No comments: