Put labels in map mode #36

Closed
opened 2026-10-17 20:40:39 +00:00 by sermuns · 0 comments
Owner

The M overview is pure geometry and a crosshair. hud::paint_labels
returns immediately when hud.in_map is set (hud.rs:598), so there is no text
anywhere in the map view -- no building names, no POI signs, no room labels.

All of the machinery to do this already exists and already runs every frame in
first person:

  • liuverse_world::locate (lib.rs:105) resolves building + floor + room from a
    point
  • hud::poi_labels (hud.rs:668) walks every marker and returns borrowed &str
    with a range filter
  • WorldLabel + project_to_uv (frame.rs:448) project a world position to
    screen

The ortho map camera has a height and a scale, so labels need a scale-dependent
range and de-duplication by building rather than by proximity -- at campus scale
you want "A-huset" once, not once per floor.

Cheapest visible improvement in the codebase, and it touches no bake data at
all.


Related

  • #38 a waypoint belongs on the map
  • #37 search feeds it
  • #22 the per-frame marker walk is the cost
  • #25 boards are text too
  • #50 street names are text too
The `M` overview is pure geometry and a crosshair. `hud::paint_labels` returns immediately when `hud.in_map` is set (`hud.rs:598`), so there is no text anywhere in the map view -- no building names, no POI signs, no room labels. All of the machinery to do this already exists and already runs every frame in first person: - `liuverse_world::locate` (`lib.rs:105`) resolves building + floor + room from a point - `hud::poi_labels` (`hud.rs:668`) walks every marker and returns borrowed `&str` with a range filter - `WorldLabel` + `project_to_uv` (`frame.rs:448`) project a world position to screen The ortho map camera has a height and a scale, so labels need a scale-dependent range and de-duplication by building rather than by proximity -- at campus scale you want "A-huset" once, not once per floor. Cheapest visible improvement in the codebase, and it touches no bake data at all. --- **Related** - #38 a waypoint belongs on the map - #37 search feeds it - #22 the per-frame marker walk is the cost - #25 boards are text too - #50 street names are text too
sermuns added this to the Wayfinding milestone 2026-10-25 02:22:30 +00:00
Sign in to join this conversation.
No description provided.