Compare commits
23 Commits
5a3f633ab2
...
v0.3.3
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
451da04cbd | ||
|
|
bde1f7acfa | ||
|
|
2734efa1a9 | ||
|
|
340dd5f700 | ||
|
|
46d1e78758 | ||
|
|
51138e257f | ||
|
|
6eacde3eaa | ||
|
|
e745be8d07 | ||
|
|
f06ef5e2cb | ||
|
|
398d3b4dd9 | ||
|
|
1945e91441 | ||
|
|
107eade2fa | ||
|
|
f2123ba79c | ||
|
|
9213d3f91b | ||
|
|
211056ac8c | ||
|
|
b5afe35df8 | ||
|
|
2c3015685c | ||
|
|
2eebd3d2d5 | ||
|
|
1a9daa8ce1 | ||
|
|
6956919414 | ||
|
|
15159d7fd5 | ||
|
|
e373aa8a1f | ||
|
|
1bf5f46924 |
40
README.md
40
README.md
@@ -113,3 +113,43 @@ SPOREL_CI=1 ./Sporel.exe --module=map-editor # exits with rc=0 after ~0.5 s
|
||||
- Design paper: `docs/design/2026-05-28-autotile-blob-styles-design.md`
|
||||
§11 in `sporel-meta`
|
||||
- Plan: `docs/superpowers/plans/2026-05-28-map-editor-blob-v2.md`
|
||||
|
||||
## Menu UI (v0.3.0)
|
||||
|
||||
Top toolbar replaced with a seven-category menu bar (File, Edit, View,
|
||||
Map, Tools, Window, Help) plus a sticky two-segment Mode-pill on the
|
||||
right end. Item types: action, modal, toggle, submenu, separator;
|
||||
items can be conditionally disabled. A single-stack modal framework
|
||||
hosts the existing Cheatsheet (I) and three new modals: Save As, Map
|
||||
Properties (read-only), About. The Esc key cascades modal -> menu ->
|
||||
quit.
|
||||
|
||||
New Map and Open Map appear in the File menu as disabled placeholders
|
||||
pending a v3-aware maps.create and an engine.asset.list_dir in a
|
||||
future engine + lib slice.
|
||||
|
||||
All previous hotkeys (Tab, S, E, R, H, 0, D, G, I, Esc) continue to
|
||||
work; their bindings are documented in the items where applicable
|
||||
and in the in-editor Cheatsheet modal.
|
||||
|
||||
## Cell-Tile Mode (v0.3.1)
|
||||
|
||||
Third painting mechanic alongside Auto-Tile and Direct. LMB paints a
|
||||
per-cell material flag at the cursor cell; RMB clears it. The
|
||||
renderer uses the classical 47-blob 8-neighbour bitmask for
|
||||
cell-tile cells, unlocking the 9 atlas slots that Auto-Tile's
|
||||
dual-grid 4-corner rule structurally cannot reach (isolated, end,
|
||||
corner_open, straight, tee_open, tee_half, cross_open, cross_q1,
|
||||
cross_q2adj).
|
||||
|
||||
Auto-Tile (vertex-paint, 5 reachable slots, dual-grid look) and
|
||||
Direct (manual override placement, all 14 slots via explicit pick)
|
||||
are unchanged. Tab cycles through all three modes.
|
||||
|
||||
For clean visuals, use a single painting mode per layer. Mixing
|
||||
Vertex-Tile and Cell-Tile material in the same layer is allowed but
|
||||
produces an asymmetric seam at the boundary because vertex-tile
|
||||
cells are structurally blind to their cell-tile neighbours.
|
||||
|
||||
See `sporel-meta/docs/superpowers/specs/2026-06-01-map-editor-cell-tile-mode-design.md`
|
||||
for the full design rationale and the Boris-taxonomy background.
|
||||
|
||||
17
manifest.launcher.md
Normal file
17
manifest.launcher.md
Normal file
@@ -0,0 +1,17 @@
|
||||
---
|
||||
{"summary":"Map editor — vertical layer-chip overlay + atlas-tile picker","author":"calic","tags":["tool","map-editor"],"teaser_images":[]}
|
||||
---
|
||||
|
||||
# Map Editor
|
||||
|
||||
Click-to-paint tile editor with collapsible atlas/tile-picker. Vertical layer-chip overlay (left), atlas+tile picker (bottom-left), status chip (bottom-right).
|
||||
|
||||
## Controls
|
||||
|
||||
- Mouse-left on grid: paint
|
||||
- Mouse-left on layer-chip: switch active layer
|
||||
- Mouse-right on layer-chip: toggle visibility
|
||||
- E: erase mode
|
||||
- R: rotate
|
||||
- S: save
|
||||
- ESC: quit to launcher
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"id": "map-editor",
|
||||
"version": "0.2.0c.4",
|
||||
"version": "0.3.3",
|
||||
"kind": "module",
|
||||
"api": "^0.1",
|
||||
"ci_frames": 30,
|
||||
@@ -9,8 +9,9 @@
|
||||
"blob_rect_stone": "lib-asset.prototype-blob-geom"
|
||||
},
|
||||
"deps": [
|
||||
{"id":"lib-core.maps","version":"0.5.6"},
|
||||
{"id":"lib-core.render","version":"0.1.0"},
|
||||
{"id":"lib-core.maps","version":"0.5.7"},
|
||||
{"id":"lib-core.render","version":"0.2.0"},
|
||||
{"id":"lib-core.composition","version":"0.1.0"},
|
||||
{"id":"lib-core.camera","version":"0.3.0"},
|
||||
{"id":"lib-core.input","version":"0.4.0"},
|
||||
{"id":"lib-asset.prototype-blob-geom","version":"0.1.0"}
|
||||
|
||||
Reference in New Issue
Block a user