Maps that feel native, not embedded: buttery pan and zoom, full rotation, 3D tilt, and thousands of live markers at smooth framerates. Street maps, satellite, topography - any tile provider, your choice. Offline caching, routing, clustering, drawing tools. Drop in a prefab and go.
Description
Live WebDemo: https://map.lansenou.com/
LansMap renders smooth, rotatable 2D raster maps in Unity. It supports panning, rotating, tilting and zooming by streaming image tiles.
The world never needs to rotate and the camera never needs to move. All map state lives in one double-precision transform, re-anchored so GPU floats stay small. That is why panning at high zoom stays pixel-stable where naive float maps jitter.
What you get
- Pan, fractional zoom, rotation, and pitch to 70 degrees, with inertia
- The whole base map in one instanced draw call, 4 vertices per tile
- Tile uploads on a measured per-frame time budget - no hitching tile dumps
- GPU-instanced bulk markers (half a million by architecture) pinned to the map by construction, plus a prefab marker tier, for your own game objects: Spawn(prefab, lat, lon, altitude)
- Hover picking, decluttered labels, procedural SDF marker shapes, custom sprites
- Provider-agnostic tile source: URL template with {z}{x}{y}{key}, your key, built-in attribution overlay, disk cache namespaced per provider
- Upright place-name labels from vector tiles (OpenFreeMap, keyless) over any raster base - vector-label, raster-base hybrid look
- Touch gestures: pinch zoom, two-finger rotate and pitch, each lockable
- Overlay tile layer with alpha (traffic, hillshade), retina 512px @2x tiles, distance LOD under pitch
- Polylines, polygons, trails, clustering, measure tool, minimap,tiles prefetch, geocoding (Nominatim), OSRM routing
- Zero-GC frame loop; idle throttling for battery (opt-in)
- Full C# source included
- Documentation included: https://map.lansenou.com/
Requirements
- Unity 2022.1+ (compiles clean, 0 errors/warnings, on both 2022.3 and 6000.3)
- Built-in and URP both supported. HDRP not tested
- Web builds require WebGPU (Unity 2023+). On plain WebGL2 the map does not render at all
- GLES 3.1, Metal, or Vulkan minimum. Texture2DArray and compute-fed shaders required
- Bring your own tile provider for production and comply with its terms. OpenStreetMap is included as an evaluation default only. Attribution display is mandatory and built in, with an opt-out
Honest limitations
- Raster basemap only; vector tiles carry labels, no full rendering yet
- Real terrain elevation (DEM) ships opt-in, in both fullscreen and tabletop map modes, still in development
- World wrap ships for base tiles, markers, and lines; geometry drawn directly across the antimeridian (180 degrees) is an open item
- KML/GPX import works, but still in progress for full spec
- Pitch actually works up to 85 degrees, but not fully tested.