Godot Version: 4.6.1 stable
Hi, I’m trying to set up animated tiles using a TileMapLayer with an atlas tileset (a large 1024x1024 packed spritesheet, 16px tile size). When I select a tile in the TileSet editor and try to add animation frames via the Animation tab, the “Add Frame” button does nothing and I get this error repeatedly in the output:
ERROR: editor/scene/2d/tiles/tile_set_atlas_source_editor.cpp:263 - Cannot add frames to the animation, not enough room in the atlas to layout 2 frames.
Add element to property array with prefix animation_frame_.
The tile IS selected (highlighted blue), I’m in Select mode, and the Animation section shows Columns/Speed fields. Setting Columns works, but Add Frame always fails.
After researching I understand this happens because the tileset is a general-purpose packed sheet — the tiles I want to animate don’t have consecutive empty tiles to their right, so Godot can’t lay out the frames.
My questions:
- Is there any way to animate tiles from a packed atlas WITHOUT needing consecutive empty space? For example, can I manually specify which tile coordinates each frame uses?
- Is using Alternative Tiles + a runtime script to cycle them the only real workaround for packed tilesets?
- Is this a known limitation being addressed in future Godot versions?
The workaround I’ve found so far is to crop the animated tiles into a separate spritesheet and add it as a second Atlas source. This works but feels unnecessary for tiles that already exist in the sheet.
Any help appreciated, thanks!