Changelog 2.12: Difference between revisions

From FlightGear wiki
Jump to navigation Jump to search
(New items; summarise long items)
Line 19: Line 19:


'''Aircraft Modeling'''
'''Aircraft Modeling'''
 
* A new tracking animation provides an easy way for aircraft developers to animate complex kinematic systems like gear scissors or landing gear doors attached to struts. The animation can be implemented in Blender and then exported to FlightGear.
The new tracking animation (similar to Blender's locked-track constraint) allows easily animating complex kinematic systems. For examples gear scissors, landing gear doors attached to struts (also with links and joints in between) or also torque struts connecting multiple gears with independent compression while still tracking each other can be realized. Also any type of strut for eg. cargo ramps can be easily animated. If you get used to Blender its a really powerful tool (I have problems if trying to work with other modelling programs :P) and with using the right scripts it gets a very neat tool for creating models for FlightGear. For example for a gear scissor just add an armature with two bones, add an IK constraint to the second bone and attach an element of the scissor to each bone, and you are done. You can watch the animation in Blender and using an exporter script now it is possible to watch exactly the same animation inside FlightGear. You don't need to guess any coordinates/axes/etc. and if you modify and object you just have to export it again, without manually modifying the animation xml. There are (currently) only two axes required. The lock-axis and the track-axis. They should be orthogonal, as the rotation is only possible round the lock-axis. Internally the track-axis is always orthonormalized to the lock-axis, as calculations always are performed in the plane normal to the lock-axis. See [[Tracking animation]].  


'''Environment'''
'''Environment'''


* Regionalized textures are available for the Middle East, the UK, Greenland, Indonesia, the arctic sea and Madagascar.
* Deciduous trees shed their foliage if they are above the snowline, creating a convincing winter look.
* The climatic snow line moves up and down as you fly around the world.
* The climatic snow line moves up and down as you fly around the world.


Line 47: Line 48:


''' Usability '''
''' Usability '''
 
* Tooltips provide feedback that computer pilots have to miss due to an absence of audio or haptic feedback. When you hover your mouse over a switch or lever, a little window tells you the current state of the switch.
Work has started on adding support for tooltips to FlightGear, Tooltips are a work-in-progress usability enhancement. They provide a way for a cockpit to be partially self-documenting, when a user explores, and can also provide a positive confirmation of state or action, which is often lacking in 3D cockpit interactions due to absence of audio or haptic feedback. (Which is a fancy way of saying, switches don't click or feel to move).
* The checklist feature has been expanded with an option to automatically perform the steps required to complete an item. You can sit back and watch as the virtual co-pilot executes the checklist item.
A tooltip is specified via a set-tooltip command in a pick (or slider or knob) animation's <hovered> bindings group. The tooltip is configured at this time, especially content and an ID. The mouse-handling system then displays the tooltip at the correct time. This design allows us to show tooltips at configurable points, either the standard method - after the mouse is stationary for a period of time - or in response to other actions, such as mouse clicks/drags.
* A knob animation generalizes the operation of knobs and switches in the cockpits of various aircraft.
Continue reading at [[Tooltips]]...
 
 
Stuart has pushed a further enhancement to the checklist feature. Aircraft authors may now add one or more <binding> elements to a checklist <item>. Conceptually, these are the actions that the user should execute to complete the item. The checklist GUI displays items with such <binding> elements with an additional [>] button. Clicking on the button executes the bindings, allowing the user to watch as the computer/co-pilot/instructor executes the checklist item.
The <binding> element is exactly as you would expect - so property-assign, nasal etc. works.
Due to the power of Nasal and properties, this feature only required 13 lines of code to write, most of which is displaying the button!
Stuart is planning to extend this function so that checklists with one or more items containing a <binding> element can have an (optional) button to execute the entire checklist. I'm still thinking of how best to implement this, as I think one would want a gap between each item.
Stuart highlights the property-interpolate command which provides a very convenient way to interpolate a property to a new value. See Docs/README.commands if you were unaware of this.
Stuart has updated the c172p checklists to use this feature, including some rather cute interpolations of the throttle, mixture and trim controls.
 
Continue reading at [[Aircraft Checklists]]...


''' Internationalization '''
''' Internationalization '''


FlightGear continued to benefit from contributions from across the globe.
* The menu and system messages have been translated to Portuguese.


''' Flight Planning and Route Manager '''
''' Flight Planning and Route Manager '''
Line 83: Line 73:
* Ensure every scenery model has own SGModelData. This makes Nasal unload hooks of scenery objects working again. Previously the same SGModelData instance was used for all objects which never got destroyed and therefore was not able to call any unload callback.
* Ensure every scenery model has own SGModelData. This makes Nasal unload hooks of scenery objects working again. Previously the same SGModelData instance was used for all objects which never got destroyed and therefore was not able to call any unload callback.
* SimGear's SGTimer class is now fully exposed to Nasal, see the new '''maketimer'''() API, available in FG >= 2.11 [[List of Nasal extension functions]]
* SimGear's SGTimer class is now fully exposed to Nasal, see the new '''maketimer'''() API, available in FG >= 2.11 [[List of Nasal extension functions]]
'''Rembrandt'''
'''Rembrandt'''
* A growing number of aircraft is compliant with the Rembrandt rendering technique.


'''AI Improvements'''
'''AI Improvements'''
* A broad range of AI aircraft received a fresh paintjob. The Airbus A320 and A330 have been remodeled, while some other models got improved animations.


''' Regional Textures '''
''' Regional Textures '''


'''Highlighted new and improved aircraft'''
'''Highlighted new and improved aircraft'''


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


* Additional joysticks and rudder pedals are supported out-of-the-box:
** Genius MetalStrike 3D
** Microsoft SideWinder Precision Racing Wheel (rudder) pedals


'''Bug fixes'''
'''Bug fixes'''


* 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.
* See [http://code.google.com/p/flightgear-bugs/issues/list?can=1&q=Milestone%3D2.12.0 our bugtracker] for an extensive, yet incomplete, list of the bugs fixed in this release.


[[Category:FlightGear changelogs]]
[[Category:FlightGear changelogs]]

Revision as of 20:41, 28 June 2013

This changelog is a draft.

This changelog is currently being written for the next FlightGear release. 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 2.10.


Upcoming FlightGear Changelog

The FlightGear development team is happy to announce the v2.12 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.12 for free from FlightGear.org

FlightGear - Fly Free!

Major enhancements in this release

Aircraft Modeling

  • A new tracking animation provides an easy way for aircraft developers to animate complex kinematic systems like gear scissors or landing gear doors attached to struts. The animation can be implemented in Blender and then exported to FlightGear.

Environment

  • Regionalized textures are available for the Middle East, the UK, Greenland, Indonesia, the arctic sea and Madagascar.
  • Deciduous trees shed their foliage if they are above the snowline, creating a convincing winter look.
  • The climatic snow line moves up and down as you fly around the world.

Transponder

The transponder instrument system has been overhauled, making it easier to use from panels, supporting Mode-S altitude encoding, and sending the important properties over multi-player. This will allow more realistic ATC interactions, since id (squawk) codes now matter! See this wiki page for more information on installing / updating the transponder installation in aircraft.

Performance

Many NavCache related startup issues experienced by Windows users (lag) were resolved

Portability

Portability for older systems without GLSL (shaders) support has been restored again, so that FlightGear no longer crashes on such systems.

Improved modularization


Atmospheric Light Scattering


Improved performance, reduced memory occupancy

Usability

  • Tooltips provide feedback that computer pilots have to miss due to an absence of audio or haptic feedback. When you hover your mouse over a switch or lever, a little window tells you the current state of the switch.
  • The checklist feature has been expanded with an option to automatically perform the steps required to complete an item. You can sit back and watch as the virtual co-pilot executes the checklist item.
  • A knob animation generalizes the operation of knobs and switches in the cockpits of various aircraft.

Internationalization

  • The menu and system messages have been translated to Portuguese.

Flight Planning and Route Manager

Canvas System

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:

  • The style setter system has been reworked, style setters are now only setup once for each element type and not for each element instance as before. A static map holds the setters for each element type. Also an animation type is stored which will later allow to animate properties of Canvas elements without specifying and animation type.
  • The Nasal/cppbind framework has been improved to expose more Canvas internals to Nasal space
  • Canvas textures can now not only be used as a aircraft/cockpit textures (instruments, MFDs) and for the HUD/GUI, but also for scenery objects. Canvas instances can now be placed on scenery objects. This allows for example creating animated signs/monitors. Tom has started to create a Visual Docking Guidance System, which is not fully functionally yet but should be complete enough to be used for a screenshot (eg. azimuth guidance is missing)
  • Enable texture repeat for Canvas images


Nasal Scripting

  • All methods exposed to the Nasal props module now accept an optional first parameter refering to another node by a relative path.
  • Ensure every scenery model has own SGModelData. This makes Nasal unload hooks of scenery objects working again. Previously the same SGModelData instance was used for all objects which never got destroyed and therefore was not able to call any unload callback.
  • SimGear's SGTimer class is now fully exposed to Nasal, see the new maketimer() API, available in FG >= 2.11 List of Nasal extension functions

Rembrandt

  • A growing number of aircraft is compliant with the Rembrandt rendering technique.

AI Improvements

  • A broad range of AI aircraft received a fresh paintjob. The Airbus A320 and A330 have been remodeled, while some other models got improved animations.

Regional Textures

Highlighted new and improved aircraft

Other

  • Additional joysticks and rudder pedals are supported out-of-the-box:
    • Genius MetalStrike 3D
    • Microsoft SideWinder Precision Racing Wheel (rudder) pedals

Bug fixes

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