Terrain mesh introduction

From FSDeveloper Wiki
Jump to: navigation, search

The real-life world is not flat,
it comprises mountains, valleys, rolling plains, etc.
i.e. topographical features.

These bumps, dips, and flat areas,
all need to be translated into a surface understood by the simulator.
i.e. A Digital Elevation Model, (DEM).


What Terrain Mesh IS

Terrain Mesh is the name given to the Digital Elevation Model, (DEM), that represents these topographical features.
The surface of the earth over which the user flies in the simulator, (or crashes into !).

What Terrain Mesh IS NOT

  • The picture overlaid on the ground, (see Resample).
  • The picture overlaid on water, (see Resample).
  • The objects placed on that surface, (see ADD_LINK_HERE).
  • The elevation of water bodies, (sea, lakes, rivers, streams), placed on that surface, (see ADD_LINK_HERE).


Think of a flat handkerchief with a grid of lines drawn on it, (mesh).


Lay the handkerchief on the surface of a desk.
All points on the grid have the same elevation, (i.e. they're at the same elevation as the surface of the desk).

Mesh 3D.jpg

Now lay that handkerchief over a collection of small objects sat on the desk.
you'll see the grid is distorted into bumps & dips by those objects.

If you then measured the elevation at each intersection of the grid, (relative to the desk surface),
you'd have a mesh of elevation data.

Convert that data into a digital format,
and you'll have a DEM.

DEM (Digital Elevation Model / Map)

DEM's are available in two main types -

  • DTM (Digital Terrain Model) - The bald earth model. The underlying terrain surface. DTM excludes all elevation data caused by - vegetation, buildings, and other cultural features.
  • DSM (Digital Surface Model) - The canopy model. DSM includes elevations caused by buildings, vegetation, and roads, as well as natural terrain features.


All scenery objects are placed relative to the mesh
but differ as to whether they are placed with an absolute Z value, (height AMSL),
or simply placed directly on or relative to the terrain, (height AGL).

Mesh data may be replaced with alternately-sourced mesh data,
so consideration should be given to whether scenery objects are placed absolute or relative to the terrain
and steps taken to avoid objects floating/sinking above/below the mesh.



In FS2004 and previous versions, mesh was "2.5D" or quasi 3 dimensional.
i.e. Latitude Y and Longitude X, but with vertical Z values,
extending upward from an infinite-plane of zero elevation based on a local origin.

Users couldnt truly fly around the globe, nor over the poles, but were able to fly continuously across it.
The simulator would continue to load data tiles across the world to give the illusion of flying around the earth.


FSX introduced a three-dimensional geoid, again based on a local origin, (reasonably relative-to-user),
which then renders curvature of the earth, subsequently displaying a 'relatively-true' horizon.

The geoid representation/implementation is supposedly optimized for the simulator's primary-market's population-centres, (with a quad-tree optimzed for 1:1 aspect ratio @ 45* latitude).

It is unknown/untested/unpublished just how accurately the FSX geoid addresses various IRL aspects
e.g. equatorial-bulge, (i.e. the gravitometric anomalies which affect local MSL, and subsequent in-simulation mapped elevations),
though Chimborazo's summit is modeled in FSX at 6,016.4 m, very-reasonably near to it's genuine elevation of 6,268.2 m, versus it's AMSL elevation of 4,123 m).

Users can zoom out to see the whole globe modelled.
This was termed 'round earth' in the marketing material and introduced some issues with scenery design.

Mesh Creation

It is not practical for the casual user to create their own mesh - The major proportion of mesh creation is, in fact, direct conversion of existing GIS data into a BGL

Conversion of mesh uses the resample tool which converts a number of common DTM formats into a Flightsim BGL

Other scenery elements which affect mesh

  • Flatten, (aka Airport Boundaries) - These override the mesh in the area covered by the polygon. They replace the height values in order to raise or lower the terrain to a defined, known level such as an airfield, ().
  • Water Polygons - Similar to a Flatten but with a water effect and information about slope added.
  • Vector Line data (i.e. Roads, Streams, etc.) These flatten the terrain underneath the line in a number of ways, (as defined in the terrain.cfg), including
    • Removing slope across the line, (i.e. Roads).
    • Raising the terrain under the line by a set amount (i.e. Railway).
    • Lowering it by a set amount (i.e. Streams).


Steve Greenwood's Mesh Overview

FSX Global Terrain by Adam Szofran