0123456789012345678901234567890123456789
%

About company

Careers

Tool / T2

Design at the speed of code: command palette, panes, hotkeys and real CSS in one workspace.

3dmap

3dmap is a volumetric-data visualization module for maps. We looked at what was already out there, weren't happy with any of it, and built the whole thing from scratch, our own way.

Year2022
Focus / KeywordsWebGL, Raymarching, GLSL, GIS
ServicesReal-time volumetric rendering and GPU particle simulation for geospatial data — a raymarched volume layer and a wind-flow particle system, built from scratch and running entirely in the browser.

Raymarching

For every pixel, a fragment shader casts a ray through the volume and samples it at a series of points along the way. Those samples are averaged into a single visibility value, which sets that pixel's final color and opacity.

GRIB texture

The underlying data lives in a 3D texture handed to the shader, generated by converting volumetric source data supplied in the GRIB format.

It's how 3dmap renders things like methane or CO2 concentration over a given historical period, straight on top of the map.

Wind flow

Besides the volumetric layer, 3dmap can also render wind as a live particle simulation. GRIB velocity data gets baked into a texture that maps directly onto the map's coordinates — every particle reads its direction from the texture pixel at its current position and steps accordingly, tracing out the vector field frame by frame.

Shaping the volume

Getting there took a fair amount of prototyping — testing different volume forms and shading before landing on the raymarched look that made it into the final module.

Result

A from-scratch WebGL module for visualizing volumetric and flow data on maps — built because nothing off the shelf felt right. Wind, concentration, or any other third-party dataset can now be rendered as a real 3D volume, live in the browser.