pelicanmapping/osgearth
Free3D Maps & Terrain SDK (C++)
FreeFree tier
About pelicanmapping/osgearth
osgEarth is an open-source C++ SDK that adds geospatially accurate 3D maps to applications. Built on top of OpenSceneGraph and GDAL, it delivers high-performance terrain and map rendering with support for a wide range of geospatial data formats (e.g., GeoTIFF, TMS, OpenStreetMap) and map projections. The SDK includes command-line viewers like osgearth_imgui (with ImGui) and osgearth_viewer, reads map configurations from XML 'earth files', and integrates easily into CMake-based projects. It is licensed under the MIT license and maintained by Pelican Mapping.
Key Features
Geospatially accurate 3D map rendering for C++ applications
Built on OpenSceneGraph and GDAL for high-performance terrain and map visualization
Supports myriad geospatial data formats (GeoTIFF, TMS, OpenStreetMap, etc.) and map projections
Command-line viewers: osgearth_imgui (with GUI) and osgearth_viewer (no GUI)
Map configuration via XML 'earth files'
Integrates with CMake projects via find_package and target_link_libraries
Available via vcpkg package manager
Open source under MIT license, maintained by Pelican Mapping
Pros & Cons
Pros
- Open source with permissive MIT license
- High-performance rendering using OpenSceneGraph
- Supports a wide variety of geospatial data formats and projections
- Active development and community (1.8k stars, 845 forks on GitHub)
- Easy integration into existing C++ projects via CMake or vcpkg
- Free to use for any purpose
Cons
- Limited to C++ development; no direct bindings for other languages
- Requires familiarity with OpenSceneGraph and geospatial concepts
- No built-in graphical user interface (viewers are CLI-based; osgearth_imgui provides ImGui)
- Documentation and examples may be sparse for beginners
Best For
Adding 3D terrain and map views to C++ desktop applicationsGeographic information system (GIS) visualizationSimulation and training environments with accurate terrainOpenStreetMap-based 3D mappingCustom geospatial data rendering and analysis
FAQ
What is osgEarth?
osgEarth is an open-source C++ SDK that adds geospatially accurate 3D maps to your application. It builds on OpenSceneGraph and GDAL for high-performance terrain and map rendering.
How can I install osgEarth?
You can install the latest version from vcpkg using: vcpkg install osgearth:x64-windows or vcpkg install osgearth[tools]:x64-windows for tools. You can also build it yourself following instructions in the repository.
What license does osgEarth use?
osgEarth is released under the MIT license.
How do I integrate osgEarth into my project?
Use find_package(osgEarth CONFIG REQUIRED) in CMake and link your target with osgEarth::osgEarth. Example code is provided in the repository.