Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

I don't plan to put nice graphics in until the logic is mostly complete (I've found that results in wasted time on graphics that need to be reworked). But I did start creating my workflow for creating a texture atlas.

I use Libgdx's TexturePacker without any GUI, as I like to have full control over subdirectories for customizing the individual texture region options.

My favorite sprite editor is Cosmigo ProMotion, and it can output animated Gifs with a spare Gif for the alpha channel. These gifs can have variable frame lengths. Since TexturePacker doesn't support Gifs, I wrote a pre-processor that generates PNG files from the Gifs (merging in the alpha frames from the alpha gif). This is adapted from an old Libgdx pull request I made (but was turned down for being too specific of a use case).

Since Libgdx's Animation class doesn't accept variable length frames, I the Gif pre-processor duplicates frames as needed to get the timing to work out, and it prints out the frame length that should be used with the Animation class (a greatest common denominator of all the original variable lengths). This doesn't waste atlas space, because TexturePacker reuses identical sprites.

Here's the code. The GifProcessor looks for alpha Gif's using ProMotion's file naming scheme.