15
How to create a multi-level house in Sweet Home 3D A guide for advanced users who want to design a house with more than one floor, or who want explore the full potential of Sweet Home 3D . Document written by Hans Dirkse version 0.4 - January 12, 2010 1

Multilevel House Guide

  • Upload
    saran21

  • View
    244

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Multilevel House Guide

How to create a multi-level house

in Sweet Home 3D

A guide for advanced users who want to design a house with more than one floor,

or who want explore the full potential of Sweet Home 3D.

Document written by Hans Dirkse

version 0.4 - January 12, 2010

1

Page 2: Multilevel House Guide

How to create a multi­level house in Sweet Home 3D

Many people on the S  weet    H   ome    3D forum    ask questions about layers, split­level homes, second floors, roofs etc. The answer is no, no and no. None of these is possible in the current version of SH3D (version 2.2). Nevertheless, there are workarounds that make it possible to create many homes that seem impossible to make. Click here and here to see pictures of some examples.

Scope of this guideThis guide discusses:­ how you can build a part of an object (in this case a house)­ how you can export that part as an OBJ­file­ how you can import it as a “furniture” element­ how you can assemble these elements into a complex object, that could not have been constructed using the standard tools available in Sweet Home 3D version 2.2.

I'll discuss the first of the two examples and show how I solved some of the construction problems. The entire house consists of five blocks:

− the ground floor plus the four OBJ­blocks Layer 0 − the front part of the first floor * Layer L1a − the rear part of the first floor * Layer L1b − the front part of the roof * Layer L2a − the rear part of the roof * Layer L2b 

* This file is exported as an OBJ­file and used in Layer 0Click on the links to download the files.

Layer 0  shows the details of the ground floor and everything that is beneath the floor texture of the first floor; in this file, four OBJ­files have been imported that form the rest of the house; to see all the details, you should inspect the other files as well;

Layer L1a  shows the details of the rectangle that forms the “front” of the house on the first floor; it has been exported as an OBJ­file and used in Layer 0; you can use this file to see how it's done.

Layer L1b  shows the details of the rectangle that forms the “back” of the house on the first floor; it has been exported as an OBJ­file and used in Layer 0; you can use this file to see how it's done.

Layer L2a  shows the details of the rectangle that forms the “front” part of the roof; it has been exported as an OBJ­file and used in Layer 0; you can use this file to see how it's done.

Layer L2b  shows the details of the rectangle that forms the “back” part of the roof; it has been exported as an OBJ­file and used in Layer 0; you can use this file to see how it's done.

To import an OBJ­file use Furniture Import furniture...→To export a file as an OBJ­file (scroll down) use 3D view Export to OBJ format...→ 

2

Page 3: Multilevel House Guide

Why five blocks?

A ­ cutting up vertically

If you have a relatively simple design, you could insert a box and put all furniture on top of the box. But if you want to make something more complex, you'll soon find that it's not a really good solution.

So, a better solution would be to design each floor as a separate project and then stack them to build, or assemble, your house. In this way your house can have as many floor as you like, as long as you don't go higher than 999 cms/inches. 

A problem you encounter when you export your floor as an OBJ is that SH3D automatically inserts a floor even if you didn't draw it. As long as you draw perfectly rectangular floors, this isn't a problem, but every “deviation” from the rectangle will show up as a “zero thickness” white floor that surrounds part of your design to make it rectangular.

So when you start to design your project you first have to decide how to cut up your model in rectangular building blocks that you can stack without seeing the seams after assembly.

B ­ cutting up horizontally

When deciding about the horizontal sections of your project there are a few things you have to bear in mind:

− Textures on floors ­ Textures adhere always to floors, so for every level on which you want a texture, you will have to create a new horizontal section.

− Textures on walls ­ You can't “stack” textures on a wall. So if you want the lower part of a wall to have a different texture or color than the upper part, you will have to create that wall in two horizontal sections.  Another way to achieve this, is making a special texture, as explained in this guide).  

− Ceilings work fine when all walls of a room have the same height. In the current version, ceilings  work more or less fine when two opposite walls have the same slope (as demonstrated here and here). Ceilings don't work very well in most other cases, so you will have to invent your own solutions.

− Windows and doors ­ You can't put two windows on top of each other, or have a window on top of a door. There are a few workarounds possible, but in general it means that each door or window has to go in a different horizontal section. We'll discuss one of these workarounds later in this guide.

Drawing the general floor plan

First we start by drawing the basic floor plan. I call it “L0” (as in: layer zero) and use it as a reference file, I draw all the walls in it, the outline for terraces and/or patios and everything else that I will need. It is very important that you do this very carefully, because all sections of the house will use this file as 

3

Page 4: Multilevel House Guide

a template. You can't make changes to walls later on, because then things will not line up correctly when you do the final assembling of your house. See picture 1.

Note: Correcting corners & compensating wall thickness

When you draw walls in SH3D, the program will auto­connect the corners as long as you keep drawing the walls in a continuous way. If you want that the “last” wall connects with the first wall of that series, you have to double­click carefully on the end of the first wall (the first wall gets selected during the drawing to show you it will be connected to the current wall). If the last wall isn't connected to the first wall, or if you can't connect a wall to an other one (for example because the end of that wall is already connected to an other wall), this produces a jagged corner.  If you want your renderings to show perfectly smooth corners, without the jagged edges, you will have to manually correct the length of the first and/or last wall. 

The best way to do so, is to make one wall longer by half the thickness of the wall. So, if your wall thickness is 20, make one wall 10 longer, so that the outsides of both walls form a perfectly smooth corner. Then decrease .5 in length to prevent glitches showing up in the rendering. See picture 2.

4

Illustration 1: Layer 0

Page 5: Multilevel House Guide

I find that the only way to make a good drawing is entering the exact X,Y coordinates by hand. This can be achieved directly by entering the length and angle of each wall during the drawing of walls (by pressing the enter key), or manually by correcting the coordinates after drawing the wall(s).

Bug: fourth digit causes cursor to jump backThere is a small bug in version 2.2 of SH3D when entering numbers greater than 999. After the third digit, the cursor jumps back to the third digit. So when entering 1234.567 with the numeric keypad of your keyboard, it will result in 123.4567. You have to correct this, or move the cursor to its correct place using the arrow keys before entering the decimal sign and the digits after the decimal. You can also enter all digits and then click the up or down arrow to add a half unit. In the picture look at where the cursor is in the 2.000  See picture 3.

5

Illustration 2: Making smooth corners

Page 6: Multilevel House Guide

Drawing the ground floor level

Open Layer 0 and save it as Layer 1.  On this layer we will show everything that is underneath the texture of the first floor. Because it's a raised house, here you will put the foundation, the ground textures, etc. See picture 4.

6

Illustration 3: Three­digit bug

Page 7: Multilevel House Guide

This layer contains nine rooms. − three grass rooms− five pavement rooms− one gravel room

All rooms were drawn by hand. SH3D provides several magnetic aides to help you position the cursor. − When the cursor lines up with a wall you can see a small line when it lines up with the center or 

side of a wall, or you may see a long line when it lines up with a point further away− When the cursor lines up with a corner or intersection you will see a cross­hair, or you may see 

a purplish dot around the cursor. 

Make sure rooms don't overlap, because this will cause strange glitches from the render engine. So, after making a rough first draught, zoom in and carefully check every line and corner.

Tip: better illuminationThe reason that there are four gravel rooms under the building is to add light in the rendering. When you make a photo (Create photo...) quality settings 3 and 4 will take into account one light in every room. If you have a large room, this will result in a rather dark room with unnatural shading. Divide the room in several smaller rooms and each section will have a light source at its center. Note that this only works when Display ceiling is checked.  See picture 5.

7

Illustration 4: Layer 1

Page 8: Multilevel House Guide

Bug: render problemsThe external render engine has big problems dealing with big blocks. 

When you make a photo (Create photo...) of the exterior of the house, everything is rendered as it should be, although the interior of the house remains rather dark in quality settings 3 and 4. On my Ubuntu 9.10 computer: When you make a photo of the interior of the house, the render engine gets completely confused in quality settings 1 and 2 showing random bits and pieces, and gives a largely black image in quality settings 3 and 4.On my Windows Vista computer: When you make a photo of the interior of the house, the render engine shows the interior correctly in quality settings 1 and 2, and gives a largely black image in quality settings 3 and 4.

So, if you experience problems with the rendering, you could always take a screen­shot 

Cutting up your design

On exporting the first floor using 3D View Export to OBJ format...→  SH3D automatically inserts a floor that follows the extreme boundaries of your design. When you assemble your house and use this object, this “false floor” will show in the rendering. To avoid seeing it, we have to cut up our design in rectangular blocks. The false floor will still be inserted, but it won't show up in our rendering. This is the same floor plan as shown in illustration 1, except that the wall alongside the stairs has been deleted. See picture 6. 

8

Illustration 5: “Display ceiling” is a “light switch “

Page 9: Multilevel House Guide

Drawing the first floor

To draw the first raised floor, load the Layer 0 file again. Because the first floor will consist of two blocks, you will need to save the file twice, as Layer 1a and as Layer 1b.

Using the file Layer 1a delete all features in the right part of your design. Repeat the process using the file Layer 1b, where you delete all features on the left part of your design. See picture 7 and 8.

Note: orientation of texturesFor some reason SH3D automatically changes the orientation of the floor textures. As you can see in the images, the texture of the patios on both sides of  the house is rotated 90 degrees when compared to the rest of the house. 

A logical guess would be that textures are oriented along the longest side of a room. A workaround would be to import a texture twice, with the second texture rotated 90 degrees.

9

Illustration 6: “False” floor in exported OBJ 

Page 10: Multilevel House Guide

10

Illustration 7: Layer 1a 

Illustration 8: Layer 1b

Page 11: Multilevel House Guide

We now have have the basic building blocks of the first floor of our house. It's time to add some details.

Tip: use special objects

When you want to do “the impossible” you will need a few special objects. For this particular house there are two such objects needed:

− the non­inserting window;− the invisible wall opening.

The non­inserting windowThe standard windows in SH3D can be inserted into walls. On insertion they create a “new” section of wall, calculate the opening in the wall, re­start the texture on the wall, etcetera. However, if you want two windows on top of each other, this doesn't work. The workaround is quite simple.

Open SH3D, drag a window onto to grid. Export it using 3D View Export to→ OBJ format... and then import it again. Give it a new name and make sure that you don't check the Doors or windows check box.  The result is a window that behaves like any other piece of furniture. See picture 9.

11

Illustration 9: Stacking windows

Page 12: Multilevel House Guide

We can't break SH3D's laws of physics, so only the bottom window is a “real” window in the sense that it is inserted into the wall. The other window just stands on top of the wall. 

In the house we are about to design there is a row of elevated windows that sits on top of the lower windows. Here I used non­inserting windows. See picture 10.

The invisible wall opening

Walls always start on the floor. That seems obvious, but sometimes you want your wall to start above the ground level. For this (any many other things) we use the invisible wall opening. You can download the file here. 

Basically this object resembles the service hatch, but its walls are thinner and it's made invisible through manipulating the MTL­file. The last line (d 0.0) does the trick:

newmtl piece_1_piece_a_1_1illum 9Ka 0.78125 0.78125 0.78125Kd 0.78125 0.78125 0.78125

12

Illustration 10: Invisible wall opening to raise a wall

Page 13: Multilevel House Guide

Ks 0.78125 0.78125 0.78125Ns 64.0d 0.0

If you look at the illustration above, you will see that there's a gap beneath the wall at left. That is where the invisible wall opening went. To avoid glitches in the rendering, let invisible wall openings extend 0.5 cms beyond the end of the wall. See picture 10.

If you look at the illustration below, you'll see another place where I used the invisible wall opening. It's a wall with two “normal” windows inserted. In between there's an invisible wall opening, and into that opening I inserted a rotated non­inserting window. See picture 11.

Filling in the details

The details on Level 1a are pretty straightforward. You can examine the files to see how things are 

13

Illustration 11: Invisible wall opening with door

Page 14: Multilevel House Guide

done. The low windows just beneath the ceiling are non­inserting windows that float in mid­air. All the ceilings are just boxes. See picture 12.

Tip: Use a grid

When designing your house, using a grid makes life easier. Grid, in this case, means a set of repeating measures and sizes. This “Brad Pitt” house was originally (probably) designed on a 3x3 foot grid: all walls are placed on multiples of 3 feet, windows are multiples of 3 feet wide, etcetera. This makes calculating distances much easier, which in turn will make the assembled building blocks fit better. 

Tip: Inserting a non­rectangular window

The standard windows in SH3D are all rectangular. Even if you design a triangular or round window, it will be inserted into a rectangular shaped space. The solution, as always, is quite simple: insert a series of invisible wall openings in your wall, then insert your special non­insertable window in that space. I prepared an example using triangles that demonstrates this. I imported a triangle from the models library as a window, and inserted into the wall. SH3D cuts out a rectangle when it inserts the window, leaving a large gap. See picture 13.

14

Illustration 12: Level 1a, backside

Page 15: Multilevel House Guide

15

Illustration 13: Inserting a non­rectangular object

Illustration 14: Door or window? Use the check box!