In making my sprites, I had to start over 3 times.
Problems that come in the later stages trying to convert to ppm and patches, are created in the early stages.
You may not like the method I describe, so I will over-emphasis the following suggestion/warning (in an attempt to save you at least one start-over).
Choose which tools you are going to use (I suggest GIMP, xwadtools, and deutex).
Make a test piece with some colors, transparents, some airbrushing,
some overspray, and some blending.
These will create artifacts that will bother the conversion.
Run it through the entire conversion process and the tools to get a patch, texture, or sprite in a PWAD. This PWAD can be used alone, combined with others, etc.., but for now it is to test the sprite/texture/patch results.
Examine the result (patch or texture) in a test wad (a different PWAD with a room that uses the sprite/texture/patch you made), and decide where you are going to deal with the problems that show up.
-- Change tools?, add a background plane, don't use some kind of airbrush?, quantize away the low-alpha before saving? ...
Probably should write down your rules, and procedure, because it may be hard to remember it exactly right after 3 days of drawing, at four in the morning. Automate your entire conversion from PNG to PWAD with a script. Use separate directories for the source drawings, PNG, ppm, and PWAD, because there is a tendency to delete the sources when debugging this process and cleaning up later.
Do this before you invest hours or days on a drawing, because it
probably cannot be fixed without starting over.
I had overspray show up as a solid cloud around the sprite.
Got rid of this using a filter that removed all pixels with less than 50% alpha (overspray).
I had overspray change the transparent color slightly so that it was not recognized as transparent, so I got slight variations of that color show up in the sprite. The transparent background must be in a protected separate plane so it escapes all color blending.
There is a tool in xwadtools that will give you the palette.
I kept the palette as a reference and color chooser.
But I also used the fade tool to create a range of colors to draw with, which you pickup using the color picker tool.
For each project I first create a drawing of color swatches, which are made from the doom palette. These are the colors that I have selected for parts of my sprite. I also create color blends on my swatch drawing, from light to dark using the fade tool, so I can easily pick up variations of the color that I have been using for some part of the sprite. To darken an area, pick up the darker version of the color an airbrush it in.
Many swatch colors will not be in the doom palette. Also, during brushing the alpha blending will change the colors even more. Attempting to limit intermediate colors to only doom palette colors will cause the those colors to drift (yellows will turn orange among other problems) because you accumulate multiple color errors, with every operation.
Quantize to the palette once during the conversion to a ppm, and there is only one color quantization error.
Brushing with any brush that has an alpha will not stay in the doom palette.
Easier to draw in 32bit color and quantize to palette much later, because then all the GIMP tools work.
Save your work as 32bit color, because otherwise it cannot be adjusted or reworked. Drawing in a palette format is really limiting, and the tools behave strangely.
Later palette conversion is unavoidable (I tried, and it is part of one of the conversion tools (in xwadtools) anyway), and does a better job than any manual intervention that I could devise.
GIMP allows drawing on multiple planes. Use this for everything.
Use 4 to 8 planes per drawing.
I only had two heads per plane (of eight flaming heads), so they could be moved or adjusted later.
This saves considerable rework, as those planes can be copied to other drawings. When things are alone on a plane, they can be moved, resized, stretched, color adjusted, etc. etc., separate from the rest.
Last edited by wesleyjohnson on May 10 2013 at 19:10