Path-traced terrain and cartography for Python.
Rust + WebGPU underneath. Real elevation data in, print-resolution maps out.
Mount Shasta, path-traced with global illumination and terrain shadows.
Drag to orbit it live › · USGS 3DEP elevation · 23 cloud-free Sentinel-2 composites
pip install forge3dOptional extras
pip install "forge3d[jupyter]" # notebook widget support
pip install "forge3d[datasets]" # on-demand sample datasets
pip install "forge3d[all]" # everythingimport forge3d as f3d
dem_path = f3d.fetch_dem("rainier")
with f3d.open_viewer_async(terrain_path=dem_path, width=1440, height=900) as viewer:
viewer.set_z_scale(0.1)
viewer.set_orbit_camera(phi_deg=28, theta_deg=49, radius=5400, fov_deg=42)
viewer.set_sun(azimuth_deg=302, elevation_deg=24)
viewer.snapshot("rainier.png", width=1920, height=1080)fetch_dem pulls the elevation model, the viewer opens a real window you can orbit,
and snapshot writes the frame at whatever resolution you ask for.
Every map below is rendered end to end by forge3d — titles, legends and scale bars included. Nothing here was hand-edited or composited in another tool.
![]() Lyon, LOD2 buildings CityGML extrusion over RGE ALTI terrain |
![]() Egypt, population GHSL R2023A density over shaded relief |
![]() France, climate TerraClimate temperature × precipitation |
![]() Iberia, land cover 2024 — Sentinel-2 at 10 m classified over terrain, legend composed in-engine |
![]() Germany, hydrology — HydroSHEDS rivers and lakes over a hypsometric DEM |
Türkiye, population density — a million WorldPop 2020 cells extruded on a log scale, labelled and lit in a single pass
The renders above are downsampled for this page. Full-resolution masters — up to 7200×7200 — are on the gallery.
| Terrain | Interactive viewing via open_viewer_async() and ViewerHandle; snapshots from GeoTIFF or numpy DEMs; clipmaps for large regions |
| Rendering | Path tracing, PBR materials, subsurface scattering, water and reflections, cloud and contact shadows, AOV and EXR output |
| Data | COG streaming, CRS helpers, LAZ/COPC/EPT point clouds, 3D Tiles, GeoJSON, CityJSON, on-demand sample datasets |
| Cartography | Raster and vector overlays, labels with halo and occlusion, graticules, Legend, ScaleBar, NorthArrow, MapPlate |
| Offscreen | Scene, Session, TerrainRenderer and TerrainRenderParams for headless and batch work |
| Output | PNG and PNG16, SVG and PDF vector export, scene bundles, notebook widgets |
MapPlate composition, vector export and the building import pipelines are Pro
features; set a key with forge3d.set_license_key(...) to unlock them.
- Quickstart — install, first viewer session, first overlay, first notebook widget
- Feature Map — repo-wide overview of the supported workflows
- Tutorials — guided GIS and Python tracks
- Gallery — finished recipes at full resolution
- API Reference — the full public Python surface
The open-source core is released under Apache-2.0 OR MIT. Pro-gated features require a commercial license key.






