See the outputs

Real outputs from a real GIF — no mockups.

Spritesheet PNG

All frames in one file

Every frame packed into a grid PNG. Drop it directly into Unity, Godot, Phaser, or any engine that reads spritesheets.

Corgi healthy pacing animation spritesheet — 128 frames in a 16×8 grid

128 frames · 16 × 8 grid · 1280 × 640 px · healthy_pacing.gif

Travel Table · Dart / Flutter

Frame → position mapping

Analyzes pixel motion frame-by-frame and outputs a 0→1 travel value per frame. Holds at 0 during idle lead, advances during stride, holds at 1 on trail — so the character's on-screen position stays locked to actual leg movement.

// 128 frames · idle_pad=1 · hold_lead=3 · hold_trail=5
const _kPaceTravelByFrame = <double>[
  0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,
  // … idle lead — character sitting before walk …
  0.0244, 0.0488, 0.0732, 0.0976, 0.1220, 0.1463,
  0.1707, 0.1951, 0.2195, 0.2439, 0.2683, 0.2927,
  // … advancing through stride …
  0.8780, 0.9024, 0.9268, 0.9512, 0.9756, 1.0000,
  1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000,
  // … idle trail — character settling after walk …
];

Generated from the same GIF in < 1 second · works with any pacing animation

Why flood-fill wins for sprites

AI models trained on photography get confused by flat cartoon colour

AI on cartoon sprites

  • ⚠️ Trained on real-world photos, not flat colour
  • ⚠️ Hallucinates edges on solid backgrounds
  • ⚠️ Fringing on pixel-art outlines
  • ⚠️ Slower — unnecessary for simple backgrounds

Flood-fill on sprites ✦

  • ✓ Follows colour boundary exactly
  • ✓ Crisp pixel-perfect edges
  • ✓ No fringing — clean outlines every frame
  • ✓ Faster than AI — ideal for sprite pipelines

Set the method to Auto and RemoveGifBG will pick flood-fill automatically when it detects a flat background.

Game Sprite FAQ

Which game engines accept APNG sprites?

Unity, Godot, Phaser.js, and most web-based engines can import PNG sequences or read APNG as a standard PNG. Use the spritesheet download for engines that need frame-by-frame PNGs.

Why does the subject shift between frames?

RemoveGifBG computes a union bounding box across all frames before cropping, so subjects stay aligned regardless of per-frame position. The crop is spatially consistent across the animation.

What's the "Bottom" anchor option?

For character sprites, Bottom anchor places the subject at the bottom of the canvas so feet always touch the ground plane — the standard convention for platformer and RPG assets.

Can I use the Flood fill method on pixel-art sprites?

Yes — Flood fill works excellently on pixel art with solid-colour backgrounds. Set a low tolerance (8–12) for sharp pixel edges. Avoid the AI method for pixel art as it may soften edges.