Skip to main content

Overview

deck.gl v9 WebGPU partially supported

This module provides a suite of geospatial layers for deck.gl.

caution

The deck.gl-community repository is semi-maintained. One of its goals is to collect and preserve valuable deck.gl ecosystem code that does not have a dedicated home. Some modules may no longer have dedicated maintainers, so responses to issues are not guaranteed.

Installation

npm install @deck.gl-community/geo-layers

Background

This module exports geospatial deck.gl layers developed by the community.

Wind showcase

Work in progress

The wind-layer API and historical showcase are experimental. ParticleLayer, filled arrows, and station-triangulated terrain are verified on WebGL2 and WebGPU. The original image-derived mountain terrain remains WebGL2-only because upstream TerrainLayer does not yet support WebGPU.

The wind showcase guide recreates Nicolas Belmonte's original deck.gl wind showcase using the original 72-hour forecast, smoothed three-dimensional mountain terrain, directional arrows, and up to one million GPU-animated particles.

import {
createWindField,
parseWindData,
ParticleLayer,
WindLayer
} from '@deck.gl-community/geo-layers';

const frames = parseWindData(weatherBuffer, stations.length);
const windField = createWindField(stations, frames);

const layers = [
new WindLayer({id: 'wind-arrows', windField, time}),
new ParticleLayer({
id: 'wind-particles',
windField,
time,
numParticles: 100_000
})
];

Create and share the wind field once; advance time without rebuilding the station triangulation, weather textures, or GPU particle buffers.

API Reference

Examples

  • Wind Map recreates Nicolas Belmonte's original deck.gl wind showcase using its original 72-hour station forecast and imported, reusable geo-layers.
  • SharedTile2DLayer example demonstrates one shared loaders.gl TileSource feeding multiple SharedTile2DLayers across multiple views. It also shows shared SharedTileset2D cache stats rendered through SharedTileset2D.stats and uses TileGridLayer to visualize tile loading.