As promised elsewhere...
Peregrine's Guide to Making Avatars with Sodipodi and Irfanview
With thanks to Lord of Midnight for reminding me of the installation issues involved.
Note: The following instructions are for Microsoft Windows users. If you're on Linux, you shouldn't have any problems with getting Sodipodi, but you'll have to use something like GIMP instead of Irfanview. If you're on a Mac... good luck with that! (Sorry, I don't have access to a Mac to work things out for you. There is information out there about running Sodipodi on a Mac, but there seems to be better support for its cousin, Inkscape
I. Getting Sodipodi
1. Go to the downloads page on Sourceforge
2. Pick the file for your version of Windows. At the time of writing, the latest Sodipodi release is 0.34, and so the two Windows files are Sodipodi_0_34_Win2000_XP_Setup.exe (for Windows 2000 or XP) and Sodipodi_0_34_Win9X_ME_Setup.exe (for Windows 9x or ME).
3. Download and run the file. Make note of where you installed it (probably C:\Program Files\Sodipodi\).
4. Go to the
Gaim website GIMP website
and get the GTK+ installer. This is a shared toolkit for the user interface (all the buttons and menus and whatnot). If you already have a program like Gaim or GIMP installed, you can skip this step. Thanks to Mr_Saturn for pointing out the defunct link.
5. Run that installer. Make note of where you installed it (probably C:\Program Files\Common Files\GTK\2.0\).
6. Go to where you installed GTK. Go into the "bin" folder. Copy the file libgmodule-2.0-0.dll
7. Go to where you installed Sodipodi. Paste the file. (You might want to rename the existing libgmodule-2.0-0.dll first, just in case. It shouldn't be necessary though.)
8. Make a copy of the file zlib.dll and name it zlib-1.dll
9. You're done!
II. Getting Irfanview
1. This one's easy. Go to the Irfanview
website and download it. (The separate download of plugins is also highly recommended.) Run it and you're pretty much done.
Sodipodi is free, open-source software licensed under the GNU General Public License. Irfanview is only free for non-commercial use. It will also give you the option
of displaying eBay buttons in the program. Me, I registered mine. It's been my choice of file viewer/quick'n'dirty image manipulator for years. :)
III. Drawing avatars
0. Note that when you start Sodipodi and create a new drawing, you get a rectangular canvas. Mine's 210mm by 297mm -- an A4 page. I can only guess this comes from my printer options or something, but I can't seem to change it within Sodipodi and I can't seem to create a dummy printer that uses square pages. On the bright side, it's trivial to modify a blank SVG drawing -- Sodipodi's output format -- to resize it to a square. So if you want a square canvas to draw on, download blank.svg
and open it in Sodipodi. Make sure when you save, you save as a new file, though.
1. If you haven't already, start Sodipodi and create a new drawing (Ctrl-n, 'New' on the menu, or the blank-page button in the File section). Drag out the drawing window until it's big enough to work in easily. Hit 0 or the 'fit whole page' button in the Zoom section of the toolbar.
2. Press F5, or click and hold the rectangle button in the Draw section, then select the circle/ellipse tool.
3. Click and drag on the page to draw a circle. Make it fairly decent-sized; on a canvas roughly 200mm to a side, 80mm seems about right if you're just drawing a figure (rather than a scene).
4. Click the 'stroke settings' button under Object. Click the square (block paint) to turn on the outline on the circle.
5. Click the 'stroke style' tab. Change the thickness to 8. (For OotS style, you want everything to have fairly consistently
thick outlines. Some finer details will warrant finer lines, or possibly thicker lines, but these should be the exception, not the rule.)
6. Click the 'fill' tab. Drag the sliders around until you get a nice skin tone. (Tip: if you use Firefox, install the Colorzilla extension. Use this to grab colours off OotS strips, photos, and so on.) Roy is 84614aff, Durkon is d69a63ff, Elan, Haley, Belkar and Vaarsuvius are ffdfceff, and Redcloak is 00ae31ff.
6a. Diversion: Colours in Sodipodi
. You have four lines, for Red, Green, Blue and Alpha. (Alpha is transparency. Full alpha means the colour is solid; zero alpha means it's invisible.) You can also change mode to Hue/Saturation/Value or Cyan/Magenta/Yellow/Black, but you shouldn't need to. Now, note the RGBA box down the bottom. Whereas the sliders go in decimals from 0 to 1, this is the hexadecimal colour value, from 00 to ff. (I'm not going to explain hexadecimal here; if you're not familiar with it you can get by using the sliders. Just know that you can copy the colours given above into this box.) Always remember to put in four pairs, not three like you would for a web page. Usually you'll want the last pair to be ff for full alpha. The colours given above all include the alpha value.
At this point, you should have a drawing that looks something like this.
7. Close the object style window. Now, your first test is to draw a small ellipse on top of the current one and change its fill colour to black. (It won't need an outline.) That's one eye; position it accordingly.
8. Hit F1 or click the arrow button under Draw. This puts handles on the currently selected object, which should be the eye you just drew. It also lets you click objects to select them (rather than clicking to start drawing a new object). Use the handles to adjust the proportions until it looks like an OotS eye.
9. Hit Ctrl-c or the copy button under Edit. Hit Ctrl-v or the paste button under Edit. This pastes another eye -- right on top of the first. You'll need to drag it off to see them both. Do so, moving it to about where the second eye should be.
10. OotS eyes are usually a little different in size, so use the handles to change the size of one of them. Don't overdo it though.
11. Click the 'freehand curve' button under Draw. We're going to draw the mouth now -- and we could just make it a straight line, but you'll get plenty of line practice with the arms and legs, so we're going to draw a big open mouth. Click and drag to draw the line, and make sure you connect the end back to the start. (The starting box will turn red when you move back over it.)
12. Here's the beauty of Sodipodi: it doesn't matter how jumpy and unmouthlike you just made that outline, it's very easy to adjust it! As long as you don't draw an outline that's less
complicated than the end result, you can tweak the outline and remove unnecessary parts to get the result. The key is the control nodes tool (F2 or the nodes button under Draw). Click it.
Your mouth should now have several little squares on its outline marking the nodes. Click one. It'll be highlighted and two circles will appear connected to it, as well as the nodes either side of it. These show how the line enters and leaves the node. Play around with them for a while until you have the hang of how they work.
13. Now, adjust the outline until it looks kind of like a mouth. Draw a new one if you need to after experimenting. Remove excess nodes with the 'delete node' button in the Nodes section of the toolbar. (Four nodes should be enough for a wide-open mouth. Two are plenty for a closed one, even if it's a curvy 'confused' look. I'm very picky about removing unnecessary nodes from my drawings.) Don't worry about the other buttons in the Nodes section; I'm only just starting to get the hang of using them, and I've never yet needed them for an OotS-style drawing.
At this point, you should have a drawing that looks something like this.
14. Now to the body. Hit F4, or click and hold the circle button in the Draw section, and select the rectangle tool. Draw a rectangle that's about half the width of the head, and the same height. This proportion works for humans; look at OotS strips to work out proportions for other races. (If need be, draw the rectangle over
the head to get the proportions right, then move it down into the proper position.)
15. Change the outline to match the head and give it a fill colour that you want your little person to be wearing.
16. Wait! Shouldn't the head be overlapping the body and not vice versa? Too right it should. Look at the four buttons on the left of the Selection section. Each time you draw something, it become the new 'front' object -- if you moved everything you drew into one spot, they'd form a stack with the oldest things at the bottom and the newest things on top. These buttons let you change that order. So far we have a head, with facial features in front of it, and a body which should be behind it. So select the body and hit the 'send to back' button (or the End key).
17. At this point, take a look at the two right-hand buttons under Selection: Group and Ungroup. Click on the head, and then hold down Shift and click on all the facial features, to select the entire head and face. (Alternatively, click and drag a selection box around them; this is easier when you have lots of details, but harder when you might accidentally include something you don't want to inside the selection box.) Now press the group button or Ctrl-g. Everything you selected is now treated like one single object. (It also moves to the front.) If you want to edit individual parts again, hit Ungroup or Ctrl-Shift-g.
18. Now we're going to do arms and legs. Hit the freehand curve tool again. From about where the head and body join, draw a line. It should be roughly as long as the long edge of the body rectangle, but put a fairly sharp bend in it for the elbow.
19. Tweak the nodes; for almost every arm I draw I'm satisfied with three; shoulder, elbow, fingertip. (I occasionally do fancy things with the hands, though.) Bring in the circles on the elbow node fairly close, but not so close that you've got an excessively pointy elbow. (Note that you keep smooth curves by having the two circles line up opposite each other.)
20. Open the stroke settings, go to stroke style, set the arm to the same width as your other lines, and then change the Cap style to the rounded end. There's one arm.
21. Near the end of the arm, draw another freehand curve, more or less in a semicircle. Tweak the nodes; once again, I normally use three, one that sits on the line of the arm, and one at the end of each finger. Adjust the stroke style in the same way as the arm.
Here's what my hand drawings look like.
22. Select both the arm and the hand in the same way you did the head and face. (Group them if you like.) Now copy and paste like the eyes. Press the 'flip horizontally' button under Object, and drag this duplicate arm into position. We don't want it to look identical to the other arm, but duplicating it saves us a couple of steps and lets us just move the nodes to make a second arm.
23. When moving the hand, you can probably get away without even tweaking nodes most times. Click the hand, then click it again. See how the handles change? Drag it roughly into position, then use the handles to rotate it to match the new orientation of the wrist. (That little crosshairs in the middle of the object is the rotation point. You can drag it around to rotate about something other than the centre. Handy for repositioning arms -- just put the point at the shoulder)
24. Now, draw a leg. (Yet again, three nodes is my normal count -- hip, ankle, toe. The ankle should
be a fairly sharp bend, unlike the elbow.) Duplicate it, and adjust the second one a bit so it's not identical to the first. You might also want to send them both to the back so they don't overlap in front of the body.
25. And you're done! You've learnt ellipses and rectangles, freehand outlines and curves, nodes and colours and groups... all the basics you need to make good stick figures.
Here's what your very basic figure might look like.
26. Experiment! Add a fill colour to freehand curves that don't connect back on themselves. See what happens when you adjust the nodes on a circle or rectangle. (Hint: when dragging nodes on a circle, compare the results when your mouse pointer is inside the circle, then outside.) Use the 'convert to path' tool under Objects on your shapes and deform their outlines. (Here's where those other buttons under Nodes come in handy.)
And lastly, here's a couple of complete drawings you can tinker with. (Note that these were done on the default rectangular canvas. I'm now doing everything on my square canvas and it's so
much easier. :D)
IV. Exporting, and making drawings into avatars with Irfanview
1. Got a drawing open in Sodipodi? Good. (Make sure it's saved at this point.) Hit the 'export' button -- it's the arrow coming out of a box in the File section.
2. You'll probably want to export the whole page, so click Page. If you've drawn it on a square canvas, you can export straight to the size you want -- 117x117 pixels for GiantITP forum avatars. If not, or if you have but you think you'll want to cut off some whitespace, you should make it much larger. (That's because we're going to shrink it to size in Irfanview later, and you get the best quality in your details if you start big and then resize once
.) The default of 72dpi will give you nice big pixel values; I tend to go for overkill and double that.
3. Sodipodi exports images as PNGs. PNG is good; PNG supports things like alpha transparency (remember that from the explanation of colours?) However, the GiantITP avatar rules say GIF or JPEG, so we're going to respect that and use GIF. (We do not use JPEG for OotS-style avatars. Ever.
JPEG is for photo-like images with a lot of colour gradients and few sharp edges. In other words, not stick figures
So, we're going to be using Irfanview to make the avatar a GIF. GIF doesn't do alpha transparency, only a simpler form where a pixel is either fully transparent or fully opaque. So, change the background to a solid colour. Because of the way anti-aliasing (think of it as making lines look smooth) works, we want to make this a colour close to what the image will appear against on the forum. White is best, as post backgrounds are either white or a pale pink. However,
if you've used white anywhere in your drawing, this won't work. (When we pick the parts of the picture that are transparent, we do it by picking a colour. So you can't have a white background and white hair, say, because when you make the background transparent, you'll make the hair transparent too.) So either change the white parts of the drawing, or make the background something like a very light grey.
4. Hit Export. The PNG will be saved in the same place as the drawing. Go find it and open it in Irfanview. If you saved it at the size you want it, skip to step 7 now.
5. If you want to crop the image, click on the picture and drag out a selection rectangle. (If you can't see the whole picture to do this, go to the View menu, Display options, and hit Fit images to window.) We want our avatar to be square, so once you've drawn the first rectangle, drag its edges in or out until it's square and covers the area you want. (Look at the title bar to see when it's square.) Then crop it by hitting Ctrl-y or Crop selection under the Edit menu.
6. Now we resize. Make sure Size method is set to Resample and Lanczos filter. (It says 'slowest' but I've never yet taken more than about a second to resample a picture.) Enter the pixel size you want (again, 117x117 for this forum). Hit OK.
7. Now we save it as a GIF. Hit Save or Save as, set Save as type to GIF, make sure Save interlaced is not
checked, make sure Save transparent color is
checked, and select Choose transparent color during saving. Give it a filename and everything, and hit save.
8. A window showing the picture will pop up. Click on the background somewhere; whatever colour you click on becomes the transparent colour. (This was why we couldn't have white hair and a white background.)
And that's it! (The details of getting webspace and uploading this picture to use on the forums are beyond the scope of my tutorial -- read: not my problem. ;)) Now get drawing!