Skip to content

Sprite Sheet

Sprite Sheet
Transform

Packs batch frames into a single sprite sheet image, ready for game engines or further processing.

The Sprite Sheet node repacking a source pixel-art atlas's individual sprites (split out via the Separate node) into a tightly bin-packed atlas, a 4-column grid, and a 2-column grid.
A 3-panel grid showing the same set of pixel-art sprites repacked three ways: a Tight packed atlas, a uniform 4-column grid, and a uniform 2-column grid with no padding.

Sprite Sheet takes any batch (from Collect, Image Folder, Palette Remap, or any node that outputs multiple frames) and arranges the frames on a single image. Unlike Export Batch’s sprite sheet mode, which writes straight to disk, this node outputs an image you can keep processing: add outlines, resize, composite, or apply effects to the whole sheet before exporting.

  • Tight (the default) bin-packs mixed-size frames tightly into a near-square sheet.
  • Grid gives every frame the same cell in a fixed number of columns; the Auto Fit button next to Columns picks the column count for a roughly square grid.

Pins

BatchBatch
InputRequired
ImageImage
Output

Layout

Pack ModeChoice
Default: Tight Range: Grid / Tight

How sprites are arranged on the sheet.

  • Grid: uniform cells, every frame the same cell size.
  • Tight: packs mixed-size sprites tightly.
ColumnsInteger
Default: 4 Range: 1–32

Number of columns in the grid (Grid mode only)

Packing

Trim TransparencyToggle
Default: true

Remove transparent borders from each sprite before packing, to reduce wasted atlas space.

Original dimensions are preserved in the manifest.

Trim ThresholdInteger
Default: 1 Range: 0–255

Alpha values at or below this are treated as transparent. 0 = fully transparent pixels only.

Extrude (px)Integer
Default: 1 Range: 0–8

Duplicate edge pixels outward to prevent texture bleeding in game engines. The sprite's logical size is unchanged

Shape Padding (px)Integer
Default: 0 Range: 0–128

Space between sprites in pixels

Border Padding (px)Integer
Default: 0 Range: 0–64

Padding around the sheet perimeter

Output

BackgroundColor (RGBA)
Default: rgba(0, 0, 0, 0)

Sheet background

Size ConstraintsChoice
Default: Any Size

Constraint on the sheet's final dimensions

  • Any SizeNo size constraint.
  • Power of 2Expand to next power-of-two dimensions.
  • Multiple of 4Round up to next multiple of 4 for DXT/BC compression.
  • Word AlignedAlign width to a multiple of 2.
Max Width (px)Integer
Default: 4096 Range: 128–8192

Maximum sheet width in pixels (Tight only)

Max Height (px)Integer
Default: 4096 Range: 128–8192

Maximum sheet height in pixels (Tight only)

Display

Show OutlinesToggle
Default: false

Display colored outlines around each sprite in the preview panel

  • Set Size Constraints to Power of 2 or Multiple of 4 when a game engine or texture compression needs those dimensions.
  • Keep Extrude at 1 px or more for sprites that are filtered or mipmapped in an engine, so neighbors do not bleed into each other.
  • Turn on Show Outlines to see each sprite’s bounds in the preview while you tune packing.
  • The background is transparent by default; a solid color helps when previewing or debugging the layout.
  • Wire the Sprite Sheet output into Export Data for the atlas file a game framework loads: Phaser or PixiJS JSON, Starling XML, CSS sprites, a C# table, or Godot regions, with trim offsets and UVs.