Make a sprite sheet and walk cycle

Last updated: October 12, 2026

Turn one approved sprite into a walk cycle and pack the frames into a single sprite sheet your engine slices into an animation. This is the path for a 2D character in a side-scroller, a platformer or a top-down game.

What you'll make

A four-frame walk cycle (contact, passing, contact with the other foot forward, passing), each frame cut out on transparency, packed left to right into one PNG sheet of equal cells. Four frames read as a walk and are the most reliable place to start; add frames once those four hold together.

Before you start

  • The character, approved, as one frame: side view, full body, on a flat background in a colour the character does not use. This frame is the reference every other frame is drawn from.
  • The sprite's grid and palette, as numbers: "64x64 pixel art, 16-colour palette". A model given no grid draws something pixel-like at no particular size.
  • Each frame is one image run; packing the sheet runs no model. See Creative Units for how runs are charged.

Draw the first frame

Make the contact pose with Create images. Name the grid, the palette and the defaults to exclude, for example: 64x64 pixel art sprite of a hooded forest ranger, side view facing right, contact pose with the left foot forward, limited 16-colour palette, hard-edged square pixels, no anti-aliasing, no blur, no gradients, full body, centred, on a flat solid magenta background.

  1. Generate a few candidates and pick one. Check the pixels are hard-edged at full size; if the model softened them, open the frame and run Pixelate image to snap it to a crisp grid.

  2. Keep the approved frame on the board or in your library. Every other frame in the cycle refers back to it.

Draw the rest of the cycle

The Layer agent draws each remaining frame from the first one, so the character's palette and proportions hold across the cycle. Work with the Layer agent covers briefing it.

  1. On Home, click Add to prompt, choose Attach files or photos and attach the approved frame.

  2. Describe the cycle: the poses in order, the grid and palette to keep, that every frame is drawn from the attached one, that the backgrounds come off, and that the frames are packed into one sheet.

  3. Send it. The agent opens a session and shows its plan, with the cost, under Approve generation.

  4. Click Approve. The frames run and land on the board.

  5. Check the frames side by side for drift: height, palette, the hood, the bow. Ask the agent to redraw any frame that moved, from the first frame again, not from its neighbour.

Pack the sheet

Packing is a file operation, not a generation: the frames go into a grid of equal cells in the order you give, each centred in its cell, on a transparent background. A frame larger than the cell is scaled down to fit, never cropped.

  1. When the frames are right, the agent packs them into one sheet and places it on the board. To pack frames you already have, attach them in order and ask the agent to pack them into a sprite sheet, saying how many columns you want.

  2. Open the sheet with View and check the cells are even and the background is clear.

To edit one frame of a sheet you already have, ask the agent to split the sheet into frames, change the one frame, and pack them again.

Hand it off

Download the sheet as a PNG. It holds the frames at the model's resolution: each pixel of the art is a block of screen pixels. Import it as is with point filtering, or scale it down to the sprite's own size in your image editor with nearest-neighbour sampling first. Either way, keep compression off for pixel art so the palette stays exact.

Unity

Set the texture's Sprite Mode to Multiple, Filter Mode to Point and Compression to None. In the Sprite Editor, slice by cell count (four columns, one row), then drag the sliced sprites into the scene to make an animation clip.

Unreal Engine

With Paper2D, right-click the texture, choose Extract Sprites and use a grid of four cells, then build a flipbook from the extracted sprites. Apply the Paper2D pixel-art texture settings so the sheet is not filtered.

Godot

Turn texture filtering to Nearest for the project or the node, then in an AnimatedSprite2D's SpriteFrames choose Add frames from sprite sheet and set four horizontal, one vertical.

Scale it up

  • Hold the style across every sprite. Train a reference set on approved sprites and use it for every first frame, so the cast shares one hand. See Reference sets.
  • Every cycle from the same start. Idle, run, attack and hurt cycles all begin from the same approved frame, so the character stays one character across animations.
  • Reuse the brief. Save the cycle brief as a skill so the team asks for every cycle the same way. See Write a skill. The Sprite animation sheet template holds ready-made briefs for retro machines.
  • Review before hand-off. Look at the frames together, at the size the game shows them, before they leave Layer, and keep the approved sheet in a project. See Organize work into projects.

If something goes wrong

  • The character changes from frame to frame. Each frame was drawn from the one before it, or with no reference. Redraw from the approved first frame, and describe only the change of pose.
  • The pixels are soft or blurred. The prompt left out the grid or the exclusions. Add "hard-edged pixels, no anti-aliasing, no blur", or run Pixelate image on the frame.
  • The cut-out leaves a coloured fringe. The background colour also appears on the character. Regenerate on a flat colour the character does not use.
  • The frames sit at different heights in the sheet. Packing centres each frame in its cell; it does not align feet. Ask for every frame "at the same size and position in the frame", or align them in your editor before packing.

Related