Tilemaps: painting tools in their own panel beside the scene view (#142); check total 1032

admin committed 2026-09-18 11:46:24 +02:00
1 parent a93941bc38
commit 9b9cfb0fd1
3 files changed
+20 -5

No files matched your search

+4 -3
@@ -96,7 +96,9 @@ src/editor/inspector/ Inspector panel, host (what a section builds into), field
(where a value lives — shared with the List tab),
one section per selection kind (asset/object/node/frame), variableRows (one row shape for
every variable), portSection, aspectAction, objectQueries/vectorRows/parentRow
src/editor/panels/ AssetPanel, assetMenu (the two groups of the + menu), HierarchyPanel, Toolbar
src/editor/panels/ AssetPanel, assetMenu (the two groups of the + menu), HierarchyPanel, Toolbar,
TilemapPanel (tools, tiles and layers of the one selected tilemap, beside the scene view, #142;
painting itself is SceneViewport)
src/editor/graph/ GraphEditor (header + picker), GraphCanvas, graphView (zoom limits, grid, wheel zoom – shared with NodeBoard), EdgeLayer (curves and fold marks), graphMenus,
NodeView, NodePalette + paletteEntries (which also ranks a search), folding (hidden links, collapsed nodes), Breadcrumb + trail (the path into nested behaviors), beads (the run's pulses),
AnnotationView + annotationDrag (groups and comments: what a drag carries, each thing moved once)
@@ -108,8 +110,7 @@ src/editor/animation/ AnimationEditor (header + picker, preview over timeline),
RowDialog + FramesDialog (FormDialogs)
src/editor/tile/ TileEditor (header + picker + kind), TileCanvas (every tile of the block and a sample map, animated),
PictureStrip (the pictures as animation steps; dropIndex is the reorder maths),
TilePalette (the tiles as a grid of pictures in the tilemap section, #139)
src/editor/inspector/ … tilemapSection (tools, tiles and layers of a placed tilemap; painting itself is SceneViewport)
TilePalette (the tiles as a grid of pictures in the tilemap panel, #139)
src/editor/statemachine/ StateMachineEditor (header + picker, on the graph canvas)
src/editor/particles/ ParticlesEditor (graph canvas left of a preview panel, splitter between them),
ParticlePreview (the panel: the asset's own particles, wearing its own rows)
+1 -1
@@ -12,7 +12,7 @@ npm run check # typecheck + lint + format:check + tests, the gate CI runs
# code is lost (tail's is reported), so a red run reads as green
npm run build # writes dist/ and regenerates index.html
./build.sh # the same under `set -o pipefail`, for callers that pipe the output
node tools/seed-e2e.mjs && node tools/e2e.mjs # 1027 editor checks, screenshots in /tmp/gm-e2e-*.png
node tools/seed-e2e.mjs && node tools/e2e.mjs # 1032 editor checks, screenshots in /tmp/gm-e2e-*.png
GM_STEPS=20 node tools/e2e.mjs # or 1-12, or 6,20 — a subset while working on one step
./e2e.sh start [GM_STEPS] # the same run detached, see below
./e2e.sh status # live progress, or the last run's result
+15 -1
@@ -27,7 +27,21 @@ edge.
## Painting
Select a placed tilemap; the inspector then shows a **PAINTING** section under its rows.
Select a placed tilemap in the scene view, and the **Tilemap** panel opens to the right of the
view, between it and the inspector (#142). It holds everything below: **PAINTING**, **TILES** and
**LAYERS**. The inspector keeps what belongs to the object — name, asset, position, transform and
the Columns, Rows and Tile size rows.
- The panel is there only while **exactly one** placed tilemap is selected, and only on the Scene
tab. With nothing, another object or a second object selected, or on any other tab, it is gone
and the scene view has its full width. Selecting the tilemap asset in the asset panel does not
open it: one always paints a placed map.
- It starts as wide as the inspector; the splitter on its left edge makes it wider or narrower.
Like the other splitters, the width is not saved.
- Opening, closing or widening the panel leaves the map where it is on screen: the scene view
keeps its world in place rather than its centre, so the view simply shows more or less on the right.
- **Deselecting the map puts the brush down**: the tool falls back to Select, so no invisible
brush is left waiting for the next map. The chosen tile and layer are kept.
- **Select** leaves the scene view as it is: the map is picked up and dragged like any other object.
This is what a tilemap starts in — a map one cannot move would be worse than a click.