Linux: An elegant weapon, for a more civilized age.

Inkscape Tutorial - An Isometric Tileset - part 1

Date/Time Permalink: 10/25/09 11:40:11 am
Category: Graphics Tutorials

Oh, happy day! Now that I'm upgraded to Inkscape 0.46 on Ubuntu 9.04, I can start doing vector tutorials again. Today, let's see about making an isometric set of objects which can be quickly dragged around to build structures.

The concept here is to have a vector pack, with which we can create images from a set of building blocks, in an environment where we know everything is going to behave. "Behave" is a keyword in isometric art; you have to be an absolute control freak, or the result will look sloppy.

Start by creating a new document and changing the properties. I use a 400x400 pixel work area, which seems to be enough for storing a vector set. Now in the 'grid' tab select a new "axonometric" grid. I have mine set for spacing - 3 pixels, X and Z angles left at the default 30 degrees, and major grid line every 6 lines. This ensures that my major-lines area will subdivide nicely into halves and thirds.

grid_setup

You will want to enable snapping here, too. Turn on as much as you're comfortable with, as long as you can easily drag objects around and have them always stay rigidly within the grid's frames.

Let's start with the really obvious one, the cube. Using the 'bezier curve' pen, draw a flat diamond shape like this for the top of the cube:

cube_begin

We're going to be doing a lot of this. Fill in the other two sides, then in the 'fill 'n' stroke' dialog turn off the stroke and turn on fill. Fill with a color for each side.

Now's the time to decide how to set up light in your tileset. For this instance, I set the top face to 10% gray, the left face to 20% gray, and the right face to 40% gray. This produces the solid block look.

first_cube

It's important to follow the standard for the whole set, so that later all the pieces work together. It doesn't matter what the shadows are or which way they "point", so long as they're all consistent.

Once you have that, select all faces and group them together with Ctrl-G, then duplicate the cube with Ctrl-D. Drag the second cube to lie next to the first. Do this a few more times, seeing how seamlessly you can make everything look like one piece. Move pieces over or under other pieces by hitting 'page up' and 'page down.'

cube_structure

Now that we have that base, we can duplicate the cube, ungroup it with Ctrl-shift-G, and then drag the nodes around with the node edit tool to make variations on this theme. Here I have made half-cubes slicing from each direction, and one eighth-cube from slicing all three directions:

cube_family

Now about this time you're saying "Do I have to do this for every color of block in my set?" No, there's an easy way: we're going to create a colored filter the same shape as each piece to lay over it. This is quite easy: select the object you want to color, hit Ctrl-D to duplicate, Ctrl-shift-G to ungroup, Ctrl-shift-plus to merge all paths together, then pick a solid color and in the 'fill n stroke' dialog make the alpha 128 (50%). Now you have a half-transparent color you can lay over the shadowed object. You can change the color without bothering the shadow system.

color_filters

You can then group the filter together with the base object and drag it around as one unit. Need a color change? Ctrl-shift-G, select the filter, click a new color from the color palette - it will keep the transparency - and group it again to the base object.

Let's try making a ramp next. This will be useful for making roofs. Duplicate a base cube and drag it to a new area, Ctrl-shift-G to ungroup, delete one side, and drag the nodes of the other two sides with the node edit tool so we have a ramp structure. For the triagle part of the ramp, you can just delete one node.

Now, we can leave the side face's color alone. But the ramp part will need a color change or it will look wrong when we use it with blocks. Remember when we set the top face to 10% gray and the right face to 40%? Use the 'fill n stroke' dialog to find out the lightness of each of these values (in the HSL tab) and find the middle point between them (230+((230-153)/2)). The new color for a slope going from top to right will be 25% gray - or 191.5 (we'll fudge here and call it 191). Use a similar method for finding the colors for the other ramp.

first_ramps

Next time we'll examine building more sophisticated objects to add to our set.

Inkscape Isometric Tileset Tutorial

Follow me on Twitter for an update every time this blog gets a post.
Stumble it Reddit this share on Facebook

blog comments powered by Disqus
suddenly the moon