gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

Graphics > Good approach for 16-color tiles/sprites.

#16097 - Gene Ostrowski - Sun Feb 08, 2004 5:14 am

I'm looking to hear opinions on good ways to manage the creation of 16-color tiles/sprites from within paint programs (not how to manage them on the GBA-- that's another topic).

I'm hoping some veterans that have tried many ways have settled into methods that make managing them quick, easy, and efficient.

My current approach for 256-color tiles is to create a 256*256 pixel 256 .bmp in Paintshop Pro and do my business there, and eventually use gfx2gba to strip out tiles and metatiles. Works fine because the palette is shared by all sprites in the image, and I can do everything from one file.

However the questions of palette management comes up when dealing with 16-color images:

1) Should all graphics be created with a 16 color palette, and use separate files for each "strip" of graphics that share the same palette
2) Should you create a 256 color image with 0x0 at color indices 0,16,32,etc and rely on the converter tools to strip the results down to 16 colors. If so what approaches do you use? And how do you ensure that your sprites don't accidentally use a color from one of the other "palletes"?
3) How do you manage swapping palettes on images to see how they will look with a different palette? One of the oldest tricks is to use the same bitmap but change the palette to provide the illusion of alternate graphics-- how do you manage quickly swapping out palettes and such?
4) Etc.

There are probably a dozen ways to go about this and I'm hoping folks can share their thoughts, as others may be able to benefit from this as well...

Thanks in advance.
_________________
------------------
Gene Ostrowski

#16128 - headspin - Mon Feb 09, 2004 10:22 am

If you want to use a paint program, like you say you do then I would have an area at the bottom of my image with all the available tiles lined up (possibly ordered by their palette class or image type) and then just use copy and paste to re-use a tile.

Turn on grid with 8x8 or 16x16 selected depending on your tile size so you wont accidently paste a tile in the wrong area.

Create 16 different palettes and save them separetly. When you make a new tile load up one of these palettes and that will force you to use 16 colours from one palette only.

The conversion program should detect flipped tiles and tiles that use the same colour palette and generate the map and everything for you. If you don't mess up the drawing part, the program shouldn't mess up the conversion part!

On your question about changing the palette of a tile, well in Photoshop you would get a tile that uses the palette you want to change it to and paste it into a separate document. Select indexed colour and make it use 16 colours. That makes those 16 colours "locked" for this image. Then copy your tile you want to change and paste it over this tile. It will change the colours using this different palette.

#16137 - Nessie - Mon Feb 09, 2004 5:42 pm

The approach I would use would be to start with a program that is highly geared towards doing pixel art. My current favorite is Graphics Gale (GG) by tempest software. I'm sure other people have their favorites as well.

GG features useful for palette art
*Shift+Click+Drag on a palette entry to move it to a new spot, without affecting the image
*Click+Drag on a palette entry to place a colour in a new location, thereby swapping all pixels in the image between the two colours
*Load Palette- allows loading a palette from a palette file or any other type of palettized image (png, pcx, gif, bmp) and copying any number of those colours to any location in the current image palette...this would allow you to easily test/develop multiple palettes to make sure they would look good on a set of tiles.

GG features useful for tile artwork (yes, most art programs have these features too)
*User defined grids (n x m...plus the usual defaults 8x8, 16x16, 32x32 etc)
*Snap to grid, which makes it very fast/easy to rearrange your tilepage.

...also has layers, animation tools, pretty decent colour reduction, etc

The software is apparently free for non-commercial use.....$20 US dollars for commericial usage..or if you want gif support. Previous versions were admittedly very buggy, though the newest version (1.60) seems to be vastly improved.

#16184 - Miked0801 - Tue Feb 10, 2004 8:22 am

Or make a nice 256 color image and run it through Quither posted in annoucements - a really nice image reduction utility.

#16249 - Gene Ostrowski - Wed Feb 11, 2004 4:42 am

Yes, these are interesting approaches.

Tile management is not the real issue here, palette management is what I'm more concerned with.

Snap to grid and these kinds of things are kind of no brainers-- I guess though it's good to mention them in the event that someone hasn't actually realized it's an option :)

Palettes are the big thing. I like the idea of creating 16 different palettes, then just loading them into the image maintaining the indexes, therefore ensuring all your colors are 0-15. Good idea, except that you'll only be able to see on screen images that look good with the current palette.

Having all the sprites/tiles on screen is a nice feature to have, since you can quickly determine when you are "running out of space" for your tiles.

I like to start out with a 256x256 image for 16-color or a 128x256 image for 256-color images and start drawing my images from there. I can immediately see when I run low on space. The problem with this is that this is assuming that all sprites are the same "metatile" size, since most conversion programs can't handle different size tiles within the same image.

I'm hesitate to use these "image-reduction" tools, since they have a way of mucking with your image, changing your palettes, etc. I personally think its better for you to pick and choose the exact colors you want, so you are in complete control of what you get as the output.

The oldskool Deluxe Paint had a "palette rotate" option that let you shift the palette around without affecting the pixel values (it just modified the color registers). This feature would be nice in the current paint programs.
_________________
------------------
Gene Ostrowski

#16295 - Miked0801 - Wed Feb 11, 2004 10:25 pm

Alot of DPaint functions would be nice in newer stuff :)

I still pull that bad boy out occasionally when I need some fine pixel work.

#16328 - edbox - Thu Feb 12, 2004 5:32 pm

In my opinion try Promotion & DeBabelizer.

Promotion is a Dpaint clone. It's very usefull to manage your palette (copy, gradiant, moving options in the color's index).
Debabelizer is usefull to the same things, but it's better to change brightness, hue, etc, locking some colors you want to protect.

Work in 256 colors mode, not in the 16 colors mode. The most important thing is to be careful of colors order. For example, in the first range (color 0--->15), the color n?6 is the same like the color n? 22 in the second range (16---->31).

After it's very easy to manage the ranges (copy/paste) with Promotion or Debabelizer

#16335 - Miked0801 - Thu Feb 12, 2004 8:08 pm

Hehe. Promotion is Almost a DPaint clone. Our poor artists go in expecting something to work the same in both and consistently get burned. I can get a list of almost right things if you want :P

Debab is an awesome tool as well. Been using that for batch conversions for a long time :)

#16607 - Gene Ostrowski - Fri Feb 20, 2004 7:51 pm

Thanks for the useful info!
_________________
------------------
Gene Ostrowski

#20528 - Popstar - Wed May 12, 2004 2:49 pm

I have used ProMotion on 2 GBC and 2 GBA games. It's a great tool, especially for the color management. I've never used Debabilizer, but I do use Photoshop to do alot of artwork in (and then I convert the graphics in PS and PM).
_________________
-One pixel to rule them all, one pixel to find them.
-One pixel to bring them all, and in the darkness bind them.

#20986 - J-Rod - Fri May 21, 2004 12:49 am

Just going to add my .02 in here. I have found that Corel PhotoPaint has alot of the great palette management functions, as well as all the things that a full graphics package like photoshop has to offer. It actually why I originally went with them, since Adobe seems to lack alot of the palette swapping and management that even free programs like GG have. Of course I have to endure the constant bashing of the rest of the civilized photoshop world, but hey. It's all good. =]
_________________
#gameart on EFnet. The pixel owns you.