From Seo Wiki - Search Engine Optimization and Programming Languages

Jump to: navigation, search
Boeing 777 with British Airways livery in version 2.0.0 preview
Original author(s) David Murr, Curt Olson, Michael Basler, Eric Korpela
Developer(s) FlightGear Developers & Contributors
Initial release July 17, 1997
Stable release 1.9.1 / 2009-1-25; 159642834 ago
Preview release 2.0.0 / 2009-2-2; 158951634 ago
Written in C++[1]
Operating system 32 bit and 64 bit Windows, Linux, Mac OS X, FreeBSD, Solaris or IRIX
Platform Cross-platform
Available in English
Development status Active (1996-)
Type Flight simulator
License GNU General Public License
Website http://www.flightgear.org/

FlightGear Flight Simulator (often shortened to FlightGear or FGFS) is a free, open-source multi-platform flight simulator developed by the FlightGear project since 1997.[2] FlightGear is mostly written in the C++ programming language.

The project had its first release in 1997 and continued in development, culminating in the latest major release of 1.9.1b in January 2009, with specific builds for a variety of operating systems including Microsoft Windows (Win 32), Mac OS X, Linux, IRIX, and Solaris, although hardware requirements, especially OpenGL hardware graphics acceleration, constrict systems capable of running Version 1.0.

FlightGear code is released under the terms of the GNU General Public License, thus being free software.



KLM Boeing 737-300 in version 1.0.0 in 2008

Early Development (1996–2001)

Development formally started in the late 1990s with an online proposal and code being written in 1996, but using custom 3D graphics code. Development of an OpenGL based version was spearheaded by Curtis Olson starting in 1997, after the initial start in 1996. A large community response led to many contributing to the project from its start in late '90s up to the present.[3][4]

Rather than start entirely from scratch, FlightGear developers made use of the LaRCsim flight model from NASA, with OpenGL for 3D graphic code, and freely available elevation data. First working binaries came out in 1997, with an intense updating of newer versions for several years resulting in progressively more stable and advanced programs.

Versions 0.7–0.9 (2001–2003)

By 2001, the team was releasing new beta versions regularly (0.7.x, 0.8.x over 2001-2003). Later in the decade, the rate of final public releases slowed, but had larger amounts of content (0.9.8, 0.9.10, etc.). The maturity of software by 2005 led to more widespread reviews, and increased popularity. The use of version numbers slowed dramatically after the late 2002 release of version 0.9.0. Versions 0.9.9 (2005) and 0.9.10 (2006) had about 8 all-new or redone aircraft adding to a total of 70-90 aircraft, while 0.9.11 has about 33 new or redone designs.

Versions 0.9.0–1.0.0 (2003–2007)

3D Cockpit panel for A-10 in version 1.0.0 in 2008

FlightGear graphics are outdated in many respects compared to flight simulators such as X-Plane of the same period, but can compare well to older versions and to open source contemporaries such as ACM Flight Simulator or Vertigo. A number of special features are available, such as sloped runways and has over 20,000 runways, new 3d clouds, multi-platform support, multiple open flight data model (FDM) choices, and roughly 100 aircraft choices. All these features being implemented by version 0.9.10 provides a well-rounded feature set for FlightGear.

Versions 1.9.0–1.9.1 (2008–2009)

On December 21, 2008 FlightGear v1.9.0 was released.

FlightGear 1.9.0 represents a fundamental code rearrangement, incorporating over two years of development. After finishing the 1.0.0 release in December 2007, the FlightGear development team has directed their full attention to finishing the code overhaul that had already started in October 2006. The current 1.9.0 version of FlightGear is built upon the critically acclaimed OpenSceneGraph library, thereby widely expanding FlightGear's graphical capabilities. To make use of FlightGear's rich feature set, OpenSceneGraph 2.7.3 is minimally required (OpenSceneGraph 2.7.8 is recommended to avoid rendering bugs). The switch to OpenSceneGraph marks an important milestone for FlightGear, as it allows full use of the advanced rendering options already available in OpenSceneGraph, such as stereographic view modes, on screen statistics, easy definition of cameras for multiscreen systems, native OpenSceneGraph 3D model loaders and much more. Also Flightgear's World Scenery, which included the whole world's terrain and elevations, was being made for simultaneous release with Flightgear 1.9.0. It was made with the freely available SRTM elevation data. Even though it was meant to be released with 1.9.0, World Scenery was made so it ensures backwards compatibility. World Scenery can be used on version 1.0.0 and 0.9 too.

Due to a bug in FlightGear, another minor version was released, hence FlightGear 1.9.1. Flightgear 1.9.1 is currently the latest major release.

Versions 2.0.0 (2009)

The 2.0.0 is a new version that is currently in pre-release version 3. It is currently for only the Mac and Windows. The Mac version can be downloaded at their website, while the Windows version has a torrent. The pre-release has new features such as wildfire and new water textures which includes reflections from objects such as the sun. Also, a more dynamic world is being made.

FlightGear has been used in a range of projects in academia and industry and even home-built cockpits.[5]



FlightGear requires a reasonable hardware accelerated 3D card with OpenGL drivers to achieve smooth frame rates. Using only software rendering, FlightGear typically has frame rates of about several seconds per frame. With a 3D accelerated card you can expect much higher. On a 2-3 Ghz CPU with a GeForce card, frame rates in excess of 60 fps are reasonable to expect in most situations. The actual frame rate changes with the scene complexity (which changes from area to area and changes as your view direction changes) and your hardware. Before, FlightGear had support for 3dfx cards, but this was dropped as hardware requirements increased.

Simulation Engines

The simulation engine in FlightGear is called SimGear. It is used both as an end-user application and in academic and research environments, for the development and pursuit of flight simulation ideas.

This customizability of FlightGear is illustrated by the wide range of aircraft models that are available in FlightGear, from Gliders to helicopters, and from airliners to fighter jets. These aircraft models have been contributed by many different people.

Currently only one terrain engine is used, TerraGear. Weather effects include 3D clouds, lighting effects, and time of day.

Another huge advantage of FlightGear is that it is completely open source — it has a rich set of existing external interfaces, and most of the major configuration can be done with standard XML-based text files. We make no attempts to obfuscate or hide our internals. This is big win for people using FlightGear as an academic or research platform, or for those that want to interface it to their own home-built cockpits.[6]

Curtis L. Olson , O'Reilly Network, 2003

Flight Dynamics Models

Flight Dynamics Models (FDM) are how the flight for an aircraft is simulated in the program. FlightGear uses a variety of internally written and imported flight model projects. Any aircraft must be programmed to use one of these models. Currently FlightGear is the only graphical flight simulator for which all the FDM are used. FlightGear aircraft use one of three main data models JSBSim, YAsim, or UIUC as of version 0.9.10. UIUC and YASim were developed specifically for FlightGear. Early versions of FlightGear used a FDM based on LaRCsim by NASA, which was then replaced with more flexible FDM.

  • JSBSim - the default flight dynamics model software since 2000. Started by Jon Berndt.[6]
  • YASim - another FDM using different calculation method. Introduced starting in 0.7.9 in 2002. Developed by Andy Ross[6].
  • UIUC - another included FDM, developed by the UIUC Applied Aerodynamics Group at University of Illinois at Urbana-Champaign, also made use of LaRCsim.[7]
  • Flight Gear can also be setup to render using inputs from an external FDM source, such as from MATLAB.
  • Other custom FDM for a specific aircraft type have been written, such as for lighter than air aircraft.

FlightGear dependencies

Unlike proprietary software titles, the main output of the project is simply the release of a collection of code. To turn it into a usable program it must be compiled for a given platform. The software libraries used to create FlightGear have varied over time. The main one is SimGear, which is the underlying sim engine for FlightGear. TerraGear is not a dependency, but simply a name for the default terrain data program in FlightGear. OpenAL is used for sound/audio software, including support for SDL (since 0.9.5).[8] PLIB is used for hardware support routines, formerly used for sound support also which was taken over by OpenAL. OpenGL is used for its integrated 3D graphics routines, and other hardware acceleration (namely DirectX) is not supported. OpenSceneGraph is also integrated into FlightGear. Finally, Simple DirectMedia Layer is a software library which is also used. Some of the dependencies vary depending on which platform the code is being compiled for. FlightGear users must either compile the code themselves, or find a third party to release a binary, if it is not among the ones available from the project.

Networking and multi-display

Several networking options allow FlightGear to communicate with other instances of FlightGear. A multiplayer protocol is available for using FlightGear on a local network in a multi aircraft environment. This could be used for formation flight or control tower simulation. Multiplayer was soon expanded to allow playing over the internet. Other features include a Google maps based moving map that allows users to observe where other players are.[9]

Several instances of FlightGear can be synchronized to allow for a multi-monitor environment. If all instances are running at the same frame rate consistently, it is possible to get good and tight synchronization between displays.

Additional software

A comparison between a FlightGear 1.0 screenshot in 2008 and a photo of San Francisco Airport

There are programs that are either integrated into FlightGear (dependencies) or perform a function with it. Some of these are included in the release of FlightGear for a specific platform but made by the project, while others are independently distributed but are hosted by the FlightGear project.

One major additional software is the actual interface for launching an executable of FlightGear. For most of its early life FlightGear was only run through command line interfaces. However, the FlightGear Launch Control has been included with the FG launcher front-end since 0.9.3 in 2003. KFreeFlight is a launcher/front-end for KDE. FGTools is an alternative windows launcher front-end. FGKicker is a GTK+ based front-end.

Other significant programs include editors and projects for Terrain Data. Atlas is a chart/map support for FlightGear; Kelpie Flight Planner is a Java based flight planner for FlightGear. FlightGear Scenery Designer is a FlightGear scenery editor for working with terrain data. The World Custom Scenery Project is a project coordinating custom scenery efforts. Finally, Taxidraw is an editor for airport runways and taxiways.

FlightGear code vs. binaries

Unlike proprietary software, the project is totally open and the current CVS build is always available. The actual release dates apply to standardized and stable release of code, which is then compiled into a executable program. Both the development, the code releases, and the binaries are all created by those who volunteer their time to FlightGear. To create a runnable program the code must be compiled, which requires several specific libraries (see section of #FlightGear dependencies), including some general ones and, in some cases some platform specific ones. However, since this too difficult for most mainstream users, other contributors will work to make binaries available for a specific platform and operating system. These packages vary in their stability, performance, dependencies, and how up to date they are with the code base. For example, some older binaries work on Mac OS 9 but newer releases require specific Mac OS X versions.

For example, by late 2007 the latest code release was 0.9.11-pre1 (pre-release) and 0.9.10 (final). However, the actual binaries available vary significantly. Examples of actual binaries available a year after the release of the 0.9.10 code release:

  • Win-32 has ~138 Mb package (v0.9.10) (For Windows 98, 2000, ME, 32-bit XP)
  • Linux- pre-built packages for specific Linux distributions
  • Solaris packages either for it running on either SPARC or x86 processors.
    • SPARC (v0.9.8), x86 (v0.9.9)
  • Silicon Graphics IRIX;at the time had SGI binaries for (v0.9.9)
  • Mac OS X has a version for Mac OS X 10.4 (v0.9.10) and for Mac OS X 10.3 (v0.9.9)
  • FreeBSD has a package for(v0.9.10)

By early 2008, many versions for 1.0.0 became available although older releases remained for several aforementioned platforms. Increased hardware requirements for 1.0.0 reduced performance on older systems.

  • Win-32 has a ~172 Mb package (v1.0.00) (For Windows 98, 2000, ME, XP, Vista)
  • Linux- pre-built packages for specific Linux distributions included (v1.0.00) for Slackware and Debian
  • Mac OS X 10.4 (v1.0.00)

Critical reception

File:FlightGear - 1903 Wright Flyer.jpg
Wright Flyer in 0.9.9, which uses the UIUC FDM

Although not developed or typically analyzed solely as a game in the traditional sense, FlightGear has nevertheless undergone reviews in a number of online and offline publications, and received positive reviews as a flight simulator game.[10] FlightGear 1.0.0 was noted as being impressive for a game over a decade in the making, with a wide variety of aircraft and features.[11]

FlightGear 0.9.10 received many reviews, being highlighted as an accurate simulation but requiring patience and some pre-game work.[9] PC Magazine noted how it is designed to be easy to add new aircraft and scenery.[12]

Models and aircraft

FlightGear started out with an aircraft included in NASA's LaRCsim, a Navion, which was replaced by a Cessna 172 by 2000. UIUC as well as JSBsim development brought several more aircraft with them, as did the development of YASim which have since become the main FDM used in FG.[3] As of version 1.9.0 more than 230 aircraft are provided, in almost 150 unique liveries based on reallife aircraft[13].

1.0.0 and earlier aircraft

File:FlightGear - SeaHawk.jpg
Hawker Sea Hawk in 0.9.9

The basic installer is limited to about 15 aircraft, with several dozen more official aircraft at varying states of development for download. The CD/DVD version includes all official aircraft and terrain data, though all the same material can also be downloaded for free. Non official aircraft from third-party sources also exist, but are not included here. Also included are a number of custom buildings, especially around San Francisco; a Nimitz class aircraft carrier is included as well (which aircraft can land on). In addition, several of the developmental UIUC aircraft developed in the late 1990s were still included but were not all maintained.

All official aircraft for 0.9.10, with flight data model type and cockpit type listed for some such as found on the 0.9.10 CD release of FlightGear. Some aircraft are FDM only. Third party aircraft are excluded from the list (such as in additional add-ons). Aircraft in 0.9.10 installer are noted with a *, and ** for the 1.0 installer. New or heavily re-worked aircraft up to 1.0 public release, including some that came out with the 0.9.11-pre1 FlightGear (pre-release version) as well as 9.10 aircraft. Many aircraft that have not been updated no longer work, such as ones before .7.x/.8.x/.9.x as well as a number in the later releases that were not maintained to the current version depending on the model and its dependencies. Includes from about 0.7.0 to 0.9.10 and 1.0.0.

FlightGear visual development 2004-2008

FlightGear has undergone many major and minor graphical improvements during its roadmap to release in 2008. FlightGear uses OpenGL and requires a 3D graphics card. In recent years, FlightGear has switched to OpenSceneGraph which has a much more rich set of visual rendering options.

0.9.4 (2004)

0.9.9 (2005)

0.9.10 (2006)

1.0.0 (2007)

1.9.1 (2008)

2.00 (2009)

See also


External links

da:FlightGear de:FlightGear es:FlightGear fr:FlightGear it:FlightGear lt:FlightGear nl:FlightGear ja:FlightGear pl:FlightGear pt:FlightGear ru:FlightGear fi:FlightGear sv:FlightGear zh:FlightGear

Personal tools

Served in 0.466 secs.