Sprite Sheet Workflow: From Aseprite to Godot in 5 Steps
Every time I start a new 2D project in Godot, I go through the same process: draw the animation in Aseprite, export as a sprite sheet, slice it back into individual frames, and import into Godot's AnimatedSprite2D.
It sounds repetitive — and it is — but once the workflow is locked in, it takes under five minutes per animation. This guide walks through exactly what I do, including the browser tools that replace the need for TexturePacker or any paid software.
Quick Overview
Step 1: Export from Aseprite
In Aseprite, go to File → Export Sprite Sheet. Use Sheet type: By rows with fixed cell dimensions matching your frame size. Export as PNG to preserve transparency.
If your animation has multiple tagged sections (idle, walk, attack), export each tag separately to keep asset files organized.
💡 Use {tag}_{frame0}.png as the filename format when exporting individual frames. This naming matches what Sprite Slicer Pro's Animation Rows mode expects.
Step 2: Note Frame Dimensions
Before slicing, note the exact frame size — visible in Aseprite's bottom status bar. Common sizes for pixel art characters are 32×32, 48×48, and 64×64.
Also check for padding. If you see thin gaps between frames in the exported sheet, that's padding — usually 1-2 pixels. You'll need this number in the next step.
Step 3: Slice in the Browser
Open Sprite Slicer Pro and upload your sprite sheet. Enter the frame dimensions from Step 2. If the sheet has padding, enter the gap size in Padding X and Padding Y.
For the naming mode, choose Animation Rows for character animations. This outputs hero_idle_000.png, hero_idle_001.png — each row gets its own prefix, which matches Godot's animation clip naming conventions.
Click Slice. A ZIP downloads automatically with all frames named and ready for import.
Step 4: Import into Godot
Drag the PNG frames from the ZIP into Godot 4's FileSystem panel. Then:
- Add an AnimatedSprite2D node to your scene
- In the Inspector, click SpriteFrames → New SpriteFrames
- Open the SpriteFrames editor at the bottom of the screen
- Create a new animation (e.g. "idle") and drag frames into the frame list
- Set the FPS to match your original animation speed
💡 Hold Shift and click to select all frames at once in the FileSystem panel before dragging them into the SpriteFrames editor. This preserves the correct order.
Step 5: Preview and Verify
Before finalizing the import, verify the animation timing. You can hit Play in the SpriteFrames editor, or use Sprite Animation Previewer before importing — upload the PNG sequence, adjust FPS in real time, and export a GIF to archive or share.
This preview step has saved me multiple times from importing animations with off-by-one frame errors or wrong timing that I didn't notice until runtime.
🛠 Free Tools Used in This Guide
- Sprite Slicer Pro — Slice sprite sheets into individual frames
- Sprite Animation Previewer — Preview PNG sequences and export GIF
- Sprite Sheet Packer — Pack individual frames back into a sprite sheet
- GIF to PNG Sequence — Extract frames from animated GIFs