TerraGear: Difference between revisions

From FlightGear wiki
Jump to navigation Jump to search
(Refer to GIT repo for latest snapshot)
(→‎Related content: Add new guide)
 
(62 intermediate revisions by 29 users not shown)
Line 1: Line 1:
'''TerraGear''' is a collection of open-source tools and rendering libraries which can transform publically available GIS data in 3D representations (i.e. 3D models or 3D maps) of the earth for use in real time rendering projects. Terragear can import 3D data sets such as DEM terrain grids, 2D polygon data sets such as coastlines, city outlines, lake outlines, and 2D raster data sets such as the 1km NAOO land use/land cover data. It also has tools for generating realistic airports, runways, and lighting based on available FAA data.  
{{Hatnote|Not to be confused with [[TerraSync]], a tool to download scenery on-the-fly.}}


TerraGear is the primary tool used to generate the [http://www.flightgear.org/Downloads/scenery.html world wide scenery] for the [[FlightGear]] project.  
[[File:TerraGear The Hague wireframe.png|thumb|270px|A wireframe view of detailed [[CORINE]] and [[OSM]] scenery, generated by TerraGear.]]
'''TerraGear''' is a collection of open-source tools and rendering libraries which can transform publically available GIS data in 3D representations (i.e. 3D models or 3D maps) of the earth for use in real time rendering projects. TerraGear can import 3D data sets such as DEM terrain grids, 2D polygon data sets such as coastlines, city outlines, lake outlines, and 2D raster data sets such as the 1 km NAOO land use/land cover data. It also has tools for generating realistic [[airport]]s, runways, and lighting based on available FAA data.  


==Download==
TerraGear is the primary tool used to generate the [[scenery]] for the [[FlightGear]] project.  
* [http://mapserver.flightgear.org/git/gitweb.pl?p=terragear-cs Latest official source code release].
* Prerequisite: [http://plib.sourceforge.net/ plib] - portability libraries and scene graph. You need plib-1.8.5  to build TerraGear. (see also [[PLIB]])
* Prerequisite: [http://www.simgear.org/ SimGear] - simulation construction tools. You need [http://mapserver.flightgear.org/git/gitweb.pl?p=simgear-cs SimGear-CS] to build TerraGear. (see also [[SimGear]])


===Development===
Without terragear, it is possible to change Terrain '''textures''' but not terrain '''shapes'''. If you want to change the texture for cities, you change the materials file. If you want to change the coast line, you need terragear.
* Tarball of the latest [http://mapserver.flightgear.org/git/gitweb.pl?p=terragear-cs;a=snapshot;sf=tgz Bleeding edge GIT snapshot].
Check the material files in directory FGDATA/Material. Identify the material file that includes Montevideo, which is probably latin_american_cities.xml ([[Howto:Regional texturing]] and this page [[Procedural Texturing]]<ref>{{cite web
* [ftp://ftp.terragear.org/pub/terragear/Source/ Previous versions].
  |url    =  https://forum.flightgear.org/viewtopic.php?p=311143#p311143
  |title  = <nowiki> Re: Improving terrain realism </nowiki>
  |author =  <nowiki> ludomotico </nowiki>
  |date  =  May 25th, 2017
  |added  =  May 25th, 2017
  |script_version = 0.40
  }}</ref>


==Related content==
 
* [[Building Terragear]]
== Introduction ==
For a variety of reasons you might want to build terrain yourself, rather than downloading it from the available scenery on FlightGear. For instance, if you use [[WED]] to create or modify an airport layout, you might wish to see how that modified airport would look in the Scenery before deciding you're happy with the results. And normally, to see and use the airport in the scenery, it's necessary to submit the modifications to the FlighGear scenery staff and then wait untill the next update of the scenery of that area is available via [[TerraSync]] or in the [http://www.flightgear.org/download/scenery/ official FlightGear Scenery] build. If you can build terrain yourself, you can start using it right away.
 
Maybe the official scenery is too detailed for your slow machine, and you'd like to build terrain using a digital elevation model (DEM) with poorer resolution, to decrease the number of polygons and thus improve your framerates. Or maybe you've got a fantastically fast machine, and you want to build your own terrain using higher resolution vector data (vmap1, Tiger) to get better roads/rivers. For all these reasons learning how to use TerraGear is a good idea.
 
== Getting TerraGear ==
=== Using the download_and_compile.sh script (Linux distros using apt) ===
Get the script download_and_compile.sh if you don't already have it. Copy it into a specific directory, no need to be root.
{{#tag: syntaxhighlight |
wget {{fgmeta url|view=raw|path=download_and_compile.sh}}
mv download_and_compile.sh\?format\=raw download_and_compile.sh
chmod 755 download_and_compile.sh
./download_and_compile.sh SIMGEAR TERRAGEAR
| lang="bash"
}}
This will build SIMGEAR (pre-requisite) and TERRAGEAR properly, installing dependencies if necessary and you will be done for the TG compilation part of the process.
 
=== Pre-compiled builds ===
* [http://build.flightgear.org:8080/job/TerraGearGUI-Win/lastSuccessfulBuild/artifact/*zip*/archive.zip Latest Windows build], built by the [[FlightGear Build Server]].
 
:*[[TerraGear_Installation_for_Windows|Detailed Windows Installation Instructions]]
 
=== Source ===
The source is hold in a [[Git]] repository at SourceForge..
{{#tag: syntaxhighlight |
{{terragear clone|post=flightgear-terragear}}
| lang="bash"
}}
 
you have to use the stable branch called "scenery/ws2.0"!
{{terragear url|branch=scenery/ws2.0/~}}
 
== Compilation ==
=== Dependencies ===
* TerraGear
** [[SimGear]] - '''Not''' simgear-cs! (simgear-dev package)
*** SimGear can be compiled without OSG support thus eliminating many deps, like OSG. Use "-DSIMGEAR_HEADLESS=YES" for a minimal build.
** [http://www.cgal.org/ CGAL] - For high accuracy geometric calculations
** [http://www.gdal.org/ libgdal]
 
=== Building ===
cmake . [options] 
make install
<tt>cmake</tt> options:
-DCMAKE_PREFIX_PATH="/path/to/lib/install/prefix"
 
=== Platform specific ===
==== Debian ====
* [[Building FlightGear - Debian#TerraGear]]
==== Gentoo ====
* emerge -av terragear</tt>
See [[Building Flightgear - Gentoo]].
==== Ubuntu ====
* [[Building terragear in Ubuntu 910 (32- or 64-bit)]]
* [[TerraGear compilation - Ubuntu 14.04]]
 
== GUI Tool ==
A [[TerraGear GUI]] is available for those that would like to use TerraGear without knowing/using the command line options.
 
== Related content ==
* [[Using Terragear]]
* [[Using Terragear]]
* [[Using the Custom Scenery TerraGear Toolset]]
* [[Howto:Use TerraGear without wanting to kill yourself]]
* [[TerraGear CORINE]]
* [[TerraGear Documentation]]
* [http://api-docs.freeflightsim.org/terragear/ TerraGear API docs]


==External links==
{{Terra}}
* [http://www.terragear.org Official website]
{{Building}}
* [http://www.terragear.org/docs/scenery-tutorial/fg-scenery-tutorial.html FlightGear scenery tutorial]


{{Terra}}
[[Category:TerraGear]]


[[Category:Scenery enhancement]]
[[es:TerraGear]]
[[fr:TerraGear]]

Latest revision as of 18:20, 14 October 2021

A wireframe view of detailed CORINE and OSM scenery, generated by TerraGear.

TerraGear is a collection of open-source tools and rendering libraries which can transform publically available GIS data in 3D representations (i.e. 3D models or 3D maps) of the earth for use in real time rendering projects. TerraGear can import 3D data sets such as DEM terrain grids, 2D polygon data sets such as coastlines, city outlines, lake outlines, and 2D raster data sets such as the 1 km NAOO land use/land cover data. It also has tools for generating realistic airports, runways, and lighting based on available FAA data.

TerraGear is the primary tool used to generate the scenery for the FlightGear project.

Without terragear, it is possible to change Terrain textures but not terrain shapes. If you want to change the texture for cities, you change the materials file. If you want to change the coast line, you need terragear. Check the material files in directory FGDATA/Material. Identify the material file that includes Montevideo, which is probably latin_american_cities.xml (Howto:Regional texturing and this page Procedural Texturing[1]


Introduction

For a variety of reasons you might want to build terrain yourself, rather than downloading it from the available scenery on FlightGear. For instance, if you use WED to create or modify an airport layout, you might wish to see how that modified airport would look in the Scenery before deciding you're happy with the results. And normally, to see and use the airport in the scenery, it's necessary to submit the modifications to the FlighGear scenery staff and then wait untill the next update of the scenery of that area is available via TerraSync or in the official FlightGear Scenery build. If you can build terrain yourself, you can start using it right away.

Maybe the official scenery is too detailed for your slow machine, and you'd like to build terrain using a digital elevation model (DEM) with poorer resolution, to decrease the number of polygons and thus improve your framerates. Or maybe you've got a fantastically fast machine, and you want to build your own terrain using higher resolution vector data (vmap1, Tiger) to get better roads/rivers. For all these reasons learning how to use TerraGear is a good idea.

Getting TerraGear

Using the download_and_compile.sh script (Linux distros using apt)

Get the script download_and_compile.sh if you don't already have it. Copy it into a specific directory, no need to be root.

wget https://sourceforge.net/p/flightgear/fgmeta/ci/next/tree/download_and_compile.sh?format=raw
mv download_and_compile.sh\?format\=raw download_and_compile.sh
chmod 755 download_and_compile.sh
./download_and_compile.sh SIMGEAR TERRAGEAR

This will build SIMGEAR (pre-requisite) and TERRAGEAR properly, installing dependencies if necessary and you will be done for the TG compilation part of the process.

Pre-compiled builds

Source

The source is hold in a Git repository at SourceForge..

git clone git://git.code.sf.net/p/flightgear/terragear/ flightgear-terragear

you have to use the stable branch called "scenery/ws2.0"! https://sourceforge.net/p/flightgear/terragear/ci/scenery/ws2.0/~/tree/

Compilation

Dependencies

  • TerraGear
    • SimGear - Not simgear-cs! (simgear-dev package)
      • SimGear can be compiled without OSG support thus eliminating many deps, like OSG. Use "-DSIMGEAR_HEADLESS=YES" for a minimal build.
    • CGAL - For high accuracy geometric calculations
    • libgdal

Building

cmake . [options]  
make install

cmake options:

-DCMAKE_PREFIX_PATH="/path/to/lib/install/prefix"

Platform specific

Debian

Gentoo

  • emerge -av terragear

See Building Flightgear - Gentoo.

Ubuntu

GUI Tool

A TerraGear GUI is available for those that would like to use TerraGear without knowing/using the command line options.

Related content

  1. ludomotico  (May 25th, 2017).  Re: Improving terrain realism .