Did you ever want to fly a plane yourself, but lacked the money or ability to do so? Are you a real pilot looking to improve your skills without having to take off? Do you want to try some dangerous maneuvers without risking your life? Or do you just want to have fun with a more serious game without any violence? If any of these questions apply to you, PC flight simulators are just for you.
You may already have some experience using Microsoft’s © Flight Simulator or any other of the commercially available PC flight simulators. As the price tag of those is usually within the $50 range, buying one of them should not be a serious problem given that running any serious PC flight simulator requires PC hardware within the $1500 range, despite dropping prices.
With so many commercially available flight simulators, why would we spend thousands of hours of programming and design work to build a free flight simulator? Well, there are many reasons, but here are the major ones:
The points mentioned above form the basis of why we created FlightGear. With those motivations in mind, we have set out to create a high-quality flight simulator that aims to be a civilian, multi-platform, open, user-supported, and user-extensible platform. Let us take a closer look at each of these characteristics:
At present, there is no other known flight simulator – commercial or free – supporting such a broad range of platforms.
The GPL is often misunderstood. In simple terms it states that you can copy and freely distribute the program(s) so licensed. You can modify them if you like and even charge as much money as want to for the distribution of the modified or original program. However, when distributing the software you must make it available to the recipients in source code as well and it must retain the original copyrights. In short:
The full text of the GPL can be obtained from the FlightGear source code or from http://www.gnu.org/copyleft/gpl.html.
Without doubt, the success of the Linux project, initiated by Linus Torvalds, inspired several of the developers. Not only has Linux shown that distributed development of highly sophisticated software projects over the Internet is possible, it has also proven that such an effort can surpass the level of quality of competing commercial products.
Fig. 1: FlightGear under UNIX: Bad approach to San Francisco International - by one of the authors of this manual…
In comparison to other recent flight simulators, the system requirements for FlightGear are not extravagant. A medium speed AMD Athlon64 or Intel P4, even a decent AMD Athlon/K7 or an Intel PIII should be sufficient to handle FlightGear pretty well, given you have a proper 3D graphics card.
One important prerequisite for running FlightGear is a graphics card whose driver supports OpenGL. If you don’t know what OpenGL is, the overview given at the OpenGL website
says it best: “Since its introduction in 1992, OpenGL has become the industry’s most widely used and supported 2-D and 3D graphics application programming interface (API)...”.
FlightGear does not run (and will never run) on a graphics board which only supports Direct3D/DirectX. Contrary to OpenGL, Direct3D is a proprietary interface, being restricted to the Windows operating system.
You may be able to run FlightGear on a computer that features a 3D video card not supporting hardware accelerated OpenGL – and even on systems without 3D graphics hardware at all. However, the absence of hardware accelerated OpenGL support can bring even the fastest machine to its knees. The typical signal for missing hardware acceleration are frame rates below 1 frame per second.
Any modern 3D graphics featuring OpenGL support will do. For Windows video card drivers that support OpenGL, visit the home page of your video card manufacturer. You should note that sometimes OpenGL drivers are provided by the manufacturers of the graphics chip instead of by the makers of the board. If you are going to buy a graphics card for running FlightGear, an NVIDIA GeForce card is recommended, as these tend to have better OpenGL support than AMD/ATI Radeon. 256MB of dedicated graphics memory will be more than adequate - many people run FlightGear happily on less.
To install the executable and basic scenery, you will need around 500 MB of free disk space. In case you want/have to compile the program yourself you will need about another 500 MB for the source code and for temporary files created during compilation. This does not include the development environment, which will vary in size depending on the operating system and environment being used. Windows users can expect to need approximately 300 MB of additional disk space for the development environment. Linux and other UNIX machines should have most of the development tools already installed, so there is likely to be little additional space needed on those platforms.
For the sound effects, any capable sound card should suffice. Due to its flexible design, FlightGear supports a wide range of joysticks and yokes as well as rudder pedals under Linux and Windows. FlightGear can also provide interfaces to full-motion flight chairs.
FlightGear is being developed primarily under Linux, a free UNIX clone (together with lots of GNU utilities) developed cooperatively over the Internet in much the same spirit as FlightGear itself. FlightGear also runs and is partly developed under several flavors of Windows. Building FlightGear is also possible on a Mac OS X and several different UNIX/X11 workstations. Given you have a proper compiler installed, FlightGear can be built under all of these platforms. The primary compiler for all platforms is the free GNU C++ compiler (the Cygnus Cygwin compiler under Win32).
If you want to run FlightGearunder Mac OS X, you need to have Mac OS X 10.4 or higher. Minimum hardware requirement is either a Power PC G4 1.0GHz or an Intel Mac, but We suggest you have MacBook Pro, Intel iMac, Mac Pro, or Power Mac (Power PC G5) for comfortable flight.
It is recommended that you run the latest official release, which are typically produced annually, and which are used to create the the pre-compiled binaries. It is available from
If you really want to get the very latest and greatest (and, at times, buggiest) code, you can clone the sources at
to get the recent code. A detailed description of how to set this up for FlightGear can be found at
Historically, FlightGear was based on a flight model it inherited (together with the Navion airplane) from LaRCsim. As this had several limitations (most importantly, many characteristics were hard wired in contrast to using configuration files), there were several attempts to develop or include alternative flightmodels. As a result, FlightGear supports several different flight models, to be chosen from at runtime.
It is even possible to drive FlightGear’s scene display using an external FDM running on a different computer or via named pipe on the local machine – although this might not be a setup recommended to people just getting in touch with FlightGear.
There is little, if any, material in this Guide that is presented here exclusively. You could even say with Montaigne that we “merely gathered here a big bunch of other men’s flowers, having furnished nothing of my own but the strip to hold them together”. Most (but fortunately not all) of the information herein can also be obtained from the FlightGear web site located at
The FlightGear Manual is intended to be a first step towards a complete FlightGear documentation. The target audience is the end-user who is not interested in the internal workings of OpenGL or in building his or her own scenery. It is our hope that someday there will be an accompanying FlightGear Programmer’s Guide a FlightGear Scenery Design Guide, describing the Scenery tools now packaged as TerraGear; and a FlightGear Flight School package.
We kindly ask you to help us refine this document by submitting corrections, improvements, suggestions and translations. All users are invited to contribute descriptions of alternative setups (graphics cards, operating systems etc.). We will be more than happy to include those in future versions of The FlightGear Manual (of course not without giving credit to the authors).
Pre-compiled binaries for the latest release are available for
To download them go to
and follow the instructions provided on the page.
Detailed FlightGear scenery is available for the entire world, allowing you to fly everywhere from the Himalaya mountains to rural Kansas. The FlightGear base package contains scenery for a small area around San Francisco, so to fly elsewhere you will need to download additional scenery.
Each piece of scenery is packaged into a compressed archive, or tarball, in a 10 degree by 10 degree chunk. Each tarball is named after the 10x10 degree chunk it represents, for example w130n50.tgz.
You can download scenery from a clickable map here:
Alternatively, you can support the FlightGear project by purchasing a complete set of scenery for the entire world from here:
Once you have downloaded the tarball onto your computer, you need to find the Scenery directory of your FlightGear installation.
To install the scenery, uncompress the tarball into the Scenery directory. Most operating system provide tools to uncompress tarballs. If you cannot uncompress the tarball, install an extractor program such as 7-zip (http://www.7-zip.org/).
Note that you should not decompress the numbered scenery files inside the tarball like 958402.gz - this will be done by FlightGear on the fly.
Once you have uncompressed the tarball, the Terrain and Objects directories will contain additional sub-directories with your new scenery inside.
To use the new scenery, simply select a starting airport within the new scenery. If you are using the FlightGear Launcher, you will need to press the Refresh button before you select your airport.
If you are using Windows Vista or Windows 7, you may find that Windows installs downloaded scenery (and aircraft) to your Virtual Store:
c:\Users\(Your Name)\AppData\Local\VirtualStore\Program Files\FlightGear\Scenery
If it does this, you need to copy the Terrain and Objects directories manually to your real FlightGear Scenery directory as described above.
You may install the downloaded scenery data and aircraft using the GUI launcher. Pressing Install Add-On data on the Advanced Features » Others tab opens up the file browser window. Selecting one or more scenery data files will install the scenery data into /Applications/FlightGear.app/Contents/Resources/data/Scenery. Acceptable formats for the scenery data are one of zip, tar.gz, tgz, tar, and extracted folder. If the installation via the GUI launcher failure for some reason, you still have an alternative way to install the data. Opening the data folder by pressing “Open data folder” on the Others tab will pop up an Finder window for the data folder. Dragging an aircraft folder to data/Aircraft folder (or a scenery folder to data/Scenery folder) under the data folder will get the job done.
If you would prefer to keep your downloaded scenery separate from the core installation, you can do so by setting your FG_SCENERY environment variable.
This is where FlightGear looks for Scenery files. It consists of a list of directories that will be searched in order. The directories are separated by “:” on Unix (including Mac OS X) and “;” on Windows.
For example, on Linux a FG_SCENERY environment variable set to
searches for scenery in /home/jsmith/WorldScenery first, followed by
On Windows, a FG_SCENERY environment variable set to
searches for scenery in c:\Program Files\FlightGear\data\Scenery first, followed by c:\data\WorldScenery
Setting up environment variables on different platforms is beyond the scope of this document.
FlightGear is able to fetch the Scenery as you fly, if you have a permanent Internet connection at your disposal. Create an empty ‘working’ directory for TerraSync, writable to the user and point FlightGear at this directory using the FG_SCENERY variable (as explained above). Do not let TerraSync download Scenery into your pre-installed Scenery directory.
Within FlightGear itself, select the Scenery Download option under the Environment menu. Then simply select the directory you created above and enable automatic scenery download.
One major benefit of TerraSync is that it always fetches the latest and greatest Scenery from the FlightGear World (Custom) Scenery Project and therefore allows you to pick up incremental updates independant of the comprehensive World Scenery releases, which are generally synchronized with FlightGear releases.
It is also possible to run TerraSync as an external tool.
On Mac OS X or Windows, just checking “Download scenery on the fly” on the GUI launcher launches TerraSync as a separate process automatically for downloading the Scenery around your aircraft, so you don’t have to specify the atlas option or FG_SCENERY at all.
Alternatively you can run the terrasync program directly. It talks to FlightGear using the ‘Atlas’ protocol, so call FlightGear with the:
command line parameter and tell TerraSync about the port number you’re using as well as the respective directory:
terrasync -p 5505 -S -d /usr/local/share/TerraSync
Note that TerraSync (when called with the "-S" command line switch, as recommended) is going to download Scenery via the Subversion protocol over HTTP. Thus, if your Internet access is set up to use a HTTP proxy, plase make yourself aware how to configure the "libsvn" Subversion client for use of a proxy. If you are using Mac OS X 10.5, The GUI launcher automatically specifies -S if svn is available.
If you are interested in generating your own Scenery, have a look at TerraGear - the tools that generate the Scenery for FlightGear:
The most actively maintained source tree of the TerraGear toolchain is co-located at the FlightGear landuse data Mapserver:
The base FlightGear package contains only a small subset of the aircraft that are available for FlightGear. Developers have created a wide range of aircraft, from WWII fighters like the Spitfire, to passenger planes like the Boeing 747.
You can download aircraft from
Simply download the file and uncompress it into the data/Aircraft subdirectory of your installation. The aircraft are downloaded as .zip files. Once you have uncompressed them, there will be a new sub-directory in your data/Aircraft directory containing the aircraft. Next time you run FlightGear, the new aircraft will be available.
On Mac OS X, you may use the GUI launcher to install the downloaded aircraft files as described in section 3.1.2.
Most of the packages named above include the complete FlightGear documentation including a PDF version of The FlightGear Manual intended for pretty printing using Adobe Reader, available from http://get.adobe.com/reader/
Moreover, if properly installed, the HTML version can be accessed via FlightGear’s help menu entry.
Besides, the source code contains a directory docs-mini containing numerous ideas on and solutions to special problems. This is also a good place for further reading.