2D tools
Editor docs
Three panels edit the engine's 2D files, the Settings panel edits sorting layers, and the scene view draws collider outlines and handles for 2D colliders. Each panel edits its own file, with its own undo and Save, separate from the scene's, and the scene view follows the Tilemap and Sprite Animation panels as you work. The editor is a preview.
Preview: these tools shipped on 3 November 2026 and have not yet been run through the editor's end-to-end suite. What the scene view shows of them (live tilemap cells, the clip scrub, the outlines and handles) shipped on 4 November and has not been tried in a running editor yet.
Tilemap panel#
Paints .tilemap.json files. Open it with a double click on a .tilemap.json in Assets, or Edit
tilemap on an entity's Tilemap component in the Inspector. It docks as a tab beside Scene.
- Tools: brush, rectangle, fill, erase and pick, with a palette drawn from the tileset's atlas.
- Layers: select, show or hide, add, remove and reorder. Showing and hiding is a panel setting, not saved in the file.
- Undo, Redo and Save buttons. A stroke is one undo step, however many cells it paints.
- The file is saved in the engine's own layout, each layer in the encoding it had, so a git diff shows only the cells you changed (a file in another layout is rewritten once, on its first save). If the file changes on disk with no unsaved edits, the panel reloads it; with unsaved edits it offers Reload, or Save over it.
In the scene view#
The scene view shows your painting as you paint: every stroke, undo and redo reaches the tilemap in the open scene before you save, and saving does not reload the view. Adding, removing or reordering a layer is the exception: the scene view shows it when you save, by reloading.
Opening another tilemap while this one has unsaved cells drops them. The scene view then reloads, so it shows the saved file again, as it does whenever the editor closes a tilemap with unsaved cells.
To bring in Tiled or LDtk maps, use the engine's ignifx import tilemap command.
Atlas panel#
Packs PNGs into a sprite atlas: <name>.png and <name>.atlas.json, beside the sources. Choose
New Atlas… in the Assets panel's context menu for the folder it shows, or double-click an
.atlas.json to re-pack it. It opens as a tab beside Assets.
Tick the sources, then set the name, padding, extrude, max size, trim, power-of-two sides and
nearest filtering. Preview shows the sheet with each frame outlined; Pack writes it. Packing
the same inputs gives the same bytes. The list of sources is kept in an editor section of the
.atlas.json, which the engine ignores, and the panel refuses to overwrite files it did not pack.
With Trim on, each frame is packed without its transparent border. The .atlas.json keeps the
frame at its trimmed size with sourceSize, the size of the untrimmed image, and sourceOffset,
where the trimmed rectangle sits inside it. The engine draws the frame where the untrimmed one would
be, and every frame keeps its pivot at the centre of the untrimmed image. An atlas packed by an
earlier editor keeps its old frames until you open it and Pack it again; nothing re-packs it on
its own.
Sprite Animation panel#
Edits .spriteanim.json clips. Select one in Assets and choose Edit Animation…, or select an
.atlas.json and choose New Sprite Animation…, which writes <atlas>.spriteanim.json with one
default clip.
- Clips: add, remove and rename; set fps and loop.
- Frames: drag to reorder, click or drop an atlas frame from the palette to add one, × to remove. Events are set per frame and follow their frame when it moves.
- Play, pause and scrub a preview drawn in the panel. The scene view follows it: the frame you scrub to, or the frame playing, is shown on the entity whose Sprite Animator plays this file (the selected entity first, else the first one in the scene). A line under the preview says what the scene view shows, or why it shows nothing ("No entity in the open scene plays this animation."). The scene view plays the clip as saved: frame changes show there after Save.
- Undo, Redo, Save and Revert. A file changed on disk while open is caught when you save; Revert reads it again.
The format has no per-frame duration and no event payload, so the panel offers neither.
Sorting layers#
File → Project Settings… shows the sortingLayers section as a list, back to front: add a
layer, rename it by editing its name, move it up or down, or remove it. A rename or removal
rewrites every scene, prefab and tilemap that names the layer, after a dialog that lists each file.
The open scene changes in one undo step, Rename sorting layer. Removing a layer renames its uses
to Default; Default itself cannot be renamed or removed.
Collider outlines and 2D handles#
Select an entity with a collider, a rigidbody or a character controller, 2D or 3D, and the scene view draws its collider outline. With several selected, each is outlined; when there are more lines than the view takes, the primary selection's outline is kept first. The Inspector still summarises the outlines under the components.
In a 2D scene, the primary selection's enabled 2D colliders also get handles, drawn as small squares on the outline: a box's edges and corners, a circle's radius, a polygon's or an edge's points. A drag is one undo step, and the outline follows it live. The outlines and handles go away when nothing selected has a physics component.
Known limitations#
- The scene view shows a tilemap's layer changes (add, remove, reorder) on save, and a sprite clip as saved, not its unsaved frame edits.
- There is no View option to turn the collider outlines off.
Ctrl+Zand the Edit menu stay with the scene document; use the panels' own Undo and Redo buttons.- The unsaved-changes prompt on quit or project switch does not cover a tilemap.
- The Tilemap canvas paints from the keyboard (see Accessibility), but the Atlas sheet and the Sprite Animation preview need a pointer to pick a frame.
- In a project whose
ignifx.config.tsdefinessortingLayers, as both 2D templates do, that file wins: the Settings panel marks the list not in effect. - Capsule colliders have no handles.
- There are no MCP tools for the 2D panels yet; agents edit those files directly.