July 17, 2008

Sweet Home 3D: simple interior design

Author: Nathan Willis

Remodeling? Like free software? If you answer "yes" to both questions, try taking Sweet Home 3D for a spin. The open source, cross-platform 3-D interior design application is simple to use and simple to learn. You don't create individual objects in Sweet Home 3D like you do in a modeling app like Blender; instead you focus on the layout and design of the rooms themselves.

The most recent version is 1.3, released in April. Sweet Home 3D is a Java app, requiring Java 5 or greater. You can use Java Web Start to launch the app directly from your browser on the project's download page, but if you plan to continue using it you should grab the full installer. Packages are available for Linux, Mac OS X, and Windows.

Unzip and extract the downloaded tarball, then change into the directory with cd SweetHome3D-1.3. Inside is a launcher script named SweetHome3D; you can run the program with ./SweetHome3D &.

The launcher script explicitly calls the Java runtime bundled within the package, so you must be inside the SweetHome3D-1.3 directory to use it. If you like the app and want to create a .desktop launcher for it, you have to edit the launcher script to point to your preferred Java runtime.

Home Sweet Home

The program's main window has four quadrants: a grid on which you place and rearrange walls and furniture, a real-time 3-D view of your design, a list of all of the furniture models that you can place into the scene, and a table of the objects currently in the scene.

All drawing and object movement is done in the 2-D grid; you can rotate and zoom in on the 3-D view, but it is only a rendering. All of the objects that you add to the scene -- walls, doors, windows, furniture, and other items -- can be scaled, rotated, and moved at will. You can place a chair halfway through a wall, scale an elf-sized front door, or translate a table up in the z-axis so that it hovers a foot off of the floor -- there are no rules.

Still, if you want to create a meaningful design, the app makes it easy. Creating a typical model begins with drawing walls. The wall drawing tool snaps to 15 degree angle increments. The interface displays the length of each segment as you draw it, and x- and y-axis crosshairs appear to help you align parallel walls precisely. And if you change your mind, you can move, transform, or delete walls at any time.

Walls are a special type of object in Sweet Home 3D; every other is considered "furniture," including doors and windows. You select furniture objects to add to your model from the furniture list window; it is hierarchical, grouping like objects in order to make browsing through your library simpler. You can place an object into the scene either by choosing the Furniture -> Add to home menu item, or by dragging and dropping it from the list onto the 2-D grid.

Once in the scene, every furniture object appears in the 2-D grid as a bounding box with a thumbnail image of the object inside -- to see the appearance of the object, you must look at the 3-D view. Four handles appear on the bounding box of any selected object, with which you can rotate, scale horizontally, scale vertically, or change the elevation.

Elevation simply refers to the height of the bottom of the object with respect to the floor; it is an important quantity for windows (which can be placed at any height) but also for smaller objects that you might place on top of a table or other item of furniture.

Right-clicking on any furniture or wall object allows you to modify its properties. You can rename furniture items (by default all copies inherit their library name), alter their color, or enter precise coordinates and scale information, should cursor placement not suffice.

Walls have different properties, including thickness and slope, and you can assign different colors or textures to each side. You can also set the opacity level of the walls, so that you can better see the entire model in the 3-D view.

Version 1.3 includes 75 furniture objects -- everything from stairs to windows, chairs to radiators, even the kitchen sink. But if you don't find a design to your liking, Sweet Home 3D can import new furniture models. The project Web site has hundreds more models created by users, and links to free models elsewhere on the Web. It can also import models in OBJ, LWS or 3DS format.

Unfortunately, you cannot export your scene as a 3-D model at this time; your only output options are printing your blueprints and 3-D renderings, or saving them as a PDF file.

Pros and cons

That limitation is a small but important one; some users might long for conversion to a format suitable for a full-scale 3-D modeler (and, thus, high-quality output). Designing a scene with Sweet Home 3D is orders of magnitude simpler than doing the same thing in Blender.

Similarly, it is unfortunate that the Blender file format is not one of the supported file import options, as Blender is a 3-D modeler many Sweet Home 3D users will have on hand should they decide to make their own furniture models.

Regarding the app itself, the only large limitation is that Sweet Home 3D can do only one-story buildings. The FAQ explains that you can model different stories in separate files, and import the walls to make sure that they line up correctly. But it also mentions that some users have taken to adding second stories manually, by adding thin, flat boxes to serve as de facto ceilings and floors. To me, that says that multiple-story buildings is a feature that users want; I hope it will make it into a future release.

Nevertheless, Sweet Home 3D does what it does extremely well. Sweet Home 3D chooses sensible defaults for each new object, but it also lets you change every property. Helpful features like automatic grid snap are turned on all of the time, rather than buried in a configuration wizard.

And most importantly, it is fun to work with. Adding, altering, and moving objects is simple, which means users are going to do it. Creating floorplans in a high-end modeler like Blender is time-consuming, and crafting furniture models by extrusion and mesh sculpting is daunting enough that few will take the time to learn how. Luckily for them, they have Sweet Home 3D, a modest but slick alternative.


  • Desktop Software