One of Blender's features is its ability to use animations as a tool for modeling. Strange as this may sound, it is often a very powerful technique.

In this tutorial I describe building a spiral stair. Using traditional methods, this would require many steps to model, but once you grasp how a moving object can represent the final result, it becomes a lot easier.

Before you start, you may want to do <Keyframe tutorial> (available soon) to learn the basics of keyframe animation.

The first thing I do is create a single step. Start with a clean Blender (press to clear your scene) and make sure that the default plane is selected. Press to enter edit mode. Select the two vertices on the left with box select () and scale them down slightly ().

Scaling the vertices at the left.

Next, select the two vertices on the right and move them further to the right (press to enter grab mode).

Moving the vertices at the right.

To give the step some depth, switch to front view with numpad , select all vertices () and extrude the shape slightly by pressing and moving your mouse.

Make sure that numlock is switched on when working with the numeric keypad.

Now for some animation. To create the spiral I want to do two things: first make the step rotate around some axis, and second make it move upward while it rotates. This is made easier by using an empty as the rotation axis. Go ahead and add one now. Place it inside the step, slightly to the left.

Adding an empty.

Parent the step to the empty. To do this, select the step, hold down and select the empty. Press to parent them and confirm the requester that pops up. To try the result of this little exercise, select the empty and rotate it (). If all went well the step should now rotate along with it, using the empty as the rotation center.

Rotating the empty rotates the step, too.

To create a good rotation we will need the IPO window. Split your 3D window and change the new window into an IPO window by pressing [icon F6]. Select the empty and insert a key () for the rotation on frame 1. Next, move up 10 frames (press once). Rotate the empty 90 degrees and insert another key for the rotation. Your IPO window shows a nice rounded curve.

This is not what I want; the rounding curves indicate an ease-in and ease-out in the animation speed. For a spiral stair however, I want all the steps to be located at equal distances. To fix this, select the RotZ curve and enter edit mode. Select all vertices () and press to make the curve linear. This is starting to look better, but I would prefer the motion to last a bit longer than 10 frames.

Removing ease-in and ease-out.

You have a choice now: you can either move the vertex on the right further away and up, or if you are lazy like me, you can make the curve continue by pressing the extrapolate button: (zoom out first to see the result of this!).

Extrapolating the rotation.

Now to make the step move vertically.. Switch to front view and return to frame 1 of your animation (). Select the empty and insert a location key. Go to frame 11, move the empty upward about half the length of the step and insert another key. If you look at the IPO window, you see that the same things happens as with the rotation: Blender gives each motion a smooth ease-in and ease out by default. Get rid of it like you did before, and make the motion continuous.

And here is the special trick about this tutorial: you can tell Blender to create a copy of an object on each frame of it's animation. Select the step and go to the Animation Buttons window (). Select 'DupliFrames'. You immediately see the result in the 3D window:

Dupliframes settings.

There are a bit too many duplicates right now. Try playing with the 'DupOff' setting to reduce the number. When you are ready, note the color of the new wireframe: the objects are drawn in grey instead of in black to indicate that they are not 'real'. You can think of the new objects as procedural objects.

Changing the DupOff setting.

Having difficulty with finding the right amount of rotation? Try this: select the empty and turn on the display of the empty's keys by pressing . Use and to select either of the two keys that have shown up. (The unselected key will turn yellow to indicate that it is selected; the selected one remains pink). In this mode, any change that you make to a key is immediately recorded in the IPOcurve. Because the objects are still procedural, the entire stair will change along.

To change your objects from procedural objects to real ones, select the original step and press . Confirm the 'Make duplis real?' requester. (Please not that this is not a required action; procedural objects render just like normal objects).