FlightGear

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
FlightGear
FlightGear's icon
Airbus A320 FlightGear 3.7.png
Cockpit View of A320neo in FlightGear 3.7
Original author(s) David Murr, Curt Olson, Michael Basler, Eric Korpela[1]
Developer(s) FlightGear Developers & Contributors
Initial release July 17, 1997
Stable release 2019.1.1 / March 14, 2019; 5 years ago (2019-03-14)
Development status Active (1996–)
Written in C++, C[2]
Operating system 32-bit & 64-bit Windows
Linux
Mac OS X
FreeBSD
Solaris or IRIX
Platform Cross-platform
Size 1 GB (Main files)
Available in English (Translations Available)
Type Flight simulator
License GNU General Public License
Website 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.[3]

David Murr started the project on April 8, 1996. The project had its first release in 1997 and continued in development, the most recent release being version 2019.1.1 in March 2019. It has specific builds for a variety of operating systems including Microsoft Windows, Mac OS X, Linux, IRIX, and Solaris. FlightGear code is released under the terms of the GNU General Public License, thus being free software.

Some commercial products—Flight Pro Sim, Pro Flight Simulator, and others—are copies of old versions of FlightGear. They are not endorsed by the FlightGear project.[4]

History

FlightGear started as an online proposal in 1996 by David Murr. He proposed a new flight simulator developed by volunteers over the Internet as alternative to proprietary, available simulators like the Microsoft Flight Simulator. The flight simulator was created using custom 3D graphics code. Development of an OpenGL based version was spearheaded by Curtis Olson starting in 1997. FlightGear incorporated other open-source resources, including the LaRCsim flight model from NASA, and freely available elevation data. The first working binaries using OpenGL came out in 1997.

Enthusiastic development of newer versions for several years resulted in progressively more stable and advanced versions. By 2001, the team was releasing new beta versions regularly. Later in the decade, the rate of final public releases slowed, but had larger amounts of content. By 2005, the maturity of software led to more widespread reviews, and increased popularity. 2007 marked a formal transition out of beta development with the release of version 1.0.0. In 2008, version 1.9.0 of FlightGear included a major change from PLIB to OpenSceneGraph, widely expanding FlightGear's graphical capabilities and among others adding multi-screen support. Several more versions with major improvements were released through the years.

In June 2014 Honda lawyers issued a takedown request in which they claimed that the HondaJet model in the simulator infringes on Honda's trademarks. Subsequently, HondaJet became the first model removed from the simulator due to legal reasons.[5]

Software

Simulation engines

The simulation engine in FlightGear is called SimGear. It is used as in the 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.

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 that uses all the FDMs. 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. Specialized FDM, such as lighter than air aircraft can be custom written, or external FDM sources can be used.

  • JSBSim – the default flight dynamics model software since 2000. Started by Jon Berndt.[6]
  • YASim – an FDM using different calculation methods. Introduced starting in 0.7.9 in 2002. Developed by Andy Ross.[6] It is presently the only FlightGear FDM that provides simulation for rotorcraft, a feature developed by Maik Justus.
  • UIUC – another included FDM, developed by the UIUC Applied Aerodynamics Group at University of Illinois at Urbana-Champaign, also made use of LaRCsim.[7]

Dependencies

Unlike proprietary software titles, the main output of the project is simply the release of a collection of software source 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 simulation 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, Flight Gear also uses the Simple DirectMedia Layer software library. Some dependencies vary, depending on which platform the code is compiled for. FlightGear users must either compile the code themselves, or find a third party 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 can be used for formation flight or air traffic control simulation. Soon after the original Multiplayer Protocol became available, it was 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, which may be found at mpmap02.flightgear.org.[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 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 (commonly known as FGRun)[10] has been included with the FG launcher front-end since 0.9.3 in 2003. However, in the upcoming 3.6 release, a new QT5 based launcher is included, in development since before March 2015, when it was announced on the FlightGear mailing lists.[11] 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. Taxidraw is an editor for airport runways and taxiways. FGCom is a project for live VOIP simulating Radio traffic to air traffic control and other aircraft in FlightGear, which now has its own GUI FGCOMgui. FGCom uses the open source Asterix server. OpenRadar is a stand-alone ATC program for FlightGear, based on Java, while ATC-PIE is a stand-alone ATC program based on Python. World Editor (WED) is a program for editing airport layouts, similar to Taxidraw, but more updated, allowing the use of Bézier curves.

FlightGear code vs. binaries

FlightGear is mostly written in the C++ programming language.[12] The source code is distributed via Git and release dates apply to standardized and stable release of code, which is then compiled into an executable program. Both the development, the code releases, and the binaries are all created by those who volunteer their time to FlightGear. Compiling the source code with different FlightGear dependencies is too difficult for most users, so other contributors work to make platform specific binaries. These packages vary in their stability, performance, dependencies, and how up-to-date they are with the main code base.

Critical reception

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.[13] 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.[14]

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.[15]

FlightGear 1.9.1 was also chosen by users of Softonic as the best free game.[16]

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.[17] As of version 2.10 more than 400 aircraft are provided (some independently from the project), in over 800 unique liveries based on real life aircraft.[18]

1.0.0 and earlier aircraft

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. It also includes a number of custom buildings, especially around San Francisco, and a Nimitz class aircraft carrier that aircraft can land on. Several of the developmental UIUC aircraft from the late 1990s are still included, but not 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, having no 3-D visual model. Third party aircraft that do not have a GPL compatible license are excluded from the list, but may be used with FlightGear. 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.[clarification needed]

Applications and usages

Lua error in package.lua at line 80: module 'strict' not found. FlightGear has been used in a range of projects in academia and industry (including NASA) and even home-built cockpits.[19] ATC Flight Simulator Company builds FAA approved flight simulators, that use FlightGear for the visuals.[20] An extensive list is available at the Flightgear wiki.[21]

Commercial redistribution

FlightGear Flight Simulator version 1.9.1 has been actively marketed over the Internet under several aliases and product names, such as Virtual Pilot 3D, Flight Pro Sim, Pro Flight Simulator, Earth Flight Sim, Real Flight Simulator and Flight Simulator Plus.[22] Usually, US$47 is charged for the main program and US$67 is charged for the full World Scenery Package. Numerous advertisements and review articles that are very similar in wording can also be found scattered across the Internet, posted by "affiliates." A number of Facebook pages for these products have also been posted. Some of these products[which?] have been using Flight Simulator X images on their Web sites, greatly lying about the capabilities of the simulator.

Because FlightGear is licensed under the GNU General Public License, this is fully legal; however, the morals of these operations are questionable, as many customers who have purchased these products are very dissatisfied with what they receive and feel they have been cheated.[23] Additionally, an investigation by a number of FlightGear developers has found virtually no difference between the source code made available by the FlightProSim, etc. Web sites and the official version of FlightGear 1.9.1. In fact, FlightProSim, Pro Flight Simulator, etc. almost never acknowledge that their products are derivatives of FlightGear Flight Simulator, use images from the FlightGear wiki, and are not involved in any way with the FlightGear project.

The FlightGear developer team made an official statement/FAQ about the situation.[4]

Gallery

See also

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. 4.0 4.1 Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. 6.0 6.1 Lua error in package.lua at line 80: module 'strict' not found.
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. Lua error in package.lua at line 80: module 'strict' not found.
  9. 9.0 9.1 Lua error in package.lua at line 80: module 'strict' not found.
  10. Lua error in package.lua at line 80: module 'strict' not found.
  11. Lua error in package.lua at line 80: module 'strict' not found.
  12. Lua error in package.lua at line 80: module 'strict' not found.
  13. Lua error in package.lua at line 80: module 'strict' not found.
  14. Lua error in package.lua at line 80: module 'strict' not found.[dead link]
  15. Lua error in package.lua at line 80: module 'strict' not found.
  16. Lua error in package.lua at line 80: module 'strict' not found.
  17. The Flight Gear Manual Version .9, April 2006
  18. Lua error in package.lua at line 80: module 'strict' not found.
  19. Lua error in package.lua at line 80: module 'strict' not found.
  20. Lua error in package.lua at line 80: module 'strict' not found.
  21. Lua error in package.lua at line 80: module 'strict' not found.
  22. Lua error in package.lua at line 80: module 'strict' not found.
  23. Lua error in package.lua at line 80: module 'strict' not found.

External links