Difference between revisions of "Changelog 2.10"

From FlightGear wiki
Jump to: navigation, search
(Some of the major changes include:: copied from FlightGear_Newsletter_September_2012)
 
(28 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{Draft|changelog|}}
+
{{changelogs|prev=2.8.0|next=2.12}}
  
This changelog is currently being written for the FG 3.0 release - FG 3.0 has not yet been released! But starting to write the changelog early, should make it much easier to come up with a comprehensive list of changes.
+
Available in: '''English''',  [[:es:Changelog 2.10|Espanol]], [[:fr:Changelog 2.10|Français]]
 +
Please help us translate in other languages!
  
==FlightGear 3.0.0 ChangeLog==
+
==FlightGear 2.10 Change Log==
  
The FlightGear development team is happy to announce the v3.0.0 release of FlightGear, the free, open-source flight simulator. This new version contains many exciting new features, enhancements and bugfixes.  New features in this release include an experimental renderer supporting real-time lighting and shadows, and improved terrain rendering.
+
The FlightGear development team is happy to announce the v2.10 release of FlightGear, the free, open-source flight simulator. This new version contains many exciting new features, enhancements and bugfixes.  Highlights in this release include improved usability, better terrain rendering and a fully scriptable 2D rendering system.
  
 
Founded in 1997, FlightGear is developed by a worldwide group of volunteers, brought together by a shared ambition to create  
 
Founded in 1997, FlightGear is developed by a worldwide group of volunteers, brought together by a shared ambition to create  
Line 13: Line 14:
 
FlightGear features more than 400 aircraft, a worldwide scenery database, a multi-player environment, detailed sky modelling, a flexible and open aircraft modelling system, varied networking options, multiple display support, a powerful scripting language and an open architecture. Best of all, being open-source, the simulator is owned by the community and everyone is encouraged to contribute.  
 
FlightGear features more than 400 aircraft, a worldwide scenery database, a multi-player environment, detailed sky modelling, a flexible and open aircraft modelling system, varied networking options, multiple display support, a powerful scripting language and an open architecture. Best of all, being open-source, the simulator is owned by the community and everyone is encouraged to contribute.  
  
Download FlightGear v3.0.0 for free from [http://www.flightgear.org FlightGear.org]
+
Download FlightGear v2.10 for free from [http://www.flightgear.org FlightGear.org]
  
 
FlightGear - Fly Free!
 
FlightGear - Fly Free!
  
=== Some of the major changes include: ===
+
You can help us write the changelog for the upcoming FlightGear release at [[Next Changelog]].
  
'''Aircraft Checklists'''
+
{{#ev:youtube|MZVCmHgAX6Y}}
  
Aircraft typically have a large number of checklists, covering almost every phase of flight. Previously, aircraft authors have added checklists to the help text for the aircraft.  This is a bit unwieldy.  To improve matters, there is now an Aircraft Checklists dialog under the Help menu specifically designed to organize and display checklists.  Aircraft authors can create new checklists easily without having to worry about how they will be displayed.  See [[Aircraft Checklists]] for details.
+
http://www.youtube.com/watch?v=MZVCmHgAX6Y
  
 +
=== Major Enhancement in this release ===
  
'''Initial work on dynamic subsystem creation'''
+
'''Improved modularization'''
  
James has added initial code to work on dynamic subsystem creation, so that subsystems become create-able and removable from commands. Only some subsystems are supported so far, since many have non-default constructors or other complexities (see [[FlightGear Run Levels]] for further details). With this, change, it's now possible to dynamically add and remove the traffic-manager at runtime, for example:
+
Architecture improvements introduced in this release mean that subsystems such as the traffic manager may be stopped and re-started dynamically within a simulation session.  In future releases it is expected that more and more subsystems will support this function, making FG more scalable, and more flexible for distributed multi-machine simulators.
  
<syntaxhighlight lang="php">
+
'''Atmospheric Light Scattering'''
fgcommand( "add-subsystem", props.Node.new( { "subsystem": "traffic-manager", "name":"traffic-manager", "do-bind-init":1}) );
+
</syntaxhighlight>
+
  
The idea is to improve this further so that more and more subsystems in FlightGear can be optionally toggled on/off at runtime, which should help facilitate other ongoing efforts, like the [[FGCanvas]] project for example - ultimately, this will help make FlightGear become more configurable and scalable, but also better usable for other purposes, such as distributed (multi-machine) setups-so that a single binary can be easily used for different purposes.
+
[[File:Light_scattering_dec12_05.jpg|thumb|400px|F-14b over the alps at dusk]]
  
In addition, it will be much easier for developers to do regression testing and benchmarking once subsystems can be completely disabled, which is another long-standing feature request (see [[FlightGear Headless]]), that should also simplify release preparations.
+
[[Atmospheric light scattering]] is an alternative rendering framework, using exceptionally realistic environment-dependent fog and light computations for clouds and terrain. The simulation includes the following lighting models.
 +
* Rayleigh, Mie and diffuse multiple scattering of light in the atmosphere, on haze and on clouds, for more realistic atmospheric lighting.
 +
* Volumetric ground fog simulation, so fog varies in thickness both horizontally and vertically.
 +
* Realistic ambient and diffuse light curves for sunset and sunrise conditions, making evening flights more realistic.
 +
* Improved night VFR flying due to a moonlight illumination model.
  
 +
Together with Advanced Weather, it functions as an integrated environment simulation in which the individual elements mutually influence each other. For instance
 +
* Clouds and winds are influenced by the distribution of terrain elevation
 +
* Prevailing winds, terrain slopes and stability of the lower atmosphere determine the shape of visible clouds
 +
* Cloud layers and haze influence color and intensity of light reflections
 +
* Winds influence wave patterns on water
 +
* Light at sunrise and sunset is position and altitude dependent, allowing for phenomena such as Alpenglow or brightly illuminated high-altitude clouds while the ground is dark
  
'''Aircraft operations'''
+
For more powerful graphics cards, the framework includes procedural terrain texturing, including features such as the following.
 +
* Non-tiling slope dependent terrain texturing, so scenery looks more featured but with fewer tiling artefacts.
 +
* High resolution close-up texturing effects with up to 10 cm detail resolution and dynamically added bumpmap for low-level flight and better depth perception
 +
* Environmental effects such as terrain wetness (including puddles), dustiness, mossiness, and snow cover. All adjustable by the user and respecting the terrain slope where appropriate.
  
'''AI system'''
+
''' Improved performance, reduced memory occupancy '''
  
'''AI Traffic'''
+
Startup time and memory occupancy has been reduced by the implementation of a cache of navigation data.  Further memory occupancy reductions have been made by improved random buildings.  Frame-rates have been improved when using 3D clouds, particularly in overcast conditions.
  
'''Flight dynamics'''
+
''' Usability '''
 +
[[File:Joystick Configuration Dialog.jpg|thumb|400px|Joystick Configuration GUI]]
  
'''Navigation Database'''
+
Improving FlightGear's usability has been a focus for a number of developers for this release. Changes include:
 +
* A new tool allowing joystick configuration in-sim, making it easier for new users to configure their joysticks as they wish and get flying!
 +
* The Nasal Console has been improved to support copy/paste, making Nasal script development easier.
 +
* The About dialog now includes additional system information, and the ability to copy information to the clipboard, making remote diagnosis of users problems faster and more straightforward.
 +
* The Select Airport option now displays an overhead view of the selected airport, allowing users to preview their new location, and making it easier to choose the correct runway or parking position.
 +
* In-sim checklists have been introduced for a number of aircraft.
 +
* An in-sim documentation browser is included, so users can more easily browse all the documentation available in the base package.
 +
* The weather configuration UIs have been combined and rationalized into a single weather UI, making it easier to select a nice VFR day, or a difficult CATIII approach.
 +
* Flight path can now be displayed on the in-sim map.
 +
* Instant replay may now be saved as a flight recorder, edited externally to add a commentary, and then replayed as a tutorial, with the user able to take control at any point.
 +
* Multiplayer setup dialog now includes a dynamically generated list of active MP servers, making it even easier to take part in FlightGear's worldwide multi-player environment.
  
'''Scripting (Nasal)'''
 
* The "flightplan" Nasal extension function  has been improved, which makes it possible to retrieve a hash representation of the flight plan stored in the route manager. With these changes in place, it is  possible to directly show a SVG image for each waypoint and connect them using OpenVG paths.
 
  
 +
''' Internationalization '''
  
 +
FlightGear continued to benefit from contributions from across the globe.
 +
* The FlightGear Manual is now included in both English and French.
 +
* System messages on startup are available in eight languages, just like the in-sim menu.
  
'''NavCache'''
+
''' Flight Planning and Route Manager '''
  
James has pushed a large change to next, which adds a binary cache of most of  the navigation data. The cache is stored in FG_HOME/navdata.cache, and rebuilt if the timestamps on any of the data files change (apt.dat, nav.data, fix.dat and so on). When the cache needs to be rebuilt, startup will take a bit longer than before, but when the cache is valid, startup is /much/ faster, especially for debug builds:
+
* Route Manager now has better support for Navigraph procedures.
 
+
* Auto-generated SIDs and STARs are available for airports where real procedure data is not availableThis generates plausible straight in approach and terminal waypoints based on the route course.
{{cquote|Memory consumption is also lower, since we don't keep airports / fixes /  taxiways / runways in memory until they're needed.
+
* The "flightplan" Nasal extension function  has been improved, making it possible to retrieve a hash representation of the flight plan stored in the route manager. It is now possible to directly show a SVG image for each waypoint and connect them using OpenVG paths.
 
+
This is a fairly large change, so please look out for any bugs related to navaids / startup position / GPS / route-manager searches and lookups either getting different results or failing. I've tested here locally and things seem
+
sane, and have had positive feedback from various testers on IRC and email, but I still expect to find some edge cases which need further work.
+
 
+
There's future work to move even more data into the cache - eg parking positions - which will further help performance for FMS / map systems since we won't need to parse lots of XML data repeatedly. I'm going to let this change settle down before adding more cached data, however.<ref>{{cite web |url=http://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg38330.html |title=[Flightgear-devel] Nav-cache|author=James Turner |date=Wed, 19 Sep 2012}}</ref>}}
+
 
+
<references/>
+
 
+
 
+
'''Random Buildings'''
+
 
+
* Random Buildings memory occupancy has been improved significantly, making this feature available to more users.
+
 
+
'''Project Rembrandt'''
+
 
+
Fred's been working on some fancy new effects, especially useful for our film-making enthusiasts.
+
 
+
The [[Project Rembrandt|Rembrandt renderer]] has a lot of potentiality when it comes to post processing effects. Indeed, the interesting property of a deferred shader is that all stages of rendering are kept into memory. Post-processing is as simple as using a filter on a camera.
+
 
+
So currently the effects added in git are :
+
* Night vision including amplification grain and restrained field of view,
+
* Cinema effect including :
+
** Vignetting,
+
** Color shift, with Sepia as default value,
+
** Radial distortion (barrel and pincushion distortion, with scale compensation),
+
** Lateral chromatic aberration (purple fringing),
+
** Film wear simulation.
+
 
+
 
+
'''Environment'''
+
 
+
* The weather configuration GUIs have been combined and rationalized into a single Weather GUI, making it easier to select a nice VFR day, or a difficult CATIII approach.
+
 
+
'''Usability'''
+
 
+
Improving FlightGear usability has been a focus for a number of developers for this release.  Changes include:
+
* A new tool allowing joystick configuration in-sim, making it easier for new users to configure their joysticks as they wish and get flying!
+
* The Nasal Console has been improved to support copy/paste, making Nasal script development easier.
+
* The About dialog now includes additional system information, and the ability to copy information to the clipboard, making remote diagnosis of users problems faster and more straightforward.
+
* The Select Airport option now displays an overhead view of the selected airport, allowing users to preview their new location, and making it easier to choose the correct runway or parking position.
+
* We have added an integrated documentation browser so that users can more easily browse all the documentation available in the base package.
+
  
 
'''Canvas System'''
 
'''Canvas System'''
  
 +
[[File:Airport-selection-dialog.png|thumb|400px|Airport Selection dialog, using Canvas to render the airport diagram]]
  
The Nasal API wrappers for the Canvas system have been committed to $FG_ROOT, so that people no longer need to manually load the required modules.
+
The "canvas" system is FlightGear's fully scriptable 2D rendering system, which makes it possible for users to easily create new instruments, HUDs and even dialogs and custom GUI widgets using FlightGear's built-in scripting language [[Nasal]] (which looks really similar to JavaScript). The Canvas can also be used for the creation of complex glass cockpit displays like navigational displays and other MFDs, none of this requires rebuilding FlightGear from source or writing C++ code.
Furthermore, the fully scriptable [[Canvas]] 2D drawing system in FlightGear 3.0 has now support for:
+
  
* creating GUI windows (not just widgets, but also windows - which can be used for popup menus or menubars)
+
Canvas improvements in this release include:
* native copy/paste via 2 new [[Nasal]] extension functions, see [[ Howto:Clipboard access using Nasal]]
+
* Lazy updating/rendering to improve performance in situations where a texture doesn't need to be redrawn
* nested canvases, where a canvas may contain images created by another canvas texture [[Howto:Using raster images and nested canvases]]
+
* Creating GUI windows, including popup menus or menubars
* window stacking
+
* Native copy/paste via 2 new [[Nasal]] extension functions
 +
* Nested canvases, where a canvas may contain images created by another canvas texture
 +
* Window stacking
 
* raster images (vector images were already supported)
 
* raster images (vector images were already supported)
* handling GUI events using osgGA
+
* Improved event handling GUI events using osgGA
 +
* A new DOM-based event handling system
  
Support for nested canvases will make it possible to also load canvas textures into other canvases, so that you can, for example, easily load an instrument into a GUI dialog, or even use GUI widgets in MFD instruments, which is a feature based on real avionics, i.e. as used in modern airliners like the A380 or the 787 - which are based on the ARINC661 standard.
+
'''Rembrandt'''
 +
[[File:Fgfs-rembrandt-old-timer.jpg|thumb|400px|Rembrandt old film style]]
  
Nested canvases also make it possible for people to easily implement GUI tools using the Canvas system, for example a GUI instrument or panel editor can be entirely implemented in scripting space now, without touching any C++ code. Similarly, GUI widgets could also be created in a WYSIWYG-fashion, too - so that even a dialog editor or full GUI builders can be built using the Canvas system.
+
* The [[Project Rembrandt|Rembrandt renderer]] has been extended with a number of post-processing filters:
 +
** Night vision including amplification grain and restrained field of view
 +
** Cinema effect including:
 +
*** Vignetting
 +
*** Color shift, with Sepia as default value
 +
*** Radial distortion (barrel and pincushion distortion, with scale compensation)
 +
*** Lateral chromatic aberration (purple fringing)
 +
*** Film wear simulation
 +
* Additional aircraft have been updated to make use of Rembrandt effects.
  
In addition, Tom has also implemented support for window stacking in 08/2012. Check out the demo video below, which demonstrates how "nested" canvases and window stacking works:
+
'''AI Improvements'''
 +
* AI aircraft take-offs and landings are now more realistic.
 +
* AI tankers can now be found using the HUD target marker.
  
{{#ev:youtube|llVaasTEf44}}
+
''' Regional Textures '''
  
Missing features, and features currently under development, are listed at [[Canvas Widgets#Missing_.2F_Todo|Missing Canvas Features]]
+
Building on the work in 2.8, the following areas now have region-specific texture-sets for more realistic terrain:
 
+
* Caribbean
 
+
* Western Europe
'''Interface'''
+
* Iceland
 +
* Tropical South America
  
 
'''Highlighted new and improved aircraft'''
 
'''Highlighted new and improved aircraft'''
*
 
*
 
'''Project infrastructure'''
 
  
'''Visual effects'''
+
* The Boeing 777 has improved cockpit, PFD and NavDisplay.
 +
* The Dassault Mirage 2000-5 has various instrumentation, HUD and stores added.
 +
* The Douglas A-4F Skyhawk has an improved FDM and cockpit, including terrain-clearance radar and navigational computer.
 +
* The Hawker Hurricane has improved FDM and cockpit.
 +
* The Mudry Cap 10B, a classic French two-seat training aerobatic aircraft has been added by the PAF team.
  
 
'''Other'''
 
'''Other'''
* Additional joysticks and rudder pedals are supported out-of-the-box:
+
 
 +
* Additional joysticks and rudder pedals are supported out-of-the-box.
 +
* An interactive aircraft download page allows users to filter aircraft based on their level of completeness and accuracy, making it easier to discover the true gems of our extensive hangar.
  
 
'''Bug fixes'''
 
'''Bug fixes'''
* See [http://code.google.com/p/flightgear-bugs/issues/list?can=1&q=Milestone%3D3.0.0 our bugtracker] for an extensive list of the bugs fixed in this release.
+
 
 +
* See [http://code.google.com/p/flightgear-bugs/issues/list?can=1&q=Milestone%3D2.10.0 our bugtracker] for an extensive, yet incomplete, list of the bugs fixed in this release.
  
 
[[Category:FlightGear changelogs]]
 
[[Category:FlightGear changelogs]]
 +
 +
[[es:Changelog 2.10]]
 +
[[fr:Changelog 2.10]]

Latest revision as of 05:26, 27 November 2016

Previous changelog Next changelog

Available in: English, Espanol, Français Please help us translate in other languages!

FlightGear 2.10 Change Log

The FlightGear development team is happy to announce the v2.10 release of FlightGear, the free, open-source flight simulator. This new version contains many exciting new features, enhancements and bugfixes. Highlights in this release include improved usability, better terrain rendering and a fully scriptable 2D rendering system.

Founded in 1997, FlightGear is developed by a worldwide group of volunteers, brought together by a shared ambition to create the most realistic flight simulator possible that is free to use, modify and distribute. FlightGear is used all over the world by desktop flight simulator enthusiasts, for research in universities and for interactive exhibits in museums.

FlightGear features more than 400 aircraft, a worldwide scenery database, a multi-player environment, detailed sky modelling, a flexible and open aircraft modelling system, varied networking options, multiple display support, a powerful scripting language and an open architecture. Best of all, being open-source, the simulator is owned by the community and everyone is encouraged to contribute.

Download FlightGear v2.10 for free from FlightGear.org

FlightGear - Fly Free!

You can help us write the changelog for the upcoming FlightGear release at Next Changelog.

http://www.youtube.com/watch?v=MZVCmHgAX6Y

Major Enhancement in this release

Improved modularization

Architecture improvements introduced in this release mean that subsystems such as the traffic manager may be stopped and re-started dynamically within a simulation session. In future releases it is expected that more and more subsystems will support this function, making FG more scalable, and more flexible for distributed multi-machine simulators.

Atmospheric Light Scattering

F-14b over the alps at dusk

Atmospheric light scattering is an alternative rendering framework, using exceptionally realistic environment-dependent fog and light computations for clouds and terrain. The simulation includes the following lighting models.

  • Rayleigh, Mie and diffuse multiple scattering of light in the atmosphere, on haze and on clouds, for more realistic atmospheric lighting.
  • Volumetric ground fog simulation, so fog varies in thickness both horizontally and vertically.
  • Realistic ambient and diffuse light curves for sunset and sunrise conditions, making evening flights more realistic.
  • Improved night VFR flying due to a moonlight illumination model.

Together with Advanced Weather, it functions as an integrated environment simulation in which the individual elements mutually influence each other. For instance

  • Clouds and winds are influenced by the distribution of terrain elevation
  • Prevailing winds, terrain slopes and stability of the lower atmosphere determine the shape of visible clouds
  • Cloud layers and haze influence color and intensity of light reflections
  • Winds influence wave patterns on water
  • Light at sunrise and sunset is position and altitude dependent, allowing for phenomena such as Alpenglow or brightly illuminated high-altitude clouds while the ground is dark

For more powerful graphics cards, the framework includes procedural terrain texturing, including features such as the following.

  • Non-tiling slope dependent terrain texturing, so scenery looks more featured but with fewer tiling artefacts.
  • High resolution close-up texturing effects with up to 10 cm detail resolution and dynamically added bumpmap for low-level flight and better depth perception
  • Environmental effects such as terrain wetness (including puddles), dustiness, mossiness, and snow cover. All adjustable by the user and respecting the terrain slope where appropriate.

Improved performance, reduced memory occupancy

Startup time and memory occupancy has been reduced by the implementation of a cache of navigation data. Further memory occupancy reductions have been made by improved random buildings. Frame-rates have been improved when using 3D clouds, particularly in overcast conditions.

Usability

Joystick Configuration GUI

Improving FlightGear's usability has been a focus for a number of developers for this release. Changes include:

  • A new tool allowing joystick configuration in-sim, making it easier for new users to configure their joysticks as they wish and get flying!
  • The Nasal Console has been improved to support copy/paste, making Nasal script development easier.
  • The About dialog now includes additional system information, and the ability to copy information to the clipboard, making remote diagnosis of users problems faster and more straightforward.
  • The Select Airport option now displays an overhead view of the selected airport, allowing users to preview their new location, and making it easier to choose the correct runway or parking position.
  • In-sim checklists have been introduced for a number of aircraft.
  • An in-sim documentation browser is included, so users can more easily browse all the documentation available in the base package.
  • The weather configuration UIs have been combined and rationalized into a single weather UI, making it easier to select a nice VFR day, or a difficult CATIII approach.
  • Flight path can now be displayed on the in-sim map.
  • Instant replay may now be saved as a flight recorder, edited externally to add a commentary, and then replayed as a tutorial, with the user able to take control at any point.
  • Multiplayer setup dialog now includes a dynamically generated list of active MP servers, making it even easier to take part in FlightGear's worldwide multi-player environment.


Internationalization

FlightGear continued to benefit from contributions from across the globe.

  • The FlightGear Manual is now included in both English and French.
  • System messages on startup are available in eight languages, just like the in-sim menu.

Flight Planning and Route Manager

  • Route Manager now has better support for Navigraph procedures.
  • Auto-generated SIDs and STARs are available for airports where real procedure data is not available. This generates plausible straight in approach and terminal waypoints based on the route course.
  • The "flightplan" Nasal extension function has been improved, making it possible to retrieve a hash representation of the flight plan stored in the route manager. It is now possible to directly show a SVG image for each waypoint and connect them using OpenVG paths.

Canvas System

Airport Selection dialog, using Canvas to render the airport diagram

The "canvas" system is FlightGear's fully scriptable 2D rendering system, which makes it possible for users to easily create new instruments, HUDs and even dialogs and custom GUI widgets using FlightGear's built-in scripting language Nasal (which looks really similar to JavaScript). The Canvas can also be used for the creation of complex glass cockpit displays like navigational displays and other MFDs, none of this requires rebuilding FlightGear from source or writing C++ code.

Canvas improvements in this release include:

  • Lazy updating/rendering to improve performance in situations where a texture doesn't need to be redrawn
  • Creating GUI windows, including popup menus or menubars
  • Native copy/paste via 2 new Nasal extension functions
  • Nested canvases, where a canvas may contain images created by another canvas texture
  • Window stacking
  • raster images (vector images were already supported)
  • Improved event handling GUI events using osgGA
  • A new DOM-based event handling system

Rembrandt

Rembrandt old film style
  • The Rembrandt renderer has been extended with a number of post-processing filters:
    • Night vision including amplification grain and restrained field of view
    • Cinema effect including:
      • Vignetting
      • Color shift, with Sepia as default value
      • Radial distortion (barrel and pincushion distortion, with scale compensation)
      • Lateral chromatic aberration (purple fringing)
      • Film wear simulation
  • Additional aircraft have been updated to make use of Rembrandt effects.

AI Improvements

  • AI aircraft take-offs and landings are now more realistic.
  • AI tankers can now be found using the HUD target marker.

Regional Textures

Building on the work in 2.8, the following areas now have region-specific texture-sets for more realistic terrain:

  • Caribbean
  • Western Europe
  • Iceland
  • Tropical South America

Highlighted new and improved aircraft

  • The Boeing 777 has improved cockpit, PFD and NavDisplay.
  • The Dassault Mirage 2000-5 has various instrumentation, HUD and stores added.
  • The Douglas A-4F Skyhawk has an improved FDM and cockpit, including terrain-clearance radar and navigational computer.
  • The Hawker Hurricane has improved FDM and cockpit.
  • The Mudry Cap 10B, a classic French two-seat training aerobatic aircraft has been added by the PAF team.

Other

  • Additional joysticks and rudder pedals are supported out-of-the-box.
  • An interactive aircraft download page allows users to filter aircraft based on their level of completeness and accuracy, making it easier to discover the true gems of our extensive hangar.

Bug fixes

  • See our bugtracker for an extensive, yet incomplete, list of the bugs fixed in this release.