World Scenery 3.0 roadmap

Revision as of 19:12, 14 November 2020 by Stuart (talk | contribs)
This article is a stub. You can help the wiki by expanding it.
World Scenery 3.0
Started in 2019-Sep
Description New world-wide scenery
Contributor(s) Scott Giese
Richard Harrison
Stuart Buchanan
Status Active [1]


  See Virtual Planet Builder for the main article about this subject.

  Virtual Planet Builder (VPB) is OSG's terrain-database-building tool.

It loads GIS elevation data for a region, combines it with imagery and produces a spatially-balanced quadtree tiled database that can be navigated simply by loading the top-level file. All of the LOD Ranges are pre-configured and the DatabasePager automatically loads and unloads different segments of terrain without any supporting userspace code required. VPB can build terrain models ranging from a small area to the entire planet. These databases can be fluidly navigated at 60fps from outer space down to ground level with no interruptions. The terrain models are built of regular grid arrays with optional edge-skirts to conceal any cracks caused by adjacent LOD differences.

OpenScenGraph's Virtual Planet Builder/OSGDEM. Published by AlphaPixel, LLC.
(powered by Instant-Cquotes)


Initial rendering of Edinburgh scenery using a raster landclass and texture lookup for city, water and grass

Produce high-quality scenery using the best-known practices.

TerraGear becomes obsolete in favor of VPB.

OpenGL 3.3 Core Profile: WS3.0 will require us to eliminate the usage of the fixed-function pipeline.
Shader-based Rendering: All of the terrain renderings will be done via GLSL shaders.
OSG Core: OpenSceneGraph will require targeting of the OpenGL Core Profile.

WS3.0 will continue to cooperate with osm2city.

Easy upgrade: Airport layouts will be generated in real-time. Apt.dat will continue to be the primary source for airport layouts. Airports will be draped over the terrain. This eliminates the need to cut airport layouts into the underlying terrain.


Data Sources

Global Land Cover
Natural Earth


As of 11/2020, Stuart pushed a commit that renders VirtualPlanetBuilder output in FlightGear via the Effects framework.

Below is a screenshot showing Edinburgh using WS3.0:

While graphically reminiscent of FlightGear circa 2002 and not particularly exciting, this is another step towards WorldScenery 3.0.

One of the key differences of WS3.0 from the current scenery is that the terrain mesh only consists of elevation data. The landclass information is encoded in a texture rather than the mesh itself. So we can have much more detailed landcover information without massively increasing the size of the mesh.

In the linked picture, a simple fragment shader is used to look up the landclass in the texture and use that to identify whether to use water, grass or city textures.[2]

As of 08/2020, it's work in progress, and not ready yet. A very primitive implementation/hack was checked in, but it has limited usefulness in its current state. It's of no use at the moment unless you build some terrain via VPB to play with. Progress is slow at the moment due to limited time. [3]

To use VPB scenery:

  • Create each 1x1 degree separately with a filename of "WS_[E|W]n[N|S]m.osgb". Note that this different to the naming format for terrasync and that the numbers are not "0" padded. E.g. "WS_W3N56.osgb"
  • Put the files (along with their subdirectories containing the sub-tiles!) in a "vpb/" subdirectory of a Scenery directory. E.g.
    • Scenery/Objects
    • Scenery/vpb
  • Building FlightGear with the same version of OSG as you built the scenery with VPB (3.6.X recommended)
  • Start FlightGear with "--compositor=Compositor/als --prop:/sim/rendering/camera-group/lod=1.0 --prop:/scenery/use-vpb=true"
  • Set /sim/rendering/camera-group/lod to adjust the LOD scaling (at what distance different tile levels are loaded).

Proof of Concept  

  • VPB   Done
  • osgOcean   Done
  • osgVegetation   Done
  • Generate terrain for Hawaii   Done
  • Hack Hawaii VPB into FG   Done


  • Core Profile:   Done
  • GLVND Support:   Done
  • glTF Plugin Support:   Ongoing

N00-N60 lat  
Africa Land Coverage  
Natural Earth  
Ocean Fill  

Standard-Fidelity - 90m SRTMGL3 - 100m Global Land Cover

Northern Hemisphere: 152.3 GB

Southern Hemisphere: 57.4 GB

Virtual Planet Builder  

  • Procure Demographic Data: SRTMGL3.003   Paused
    • Northern:  
    • Southern:  
  • Process through VPB   Paused
    • Northern:  
    • Southern:  
  • Ocean   Done
    • Northern:  
    • Southern:  

High-Fidelity - 30m SRTMGL1 - Best Available Land Cover

Virtual Planet Builder  

  • Procure Demographic Data: SRTMGL1.003   Paused
    • Northern:  
    • Southern:  
  • Process through VPB   Paused
    • Northern:  
    • Southern:  

News / Updates

The northern hemisphere, up to N60, has been completed. The southern hemisphere, above S56, has been completed. SRTM data was not captured above N60 and below S56, so alternative data sources need to be procured.

Stuart has made good progress with the procedure needed to convert apt.dat into an airport object. Our goal is to utilize this to project/drape the airport layout over the terrain. This will enable localized edits of airports without requiring us to generate another world scenery build.

Oceans are complete.






Standard-Fidelity Gallery
WS3 Terrain Mesh  
Land Coverage  
Natural Earth  
Natural Earth  

For the experimental runtime generated mesh/landclassing engine - which may become WS3.0 - see Experimental terrain engine.