The Making Of: Tekken Megaman sprite

Like most spriting hobbyists, I’ve used every process I could imagine over the years in my quest to find the perfect technique for making pixel art. I was usually happy with what I made, but I never had a magical formula that made my sprites automatically nice looking — my secret ingredients were simply some pathological perfectionism and a natural enjoyment of the whole process.

In the end, good pixel art is made when you get as much satisfaction from the process of making it as you do from the finished product. The search for shortcuts is a search to rob yourself of half the fun of pixeling.

There are however some shortcuts that can.. let’s say condense the experience for you time-motivated spriters while still satisfying your deeper pixel cravings. This method is an improvement on the last few tutorials I posted because it’s fewer steps, can be done in Photoshop,, GIMP, etc. and doesn’t rely on so many of those programs’ obscure techniques. Check it out:

STEP 1: Lines

Create the lineart for your sprite and import into Photoshop or GIMP

Create the lineart for your sprite and import into Photoshop / GIMP /

Drawing your lines and getting them into Photoshop or GIMP can be done several ways. I recommend picking up a Wacom drawing tablet and sketching right in your favorite drawing program. In this case, I used a program called ArtRage because I like the responsive, realistic pencil lines that it simulates with my tablet. Whatever you use, import those lines into a new Photoshop document on a separate layer

Important notes for this step: I’m working at about 4 or 5 times the size of the final sprite (that pic above is 100% size) and I’m keeping my lines as thin as possible, although still mildly dark. (Once it’s shrunk down, you’ll see why this helps.) Also, I made sure to keep my lines closed and connected. The sketch is loose, but still solid.

STEP 2: Fill with base color

Fill in the sprite's linework with a base shadow gray

Fill in the sprite’s linework with a base shadow gray

And here’s why you’ll want to close and connect those lines. You can use the magic want tool (Contiguous and Anti-alias set to on, and a Threshold of around 20 or 30) to select the area outside of the lines, and then SELECT>INVERT the selection so that the insides of the lines are selected. If your lines are on a white background, use the magic wand tool to delete the background, too. The rest of the layer should now be transparent (as shown here by the blue grid pattern).

Once you do that, create a new layer underneath the lines layer and use the fill tool to fill that selection area with a mid-gray color. Note that the magic wand tool doesn’t have to perfectly select every pixel of area around the lines — when we shrink the drawing later, a lot of the imperfections will smooth out.)

STEP 3: Shading

Shade your sprite with the lighting style of your choice. Use a mask layer as a shortcut

Shade your sprite with the lighting style of your choice using layer shortcuts

Here’s where we use a Photoshop trick to help with keeping your white shading inside the lines. You should have two layers now: the top layer with just the lines, and the bottom layer with the gray fill. Add another layer in between those two and right-click on it in the layers panel. Convert it to a Clipping Mask.

A layer set to Clipping Mask means that the layer’s contents will only show up if it occupies the same space as the content of the layer beneath it. In other words, if you go crazy and zigzag a white brush all over the place on this layer, you’ll only see those whites if they’re on top of the gray areas of the layer underneath it. Now you can shade way, way easier on this layer with whites.

The order of your layers: note the masking shortcut for the white lighting layer above the gray layer

The order of your layers. The white lighting layer above the gray layer has a Clipping Mask activated

Note here that if it fits your style better, you can reverse all of this and fill the lines with white first and then shade with gray. I use this style because it makes more dramatic and high-contrast shading.

STEP 4: Resizing

Resize your sprite to the desired size. Don't worry about the blurriness

Resize your sprite to the desired size. Don’t worry about the blurriness

Once you’ve shaded things about how you want the sprite to look, use the PS or GIMP option to resize the image using Bilinear Interpolation, and shrink down the sprite to the size you want. At this stage, it’s going to look a bit blurry and fuzzy, but that’s about to be fixed..

STEP 5: Sharpening

Convert your RGB image to Index with the appropriate number of colors. Pixel purists avert your eyes

Convert your RGB image to Index with the appropriate number of colors. Voila, the ugly blurriness is translated into lovely anti-aliasing. the good old cheating method of index painting. I’ve championed this technique many times before, much to the horror of professional pixel artists and devotees, but then those aren’t the people who need tutorials.

Photoshop: go to IMAGE > MODE > INDEX COLOR, Gimp: go to IMAGE > MODE > INDEX. Make sure your background is transparent so the outlines will fade to dark instead of fading back into the white of the page. You want to manually determine the number of colors, so in PS, go to PALETTE: PERCEPTUAL (or similar), and with the TRANSPARENCY on and DITHERING, FORCED and MATTE at NONE, set the COLORS to either 5 or 6 (depending on if you want more outline detail to work with or if you just want the basics). In GIMP, choose GENERATE OPTIMUM PALETTE and either 5 or 6.

Congratulations. With a few clicks of the mouse, you’ve just cleaned your sprite 80% of the way.

Sharpening the sprite after being indexed is much easier and faster

Sharpening the sprite after being indexed is much easier and faster

Let’s stop and look at a few details of this method so far: First, when you normally start new sprites, you might be used to working with only pure black pixel lines, filling in colors, and then coloring each and every pixel of the lines to match the color and shade of the surrounding area. That’s completely bypassed here — see how the lines are already nice and thin, and lightened in the light areas. This is because they were kept thin on the original drawing, and because the original drawing was shrunk so much that the thin lines were made even thinner, such that the gray underneath darkened the lines in the dark, and the white in the lightened areas brightened the lines in the light.

The lines and shadows are also both antialiased for you, and even though it’s automatically done, a lot of it is pretty decent and not needing much refining. You’ll still want to go over the face and hands and other finely detailed areas as usual, however. But even there, the work will be reduced.

Finally, the least creative and most mechanical part of this whole process — the placing of colors — is left to the end. And the shading of these colors is already taken care of, as you’ll see..

STEP 6: Coloring

Adding pre-shaded colors to the sprite is now as simple as filling in the blanks

Adding pre-shaded colors to the sprite is now as simple as filling in the blanks

In the last step, when you converted the sprite to index color from RGB mode, your three layers were merged into one single layer. That’s okay though, because this step is just painting base colors over the different parts of the outfit and letting the existing shading act as automatic shading for those colors.

Convert the image back to RGB mode so you can add more layers, and add a new layer on top. Change its layer style from normal to MULTIPLY, which will give it a special kind of transparency. Using the pencil tool, pixel in a light blue color over the appropriate areas on this new layer. Because the new layer is set to Multiply, the shades of the grayscale layer beneath show through the color of the top layer, and it now looks like those colors are shaded. Continue filling in colors and separate as needed. (In this case, I kept all my different colors on separate layers for better organization).

One of the benefits of this method is that since we wait until now to do the coloring, we’re more efficient because coloring a small area pixel by pixel is faster and less messy and accident-prone than coloring full sized art with a brush.

Finally, note that the colors don’t have to be accurate. We’re just separating the colors for the final cleanup..

STEP 8: Final Cleanup

Sprite colors are fixed and details are corrected now that everything's in context

Sprite colors are fixed and details are corrected now that everything’s in context

Once your colors are filled in, merge all of your layers and then fix up your colors. You can do this by actual color adjusting or by stealing the color palettes of other sprites. With the sprite now mostly complete, finer details can now be fixed with a confident eye.


For the sake of a name, I’m calling this the Grayscale Index method. This is the fastest way I’ve found to build sprites so far. Working in grayscale and coloring at the end is an old artist’s trick for maintaining good contrast, and it has the same helpful effect here. About 50% gray should give you a good dramatic contrast for art this size, but again, you’re not locked into your colors — everything’s changeable at the end. It’s a win for both experienced and aspiring artists all around.

UPDATE: I streamline this method and show the layer orders in a newer tutorial: using the Grayscale Index method for Street Fighter Alpha sprites

Are you a bad enough dude to comment?

Comments closed

  1. Mike

    hi, why when i make the indexing my layer locks and is impossible to unlock or create new layer, etc. ?? help!!!

    • Kiwi

      Right, that’s normal — you’ve flattened your artwork to Index Mode, which can only use 1 layer. To start working with more layers again, change it back to RGB Mode (Image > Mode > RGB Color)

  2. Orlando

    Man if you actually made spritesheets out of this guy, I would literally put him in a game (I make flash games for a living).

  3. Naturally Talentless

    Learned a ton from this, cheers.

  4. Andrew

    Thats cool.

  5. Balthazar

    Very helpful indeed, make me want to step up my game. I will surely be using this technique in the near future. Thanks a lot for sharing!

  6. LoveTheLayout

    This is brilliant!

    Thank you!

  7. Hiivolt the Diepod

    Very interesting. It would be something to see this method applied to animations.

  8. Manny

    Wow! This is perfect!

  9. Joe

    This is great! Thanks for sharing!

  10. Rap

    SUPREMELY HELPFUL. What an ingenious method of working out a finished sprite. You ROCK!