Parse and use MazeMap's marker colours #20

Closed
opened 2026-10-17 20:40:07 +00:00 by sermuns · 1 comment
Owner

Every feature in the MazeMap markers layer carries a color property --
stairs arrive as rgba(0,255,230,1.00), rooms as rgba(239,239,239,1.00) -- and
the bake throws it away. interiors.rs:299 reads text and nothing else:

let text = property_text(feature.properties.as_ref(), "text");

property_color already exists in the same file for the area-fill layer and
does the rgba(...) parse. So MazeMap already tells us what colour a room sign
and a stair sign are supposed to be, and MARKER_ALBEDOS in
liuverse/src/config.rs is instead a hand-picked five-slot palette indexed by
MARKER_* kind.

Bake the colour through BakedMarker and let it drive the marker albedo, with
the palette as the fallback for the POI-dump markers (which carry no colour --
the dump has no color field).

This also means a new MARKER_* kind needs no new palette entry, which is the
real argument for it.


Related

  • #23 a new marker kind needs no palette entry once this lands
  • #25 the panels that want to be readable
  • #26 the artwork markers
  • #24 the AEDs
  • #22 stop baking markers nothing can draw
Every feature in the MazeMap `markers` layer carries a `color` property -- stairs arrive as `rgba(0,255,230,1.00)`, rooms as `rgba(239,239,239,1.00)` -- and the bake throws it away. `interiors.rs:299` reads `text` and nothing else: ```rust let text = property_text(feature.properties.as_ref(), "text"); ``` `property_color` already exists in the same file for the `area-fill` layer and does the `rgba(...)` parse. So MazeMap already tells us what colour a room sign and a stair sign are supposed to be, and `MARKER_ALBEDOS` in `liuverse/src/config.rs` is instead a hand-picked five-slot palette indexed by `MARKER_*` kind. Bake the colour through `BakedMarker` and let it drive the marker albedo, with the palette as the fallback for the POI-dump markers (which carry no colour -- the dump has no `color` field). This also means a new `MARKER_*` kind needs no new palette entry, which is the real argument for it. --- **Related** - #23 a new marker kind needs no palette entry once this lands - #25 the panels that want to be readable - #26 the artwork markers - #24 the AEDs - #22 stop baking markers nothing can draw
Author
Owner

Closed by the merged batch: #142 (tier1-features) landed this, rebased onto main at 609dcb8.

Closed by the merged batch: #142 (tier1-features) landed this, rebased onto main at 609dcb8.
Sign in to join this conversation.
No description provided.