Skip to content
← The Workbook

No. 25 · 2025Built

SpriteFight

Sprite-sheet generator built to unblock a game dev team when tool licensing stalled: rectangle bin packing minimizes atlas area, then an automated TinyPNG pass quantizes the payload. At campaign scale, every kilobyte compounds.


Status
Built
Year
2025
Stack
Sprite Sheets · Bin Packing · TinyPNG · Pipeline · Tooling · Games
SpriteFight

Why It Exists

The dev team's sprite production was stuck in tooling limbo. Procurement for the paid atlas packer was crawling, and the free script alternative fought back at every step. Rather than wait, I built SpriteFight in April 2025: drop frames in, get an optimized production sheet out.

The Pipeline

Frames go in; a packed atlas and its metadata come out; the file then runs through an automated TinyPNG API pass before anyone ships it. One tool, no license queue, no manual compression step to forget.

Bin Packing

The layout engine uses rectangle bin packing to minimize the atlas's bounding area. Tighter packing means fewer wasted transparent pixels and smaller canvas dimensions, which shrinks the file before compression even starts.

The Compression Math

Sprite art is flat color with hard edges, which is exactly the material lossy palette quantization compresses hardest. So the stack multiplies: bin packing shrinks the canvas, quantization shrinks the payload. Per-sheet savings look modest in isolation, but game campaigns serve these assets millions to billions of times per campaign, so every shaved kilobyte surfaces as real bandwidth and CDN cost reduction at the invoice level.

Tech Stack

Web app · TinyPNG API · rectangle bin-packing layout engine.