Multi-row sprite sheets work perfectly fine in Phaser. Understanding how Phaser indexes frames is essential for setting up animations correctly.

How Phaser Indexes Frames

Phaser counts frames from the top left corner at index zero, moving left to right across each row. After completing a row, it moves down and continues counting. This indexing order applies when using generate frame numbers or generate frame names methods.

Handling Empty Tiles

Phaser doesn't skip empty tiles. It counts them as valid frame indexes. Specify individual frames and omit empty indexes when creating animations.

Texture Atlases

Use generate frame names for texture atlases where frames are named in the JSON file. Use generate frame numbers for sprite sheets with evenly sized frames indexed numerically.

Watch Tutorial