← Back to Blog Workflow

Sprite Sheet Workflow: From Aseprite to Godot in 5 Steps

June 2026  ·  By ORH Studio  ·  5 min read

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
Export your animation as a sprite sheet PNG using File → Export Sprite Sheet.
Step 2
Note frame dimensions
Record the canvas size and check for padding between frames.
Step 3
Slice in the browser
Use Sprite Slicer Pro to cut the sheet into individual PNG frames.
Step 4
Import into Godot
Drag frames into FileSystem, set up AnimatedSprite2D and SpriteFrames resource.
Step 5
Preview and verify
Check animation timing before finalizing the import.

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.

Advertisement

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:

  1. Add an AnimatedSprite2D node to your scene
  2. In the Inspector, click SpriteFrames → New SpriteFrames
  3. Open the SpriteFrames editor at the bottom of the screen
  4. Create a new animation (e.g. "idle") and drag frames into the frame list
  5. 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.

Advertisement