FlightGear Newsletter August 2009

1,582 bytes added, 08:46, 25 July 2009
add Generic binary i/o protocol
==What's New in CVS==
===Configurable Shaders===
Tim Moore has committed a significant change to the graphics system that will allow much easier integration of OpenGL shaders within the simulator.
This change represented a lot of work on the infrastructure of the project for long-term benefit. While there aren't any significant graphics changes based on this yet, we can expect a lot in the future, including integration of some nice water effects.
===Generic Binary I/O protocol===
The input and output code of FlightGear has been very flexible for many years by allowing for communications to (and from) files, serial ports and network sockets just by altering a command-line option.
In conjunction with that FlightGear has had support for a generic ASCII only input-output protocol handler for a number of years now. It is called 'generic' because it allows handling of just about any information in any form by altering a user modifiable xml configuration file. The functionality has been extended further by the possibility to define an offset and a multiplication factor. This approach might not cover every possible scenario but it will probably be good enough for most cases.
With the help of Anders Gidenstam the generic protocol has recently been extended to also support binary input and output. The data will be tightly acked in a packet that contains the requested data described in the configuration file. Supported types are: boolean values (8-bit), integer values (32-bit), floating point values (32-bit) and double precision floating point values (64-bit). Andes also added the option to support network byte ordering (big-endian) or system native byte-ordering which will save some processing time when only one type of system is used. To make it easier to see how the packet will be handled by FlightGear a utility called generic-protocol-analyze has been created which can be found in FlightGear/utils/xmlgrep. It outputs the data offset and size along with it's description.
==New Wiki Articles ==