Goal
Experiment with skinning the OSM massing buildings for more realism in the Three.js diorama, instead of the current flat per-type colors.
Current state
src/world/Buildings.tsx renders one merged mesh with meshStandardMaterial + vertexColors (a solid color per building keyed by type). Terrain already uses the aerial drape as a texture; buildings do not.
Recommended approach (scalable)
Explicitly NOT recommended
Per-building photographic textures — no source, unscalable.
Design question to settle first
The diorama is a deliberate toy tilt-shift / miniature aesthetic ("a living tilt-shift diorama"). Photoreal façades may fight that look. Prototype on a few blocks and judge whether it enhances or cheapens the miniature vibe before rolling out city-wide — this is as much an art call as a technical one.
Goal
Experiment with skinning the OSM massing buildings for more realism in the Three.js diorama, instead of the current flat per-type colors.
Current state
src/world/Buildings.tsxrenders one merged mesh withmeshStandardMaterial+vertexColors(a solid color per building keyed by type). Terrain already uses the aerialdrapeas a texture; buildings do not.Recommended approach (scalable)
Explicitly NOT recommended
Per-building photographic textures — no source, unscalable.
Design question to settle first
The diorama is a deliberate toy tilt-shift / miniature aesthetic ("a living tilt-shift diorama"). Photoreal façades may fight that look. Prototype on a few blocks and judge whether it enhances or cheapens the miniature vibe before rolling out city-wide — this is as much an art call as a technical one.