Saved scenes — click to open, or import a previously exported file.
Scenes you save here are stored in your browser's local storage on this device. They persist across sessions on this browser, but they are not backed up to a server or synced to other devices.
Browser storage can be cleared by clearing site data or cache, using private / incognito mode, browser extensions that wipe storage, or switching browsers, devices, or accounts.
For a permanent record of your work:
.json file. Save it anywhere — your computer, a cloud drive, or a shared workspace.For projects you want to preserve, exporting after each major change is the safest practice.
No saved scenes yet — click the floppy-disk icon next to the location to save your current scene.
Tampa Bay 3D Sandbox is an interactive coastal flood visualization tool built for the Tampa Bay region. It allows users to explore flood risk, simulate sea level rise and storm surge scenarios, and build adaptation strategies in a real-time 3D environment.
The application combines high-resolution terrain data, building footprints, flood zone boundaries, and tidal information to create a comprehensive picture of coastal vulnerability. Users can switch between multiple view modes, toggle data layers, and export their work as images, videos, or 3D models.
Developed by the Tampa Bay Regional Planning Council (TBRPC).
Open the Layers panel from the toolbar (or press L). It contains the basemap picker plus toggles for every data layer.
Click the checkbox next to a layer name to add or remove it from the map. Layers with additional detail (legends, opacity sliders, sub-options) expand via the chevron on the right.
Available layers include:
Sea-level-rise, tide and storm-surge water levels live in the separate Simulate panel (S), not Layers.
Active layers are shown in the layer panel with a checked checkbox. The order of layers in the panel reflects their draw order on the map.
When multiple flood layers are active simultaneously, they blend together to show compound risk. You can adjust individual layer opacity using the slider that appears beneath each active layer.
To quickly hide all layers, use the master toggle at the top of the layer panel.
The legend appears automatically when data layers are active. It displays color ramps and symbology for each visible layer, helping you interpret the map.
The legend updates dynamically as you toggle layers on and off. When exporting an image, the legend is embedded in the output.
Use the Inspect tool (I) to click on any object in the scene and view its properties. For buildings, this includes address, footprint area, and elevation data. For flood zones, it shows the zone designation and base flood elevation.
The information panel appears as a popup near the clicked location and can be dismissed by clicking elsewhere or pressing Escape.
3D Footprints drape simplified building forms over the terrain so the diorama reads as a real place rather than an abstract heightfield. They give the scene spatial context — "the flood is at the steps of this building" — without claiming engineering-grade geometry.
height or building:levels); otherwise a type-aware estimate (residential ~3 m / floor, commercial ~4 m / floor — see the inspect card for the value used at a specific building).Source: OpenStreetMap contributors via the Overpass API.
The Ground Elevation layer colour-ramps the terrain by height above sea level (NAVD88), so low-lying parcels read as cooler colours and higher ground as warmer. It's the single fastest way to identify where water will pool first as levels rise.
Lower elevations are generally more prone to flooding, but standing water also depends on drainage, soil saturation, and tide stage — treat the ramp as one input among several, not as a flood map by itself.
Source: USGS 3D Elevation Program (3DEP) via AWS Terrain Tiles, referenced to NAVD88.
The FEMA Flood Zones layer overlays the regulatory flood hazard map for the loaded area. It's the same map used by lenders, insurers, and floodplain administrators to decide whether a property requires flood insurance and at what rate.
Source: FEMA National Flood Hazard Layer (NFHL). Data is current as of the most recent NFHL release for the loaded county.
The Water Level layer raises a flat water plane across the entire diorama to the chosen elevation. Drag the slider, type a value, or pick a preset (low / mean / high / king tide; future SLR; storm-surge categories) to see which parcels submerge at each level.
+5 ft means "5 ft above NAVD88" everywhere in the scene.Water rises uniformly at the chosen elevation. The simulation deliberately does not account for:
Best for sketch scenario planning, stakeholder conversations, and communicating coastal risk visually — not for engineering or insurance decisions.
Sources: NOAA Tidal Datums (today's tides), NOAA Sea Level Rise Technical Report (future projections, CSAP 2025 endorses the Intermediate-High scenario), and NOAA SLOSH MOM (storm-surge categories).
Press T to toggle between a top-down 2D view and an angled 3D perspective. In top-down mode, the camera looks straight down with no tilt, which is useful for measuring areas and comparing layer boundaries.
The Mode toolbar also offers Diorama, Cross-Section, and Immersive presets that adjust the camera, clipping, and scene presentation.
The application supports light and dark base tones for the terrain and buildings. Use the Controls panel to switch color modes. Dark mode is the default and provides better contrast for flood visualization overlays.
The basemap picker now lives at the top of the Layers panel (L). Three compact pills:
The active pill gets an orange outline. Switching basemaps preserves your current camera position and active layers.
Activate Measure with Y (yardstick) or via the toolbar. The Measure window has two modes:
Toggle between ft and m with the unit pill in the HUD. Use Undo to drop the last measurement, Clear to wipe all of them. Escape cancels the in-progress segment without affecting completed measurements.
The Time of Day slider in the Simulate panel previews the diorama under the sun position for the chosen hour. Move it to change the lighting direction, shadow angle, and sky tone — useful for evaluating how a site reads at sunrise, midday, or golden hour, and for stakeholder presentations that mimic a specific time on the day of a meeting or event.
The small pill to the right of the readout flips between 12h (e.g. 2:30 PM) and 24h (e.g. 14:30) display. The slider itself is always anchored to 24-hour time internally so dragging is unitless — only the readout text changes.
Time of Day is a visual control. It does not drive water level, tides, or weather conditions — those have their own controls. It's a presentation tool, not a simulation parameter.
The Simulate panel lets you preview flooding under different time-of-day, weather, and water-level conditions on the diorama. Open it from the wave icon in the top toolbar.
Water rises uniformly at the chosen elevation. The simulation deliberately does not account for:
Best for sketch scenario planning, stakeholder conversations, and communicating risk visually — not for engineering or insurance decisions. See FEMA NFHL ↗ and NOAA SLOSH ↗ for authoritative data.
Cross-Section is a view mode, not a tool button: switch to it from the Mode dropdown in the top toolbar (or via the “Explore in Cross-Section” CTA inside the Simulate panel).
You'll be prompted to draw the cut line by clicking two points on the diorama. The view then locks to a side-on profile with elevation data, so you can see how flood levels interact with terrain at that exact slice.
Once the cut line is drawn the camera rotates to look perpendicular to it. You can still pan, zoom, and tilt to inspect the profile:
The white vertical strip on the left is the elevation ruler. Values are measured against NAVD88 (see the footnote at the bottom of the legend panel). Click the ft / m pill at the bottom of the ruler to switch units — every readout in the section panel honours the toggle.
Each labelled line on the chart corresponds to a tide, sea-level-rise, or surge scenario in the legend below. Click the row in the legend to show or hide that band; the line above the chart fades/un-fades in sync. Click a line's label directly to animate the water plane up to that elevation — the slider, the value readout, and the legend all update together.
The Quick scenarios row above the description offers one-click presets like "Current tide" that resolve to combined SLR + surge + tide values without you having to click each component.
The water-level handle on the ruler is grabbable. Drag it up or down to scrub the water surface to any elevation between the cap (~9 m / ~30 ft NAVD88, the realistic Tampa Bay worst-case ceiling) and the bay's deepest bathymetry. The handle pill shows the live value as you drag.
While in Cross-Section mode the Add Image button on the legend panel lets you drop reference imagery from the Image library (Plan or Section view) onto the cut overlay for tracing or comparison.
Use Ctrl+1…9 to save your current section view (including the cut line + which layers are toggled), then 1…9 to jump back to it. Recalling a section bookmark from another mode automatically switches you into Cross-Section view first.
The Inspect tool (I) enables point-and-click querying of map features. Click on buildings, flood zones, or terrain to see attribute data in a popup.
Building inspections show estimated floor elevations, footprint area, and structure type when available. Flood zone inspections show FEMA zone designations and base flood elevations.
Toggle the Build dock with B. The dock holds three asset libraries:
Saved scenes (Ctrl+1…9 bookmarks, named designs, share-link URLs, QR codes) all retain placed objects, draw shapes, simulate state, and basemap choice.
Click Share in the top bar to copy a room link. Anyone who opens that link joins the same live session — cursors, selections, placed objects, water levels, and view changes all sync in real time.
Sessions are ephemeral — closing the last tab tears the room down. Use Save Design (or Export Scene (.json)) to persist the result.
Click Export in the top-right to open the menu:
The orange Share button is a separate, one-click action — it copies the live room URL so collaborators can join your session in real time (see Multiplayer & Real-Time Editing).
Scenes also autosave to your browser. Use Save Design to name + store one in the local Scene Gallery, or My Designs to load / rename / delete existing ones. Use Export Scene (.json) for a portable file you can move between machines or browsers.
This application integrates data from multiple authoritative sources. Each source is linked to its primary online location for further reading or current data.
Data is provided as-is for research and demonstration purposes. Always consult primary sources for planning or regulatory decisions.
Built by the Tampa Bay Regional Planning Council — see tbrpc.org/shorelines for related coastal-resilience tooling.
The Low Tide, Average Water Level, High Tide, and King Tide elevations shown in the cross-section view come from NOAA Tides & Currents for the tide-gauge station nearest to the loaded location. Values are converted to feet referenced to NAVD88 using the station's published NAVD offset.
Source: tidesandcurrents.noaa.gov/datums.html — the ⓘ link in the legend opens the page for the actual station this scene is using.
Datums are fetched live each session: see src/data/datumFetcher.js.
The 2040 / 2050 / 2060 / 2070 High Tide and King Tide elevations are projections built on top of today's NOAA tidal datums by adding the local sea-level-rise increment recommended by the Tampa Bay Climate Science Advisory Panel (CSAP).
CSAP 2025 endorses the NOAA Intermediate-High scenario for Tampa Bay planning. That scenario implies:
Each projected datum on the chart is computed as today's MHHW (or HAT) + scenario increment — so a station with MHHW = 0.8 ft NAVD88 today shows 2050 High Tide at ~2.2 ft NAVD88.
Sources:
SLR increments are coded in src/data/datumFetcher.js under SLR_2040, SLR_MID_TERM, SLR_2060, SLR_LONG_TERM.
The Category 1–5 Surge bands are based on NOAA's SLOSH MOM (Sea, Lake, and Overland Surges from Hurricanes — Maximum of MEOWs) model. SLOSH MOM is the standard surge guidance used by emergency managers across the U.S. Gulf and Atlantic coasts.
For each storm category, SLOSH runs thousands of synthetic hurricanes of that intensity across a basin (here: the Tampa Bay basin), then takes the maximum surge height predicted at each grid cell across all of those runs — a worst-case envelope rather than a single storm forecast. That's why each band on the chart is a range (e.g. Category 3 ≈ 7–11 ft) rather than a single value: the range reflects spatial variability across Tampa Bay.
These ranges are static reference bands — they're not the result of a per-location SLOSH grid query (which would require a per-pixel SLOSH MOM raster). They represent the typical surge envelope for the Tampa Bay basin as published by NOAA NHC and the Florida Department of Emergency Management.
Source: NOAA National Storm Surge Hazard Maps (SLOSH MOM viewer)
The geologic stack you see when you press D — Subsurface Sands, Surficial Aquifer, Confining Layer, and Floridan Aquifer — is assembled from a mix of federal and state hydrogeology datasets. This page explains what each one contributes.
Three federal sources drive the unit tops, the surface they sit beneath, and the live water table:
scripts/preprocess-ds926.mjs) and bilinearly interpolated at the loaded location. pubs.usgs.gov/ds/092672019, ft below land surface). Because this is point data, the reading represents the water table at that well — distance + freshness are surfaced in the legend tooltip so confidence is visible. waterdata.usgs.gov/nwissrc/data/fdepHydroFetcher.js for the async merge. floridadep.gov/fgs