Reconstructions are interpretive and deliberately modest; hotspots explain what is known and what is conjecture.
Tap to walk · drag to look · pinch to zoom
Tap anywhere on the map to travel there · gold dots are doorways
Sound
All sound is synthesized live: tanpura drone, bansuri-like flute, tabla/mridanga-like drums, birds, crickets, water, wind and more.
How to explore
Mouse/keyboard: click to walk there, drag to look, WASD / arrows to move, Shift to run, F fly, V view mode, M map, Space/E up, Q/C down, wheel zooms.
Touch: tap the ground to walk there (the route avoids walls); tap a building or its doorway to walk inside. Drag to look, pinch to zoom. A big Enter / Exit button appears near doorways. ↩ Back out leaves a building or steps back. 👁 cycles first person / third person / overhead map. 🕹 turns on the optional joystick (left side). Tap the minimap (or ⤢ for a large map) to travel.
Tap the gold i markers for history notes. 🎬 plays a narrated flyover. The slider sets the time of day.
Quality adapts automatically; choose Low/Med/High to override.
Photoreal textures (Med/High): scans from Poly Haven, all CC0 (public domain):
Clay Plaster (Amal Kumar)
White Plaster Rough 01 (Rob Tuytel)
Dry Ground 01 (Rob Tuytel)
Withered Grass (Charlotte Baglioni)
Damp Sand (eye-candy.xyz)
Weathered Planks (Dimitrios Savva, Dario Barresi)
Thatch Roof Angled (Dimitrios Savva, Rob Tuytel)
Old Sandstone 02 (Dimitrios Savva)
Shrub 02 model (Rico Cilliers)
Skies: tonemapped from the HDRIs Qwantani Late Afternoon (Pure Sky) and Kloofendal 48d Partly Cloudy (Pure Sky) by Greg Zaal and Jarod Guest
The Harappan (28×14×7 cm) and Gupta brick textures are custom: generated in code, with surface grain taken from the CC0 Clay Plaster and Dry Ground scans. Everything else, including people, animals and all the sound, is procedural. Three.js (MIT).