Changelog 3.2: Difference between revisions

From FlightGear wiki
Jump to navigation Jump to search
m (Highlighted new and improved aircraft: Added Flash 2 Alpha)
(Update aircraft, some tidying)
Line 7: Line 7:


==Upcoming FlightGear Changelog==
==Upcoming FlightGear Changelog==
 
The FlightGear development team is delighted to announce the v3.2 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 ...   
<!--
The FlightGear development team is delighted to announce the v3.2 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 integration of the FGCom voice communications client within the simulator, improved terrain rendering, faster scenery loading, and improved usability. This release also coincides with the release of FlightGear World Scenery 2.0 - massively improved scenery data covering the entirety of the planet and incorporating OpenStreetMap roads and detailed terrain information from a variety of sources.   


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 20: Line 18:


FlightGear - Fly Free!
FlightGear - Fly Free!
-->


=== Breaking Changes ===
=== Breaking Changes ===
Line 39: Line 36:
* [[Reset & re-init]] is merged and now enabled
* [[Reset & re-init]] is merged and now enabled
* A segfault related to scripted Nasal fgcommands (like used in joystick and other bindings) has been fixed {{Issue|1397}}
* A segfault related to scripted Nasal fgcommands (like used in joystick and other bindings) has been fixed {{Issue|1397}}
* yasim versioning support for maintenance fixes (TorstenD)
* YASim versioning support for maintenance fixes (TorstenD)
* FLITE TTS support
* FLITE TTS support
* Windows dependencies have been updated
* Windows dependencies have been updated
* improved projection handling for the integrated [[Map]] dialog, implemented by Gijs[https://gitorious.org/fg/flightgear/commit/3f433e2c35ef533a847138e6ae10a5cb398323d7#comment_107170]
* The integrated [[Map]] dialog now uses an azimuthal equidistant projection, for better representation in polar regions and across the International Date Line.


'''Aircraft Modeling'''
'''Aircraft Modeling'''
* galvedro's work: [[A Failure Management Framework for FlightGear]]
* galvedro's work: [[A Failure Management Framework for FlightGear]]
* extra 500
* Tu-154B2 version 3.1
* additional aircraft have started adopting Gijs' [[NavDisplay]]
* additional aircraft have started adopting Gijs' [[NavDisplay]]


Line 55: Line 50:
'''Atmospheric Light Scattering'''
'''Atmospheric Light Scattering'''


Atmospheric Light Scattering (ALS) is one of FGs three rendering frameworks, with the aim of providing an integrated simulation of the interaction between weather, light and the environment.
Atmospheric Light Scattering (ALS) is one of FlightGear's three rendering frameworks, with the aim of providing an integrated simulation of the interaction between weather, light and the environment.


Additions to ALS in version 3.2 include:
Additions to ALS in version 3.2 include:
Line 92: Line 87:


''' Usability '''
''' Usability '''
* Windows users are now able to use scrollwheel in dialog
* Windows users are now able to use the scrollwheel in dialog lists




Line 109: Line 104:
* Hooray is working on adding shader support to Canvas {{Progressbar|30}}
* Hooray is working on adding shader support to Canvas {{Progressbar|30}}
-->
-->
* Gijs is currently working on additional projections as part of {{Issue|550}}
* The [[MapStructure]] back-end used by the [[NavDisplay]] now supports symbol instancing, so that performance is improved
* The [[MapStructure]] back-end used by the [[NavDisplay]] now supports symbol instancing, so that performance is improved
* MapStructure-based layers can now be customized and styled
* MapStructure-based layers can now be customized and styled
Line 118: Line 112:
* Canvas Layout Engine
* Canvas Layout Engine
* Canvas-based dialog for downloading aircraft [[Aircraft Center]]
* Canvas-based dialog for downloading aircraft [[Aircraft Center]]
[[File:Aircraft-center-prototype.png|400px|thumb|Canvas dialog showing the prototype for an [[Aircraft Center]] for directly installing/managing aircraft from within FlightGear, an upcoming feature scheduled for FlightGear 3.2, currently being developed by TheTom and Zakalawe]]


'''Nasal Scripting'''
'''Nasal Scripting'''
Line 145: Line 138:


'''Highlighted new and improved aircraft'''
'''Highlighted new and improved aircraft'''
 
* [[Boeing 757-200]]: Improved autopilot and additional systems, like hydraulics and pneumatic. The aircraft comes with two engine options.
* Tuned autopilot and improved instrument stack for the Cessna337G Skymaster.
* [[Cessna 337G Skymaster]]: Tuned autopilot and improved instrument stack.
* All new systems and two engine options for the Boeing 757-200.
* [[Mainair Flash 2 Alpha]]: Simulated weightshift-control and new wing model.
* All new highly accurate external model for P-51D.
* [[North American P-51 Mustang|North American P-51D]]: All new highly accurate external model based on factory blueprints.
* Microlight Flash 2 Alpha with simulated weightshift-control and new wing model.
* [[Tupolev Tu-154B|Tupolev Tu-154B2]]: version 3.1


'''Other'''
'''Other'''

Revision as of 11:40, 30 July 2014

This changelog is a draft.

This changelog is currently being written for the FlightGear 3.2 release. To see what is being worked on, check out Changelog 3.2. Feel free to help! If you are aware of any FlightGear related changes, please add them to the changelog.
It's a good idea to check the newsletters since the last release, and the git commit history. To view the changelog for the most recent release, please see Changelog 3.0. We also encourage people to help by translating the changelog and appreciate all contributions, however please keep in mind that this changelog is not yet final!



Upcoming FlightGear Changelog

The FlightGear development team is delighted to announce the v3.2 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 ...

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 v3.2 for free from FlightGear.org

FlightGear - Fly Free!

Breaking Changes

Major enhancements in this release

Surface Light Effects & OpenSceneGraph 3.2

Stuart committed a change that brings surface lights, including VASI/PAPI/taxi/runway etc. into the xml-defined Effects framework. Kudos to Tim Moore for his original Effects work - it made it very straightforward to enhance with support for point sprites and a custom texture generator required.

The relevant effect is data/Effects/surface-lights.eff. It should allow development of ALS and Rembrandt variants.

Stuart also replaced some OSG color/normal binding calls that were removed in OSG3.2.0, apparently because they were slow. So, if your build fails, please check you've got a recent OSG build installed.

Core

  • Reset & re-init is merged and now enabled
  • A segfault related to scripted Nasal fgcommands (like used in joystick and other bindings) has been fixed ticket #1397
  • YASim versioning support for maintenance fixes (TorstenD)
  • FLITE TTS support
  • Windows dependencies have been updated
  • The integrated Map dialog now uses an azimuthal equidistant projection, for better representation in polar regions and across the International Date Line.

Aircraft Modeling

JSBSim

  • ground effects (see newsletter 02/2014)

Atmospheric Light Scattering

Atmospheric Light Scattering (ALS) is one of FlightGear's three rendering frameworks, with the aim of providing an integrated simulation of the interaction between weather, light and the environment.

Additions to ALS in version 3.2 include:

  • an experimental framework to render cloud shadows on the ground (requires Advanced Weather)
  • a substantial extension of cloud layer visibility using impostor techniques to 150 km
  • a new agriculture effect allowing to render fields without tiling artifacts
  • a new forest effect to simulate managed forest, varying tree size by patch
  • sparkle and fog effect on runway lights
  • much improved visual appearance of rock faces


Environment Rendering

  • EarthView, a simple orbital rendering engine based on projecting a textured sphere into the scene. By default, EarthView uses low resolution textures, however using hires textures e.g. from the NASA Visible Earth project very realistic results from altitudes above 100 km can be achieved.
  • new deciduous and needle tree textures with much improved visuals
  • new regional texture definitions for Ireland, Alaska/Northwest territories and US Southwest

Performance

Misc/Uncategorized

  • AIModels use PagedLOD
  • Optimise NavCache airport query
  • osg::Switch for masking scenery rendering
  • Torsten's metar work, newradio, mongoose httpd
  • HTTP: improve handling of connection errors
  • FGCamera (external addon, not yet reviewed/committed as of 03/2014)
  • Windows installer has been reworked
  • Windows installer creates 3 news directories pre-configured in FGRun:
    • {user}\Documents\FlightGear\Aircraft
    • {user}\Documents\FlightGear\TerraSync
    • {user}\Documents\FlightGear\Custom Scenery

Usability

  • Windows users are now able to use the scrollwheel in dialog lists


Internationalization


Scenery


Canvas System

FlightGear's fully scriptable 2D rendering system now includes improved APIs for creating maps and navigation displays amongst many other improvements. People no longer need to have programming experience to add a working ND to their aircraft, it can now be all done by copying and pasting 30 lines of text and customizing a few properties. The so called MapStructure back-end handles efficient updating of all ND layers transparently. Also, maps can now be mostly customized, including custom styling (colors, fonts, symbols etc).

  • Tom has pushed an update to git (simgear) which removes a lot of unneeded OpenGL state changes for Canvas paths. Depending on the GPU/driver this can lead to quite a noticeable performance improvement. For example, he was able to get from ~120ms down to ~45ms [2].
  • The MapStructure back-end used by the NavDisplay now supports symbol instancing, so that performance is improved
  • MapStructure-based layers can now be customized and styled
  • Tom added support for button/modifiers (mouse handling) [3]
  • CanvasImage now supports the http:// protocol for dynamically retrieving raster images. See the renamed src attribute (file is now deprecated).
  • As part of the ongoing effort on Unifying the 2D rendering backend via canvas, we have started re-implementing the integrated Map dialog using Nasal & Canvas instead of C++ 80}% completed
  • Custom event handlers can now be registered.
  • Canvas Layout Engine
  • Canvas-based dialog for downloading aircraft Aircraft Center

Nasal Scripting

  • getprop()/setprop() arguments (those that form a path) can now be numeric to specify a index, so:
getprop("canvas/by-index", "texture", 1, "name");
is now the same as:
getprop("canvas/by-index/texture[1]/name");
(see merge request 54 and actual commit)
  • A new fully-interactive Nasal GUI console based on Canvas has been added: Interactive Nasal Console
  • the hard-coded flight path history subsystem which samples aircraft position, which was previously only accessible to C++ code, has now been exposed to scripting space by Tom so that people can easily access the system and reuse the data for their own purpoes (e.g. for creating an instructor console). The first use-case will involve the new Canvas based Map dialog which will be 100% scripted by then.
Usage:
var hist = aircraft.history(); debug.dump(hist.pathForHistory(50));
  • cppbind: Nasal ghosts can now support arbitrary setters/getters for when members are not mapped to a C++ member/method.
  • Language enhancements
    • Bitwise operators (|, &, ^, ~, |=, &=, ^=)
    • Support for octal, decimal and hexadecimal numbers in literals as well as in strings

Documentation

Highlighted new and improved aircraft

Other

Bug fixes

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