
When multiple distance markers are positioned close together in world space, their screen-space labels collide and become illegible (see screenshot). I’d like to propose a solution that keeps all markers visible while preserving depth readability.
Proposed Behaviour
When two or more marker labels overlap in screen space, apply the following:
- Render a dark semi-transparent background behind each label to separate it from the scene geometry.
- Fade out nearer markers so that distant markers remain fully visible through them — since the distant value is the one harder to judge intuitively, it should have visual priority.
markers = getAllVisibleMarkers()
sortByDistance(markers, order = DESCENDING) // farthest first
for each markerA in markers:
for each markerB in markers where markerB is closer than markerA:
if screenSpaceBoundsOverlap(markerA, markerB):
markerA.backgroundEnabled = true
markerB.backgroundEnabled = true
markerB.alpha = map(markerB.distance,
min = nearestMarker.distance,
max = farthestMarker.distance,
outMin = MIN_ALPHA, // e.g. 0.25
outMax = 1.0)
// Closer marker → lower alpha; farthest marker → alpha 1.0
Summary
- Any marker involved in a screen-space overlap → dark grey background pill applied
- Farthest overlapping marker → background + full opacity (alpha 1.0)
- Each closer marker → background + progressively lower alpha
- Non-overlapping markers → unchanged (no background, full opacity)
This way the scene reads depth correctly: you always see the distant number clearly, and the nearer markers hint their presence without obscuring it.
- Yes
- No
0
voters