<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.flightgear.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Xiii</id>
	<title>FlightGear wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.flightgear.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Xiii"/>
	<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/Special:Contributions/Xiii"/>
	<updated>2026-05-26T17:06:26Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.6</generator>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=FSweekend_2012&amp;diff=55374</id>
		<title>FSweekend 2012</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=FSweekend_2012&amp;diff=55374"/>
		<updated>2012-10-28T15:03:25Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* Booth information */ OS detail&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:FSweekend banner 2012.jpg|right]]&lt;br /&gt;
This wiki page lists all information related to [[FlightGear]]'s [[FSweekend]] 2012 attendance, as well as information for those that would like to pay a virtual visit. FlightGear will be represented by a team of regular FlightGear developers.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font size=&amp;quot;5&amp;quot;&amp;gt;'''&amp;lt;daysuntil in=&amp;quot;days&amp;quot;&amp;gt;03-November-2012&amp;lt;/daysuntil&amp;gt;''' until the FSweekend&amp;lt;/font&amp;gt; at 3&amp;amp;4 November 2012.&lt;br /&gt;
&lt;br /&gt;
== Booth information ==&lt;br /&gt;
&lt;br /&gt;
=== Equipment Checklist ===&lt;br /&gt;
[[File:C172MiniCockpit1.jpg|144px|right]]&lt;br /&gt;
[[File:Anaglyph-glasses.jpg|right]]&lt;br /&gt;
* CH Yoke (GdR)&lt;br /&gt;
* CH Rudder Pedals (GdR)&lt;br /&gt;
* One Linux/MS W7 based PC (AB)&lt;br /&gt;
** Core i7 + GTX 680 + 24&amp;quot;&lt;br /&gt;
** Saitek X52 throttle and stick&lt;br /&gt;
* C172P Panel (FGPanel Demo) with driving PC (TB)&lt;br /&gt;
* One Linux-based PC (DT)&lt;br /&gt;
** Three monitors&lt;br /&gt;
** Saitek Joystick&lt;br /&gt;
** Saitek Rudder Pedals &lt;br /&gt;
** Headset&lt;br /&gt;
** Sound system &lt;br /&gt;
* Projector screen and projector (DT)&lt;br /&gt;
* Pairs of anaglyph 3D-glasses: &lt;br /&gt;
** One (GdR)&lt;br /&gt;
** One (DT) &lt;br /&gt;
* Business cards&lt;br /&gt;
&lt;br /&gt;
'''Maybe:'''&lt;br /&gt;
* Thomas Krenn machine with 10 monitors (MS)&lt;br /&gt;
&lt;br /&gt;
== Flight information ==&lt;br /&gt;
=== Airports ===&lt;br /&gt;
[[File:EHLE_schipholgebouw.png|thumb|270px|The old terminal of Schiphol (1928), now located at EHLE.]]&lt;br /&gt;
Activities will mainly take place at and around [[Amsterdam Airport Schiphol]] (EHAM), [[Lelystad Airport]] (EHLE), [[Volkel Air Base]] (EHVK) and the [[VU University Medical Center|VU University Medical Center Helipad]] (EH0001).&lt;br /&gt;
&lt;br /&gt;
=== Charts ===&lt;br /&gt;
All charts that you may have to use on your flights are available at http://ais-netherlands.nl (AIS Publications &amp;gt; Integrated Package). Please note that these are the most up to date charts available, so certain situations might not have been changed in FlightGear (EHAM, EHLE and EHVK taxiways should be correct though).&lt;br /&gt;
&lt;br /&gt;
Parking positions have been created for most of the Dutch airports including EHAM, EHRD, EHVK and EHLE (A1-A6, B1 and B2).&lt;br /&gt;
&lt;br /&gt;
All named airports are for civil usage, except for [[Volkel Air Base]] (EHVK). This base will be occupied by the (AI) F-16 squadrons and likely one setup in Lelystad. Feel free to join with your F-16 or other Dutch/NATO [[:Category:Military aircraft|military aircraft]].&lt;br /&gt;
&lt;br /&gt;
=== Weather information ===&lt;br /&gt;
Reallife weather information can be found at the KNMI (Dutch Meteorological institute) website.&lt;br /&gt;
* [http://knmi.nl/actueel/metar.html METAR] current weather at airports&lt;br /&gt;
* [http://knmi.nl/waarschuwingen_en_verwachtingen/luchtvaart/nederlandse_vliegveldverwachtingen.html TAF] expected weather at airports&lt;br /&gt;
If the weather is really bad, it is likely that the FSweekend guys will use a preset weather scenario.&lt;br /&gt;
&lt;br /&gt;
=== Scenery ===&lt;br /&gt;
For FSweekend 2012 we're planning to show consistent Scenery which has been available for testing before the show and doesn't require manual fiddling on-stage. That way we can safely show the latest scenery on every machine. Please make sure everything is in the database well before November ;-)&lt;br /&gt;
&lt;br /&gt;
== External links==&lt;br /&gt;
* [http://www.fsweekend.com Official FSweekend website]&lt;br /&gt;
* [http://www.facebook.com/events/315742308452348/ Facebook event page]&lt;br /&gt;
* [https://plus.google.com/u/0/events/ctr3pnig5mnp9q94p23gvcc8vus Google+ event page]&lt;br /&gt;
&lt;br /&gt;
[[Category:FSweekend]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=FSweekend_2012&amp;diff=55257</id>
		<title>FSweekend 2012</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=FSweekend_2012&amp;diff=55257"/>
		<updated>2012-10-23T09:11:48Z</updated>

		<summary type="html">&lt;p&gt;Xiii: added xiii's PC in Equipment Checklist&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:FSweekend banner 2012.jpg|right]]&lt;br /&gt;
This wiki page lists all information related to [[FlightGear]]'s [[FSweekend]] 2012 attendance, as well as information for those that'd like to pay a virtual visit. FlightGear will be represented by a team of regular FlightGear developers and users.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font size=&amp;quot;5&amp;quot;&amp;gt;'''&amp;lt;daysuntil in=&amp;quot;days&amp;quot;&amp;gt;03-November-2012&amp;lt;/daysuntil&amp;gt;''' until the FSweekend&amp;lt;/font&amp;gt; at 3&amp;amp;4 November 2012.&lt;br /&gt;
&lt;br /&gt;
== Booth information ==&lt;br /&gt;
&lt;br /&gt;
=== Equipment Checklist ===&lt;br /&gt;
* CH Yoke (GdR)&lt;br /&gt;
* CH Rudder Pedals (GdR)&lt;br /&gt;
* Core i7 + GTX 680 + X52 throttle and stick + 24&amp;quot; (AB) &lt;br /&gt;
* Pairs of anaglyph 3D-glasses:&lt;br /&gt;
** One (GdR)&lt;br /&gt;
** One (DT) &lt;br /&gt;
* Business cards&lt;br /&gt;
&lt;br /&gt;
'''Maybe:'''&lt;br /&gt;
* Thomas Krenn machine with 10 monitors (MS)&lt;br /&gt;
&lt;br /&gt;
====15 years anniversary====&lt;br /&gt;
This year it's 15 (!) years ago that the first version of FlightGear was released (July 17, 1997). To celebrate this event, we might bring some special goodies to the booth:&lt;br /&gt;
&lt;br /&gt;
* Balloons with logo to cheer up our booth.&lt;br /&gt;
* One (old) computer running a very old version (preferably the very first version) of FlightGear.&lt;br /&gt;
&lt;br /&gt;
== Flight information ==&lt;br /&gt;
=== Airports ===&lt;br /&gt;
[[File:EHLE_schipholgebouw.png|thumb|270px|The old terminal of Schiphol (1928), now located at EHLE.]]&lt;br /&gt;
Activities will mainly take place at and around [[Amsterdam Airport Schiphol]] (EHAM), [[Lelystad Airport]] (EHLE), [[Volkel Air Base]] (EHVK) and the [[VU University Medical Center|VU University Medical Center Helipad]] (EH0001).&lt;br /&gt;
&lt;br /&gt;
=== Charts ===&lt;br /&gt;
All charts that you may have to use on your flights are available at http://ais-netherlands.nl (AIS Publications &amp;gt; Integrated Package). Please note that these are the most up to date charts available, so certain situations might not have been changed in FlightGear (EHAM, EHLE and EHVK taxiways should be correct though).&lt;br /&gt;
&lt;br /&gt;
Parking positions have been created for most of the Dutch airports including EHAM, EHRD, EHVK and EHLE (A1-A6, B1 and B2).&lt;br /&gt;
&lt;br /&gt;
All named airports are for civil usage, except for [[Volkel Air Base]] (EHVK). This base will be occupied by the (AI) F-16 squadrons and likely one setup in Lelystad. Feel free to join with your F-16 or other Dutch/NATO [[:Category:Military aircraft|military aircraft]]. For EHVK specific departure and recovery procedures please visit http://cenor.org/pages/proc_eh.html and dowload the corresponding .pdf file.&lt;br /&gt;
&lt;br /&gt;
=== Weather information ===&lt;br /&gt;
Reallife weather information can be found at the KNMI (Dutch Meteorological institute) website.&lt;br /&gt;
* [http://knmi.nl/actueel/metar.html METAR] current weather at airports&lt;br /&gt;
* [http://knmi.nl/waarschuwingen_en_verwachtingen/luchtvaart/nederlandse_vliegveldverwachtingen.html TAF] expected weather at airports&lt;br /&gt;
If the weather is really bad, it is likely that the FSweekend guys will use a preset weather scenario.&lt;br /&gt;
&lt;br /&gt;
=== Scenery ===&lt;br /&gt;
For FSweekend 2012 we're planning to show consistent Scenery which has been available for testing before the show and doesn't require manual fiddling on-stage. That way we can safely show the latest scenery on every machine. Please make sure everything is in the database well before November ;-)&lt;br /&gt;
&lt;br /&gt;
== External links==&lt;br /&gt;
* [http://www.fsweekend.com Official FSweekend website]&lt;br /&gt;
* [http://www.facebook.com/events/315742308452348/ Facebook event page]&lt;br /&gt;
&lt;br /&gt;
[[Category:FSweekend]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Improving_real_close_formation_flight&amp;diff=51943</id>
		<title>Improving real close formation flight</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Improving_real_close_formation_flight&amp;diff=51943"/>
		<updated>2012-07-23T21:13:01Z</updated>

		<summary type="html">&lt;p&gt;Xiii: i.e. shall be written in italic&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==The movies==&lt;br /&gt;
&lt;br /&gt;
First of all, I'd like to show you what's possible to achieve in Flightgear:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[http://www.youtube.com/watch?v=LyBUPlf5NSw diamond formation flight]&lt;br /&gt;
&lt;br /&gt;
[http://www.youtube.com/watch?v=2eGOdBsd8Os F-4 training in TFFG]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Next is, how was it made:&lt;br /&gt;
&lt;br /&gt;
* take a plane with a JSBsim fdm (Yasim is buggy when it comes to display plane in the future cf [http://code.google.com/p/flightgear-bugs/issues/detail?id=202 this bug report] ;&lt;br /&gt;
* setup a local fgms on another PC ;&lt;br /&gt;
* fly the first plane, sending to the local fgms, and record the outgoing UDP packet from the PC running Flightgear (Wireshark software with some adapted rules) ;&lt;br /&gt;
* cheat the Flightgear source code (src/AIModel/AIMultiplayer.cxx and .hxx) to make the other planes displayed in the future, using the already present prediction system (and try to smooth the rubber band phenomenon) ;&lt;br /&gt;
* find the best value that matches your configuration ;&lt;br /&gt;
* now start Flightgear with the second plane, start recording again the UDP packets, and play again the previously recorded packets. Now it's time to show your flying skills!&lt;br /&gt;
* do this again with the number 3 and 4, and during the 4th run record the video to have a first camera view ;&lt;br /&gt;
* take the [[UFO]] (the video assistant was broken for me) and do another camera view ;&lt;br /&gt;
* make the movie, and voil&amp;amp;agrave;...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Record replay mechanism ==&lt;br /&gt;
&lt;br /&gt;
As described above, external softs were used to record and replay the planes: Wireshark, tcprewrite and tcpreplay.&lt;br /&gt;
Maybe there's a way to do this from Flightgear, but it was the easiest for me.&lt;br /&gt;
&lt;br /&gt;
How: The outgoing UDP packets from the FG machine are recorded (FG run with an input port different from the output port), while sending to a local fgms on another PC.&lt;br /&gt;
After some tcprewrite magic, the recorded file is ready to be sent again to fgms from the FG machine, and this time the record will include the replayed packet as well as the new FG session (which use a different input port).&lt;br /&gt;
&lt;br /&gt;
After the last run, the file include the 4 planes together, ready to be sent again any time to the local fgms. Now we can play it several time to have different camera views...&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
== Multiplayer patch ==&lt;br /&gt;
&lt;br /&gt;
The patch used was [http://janodesbois.free.fr/flightgear/lag-adjust/mp-lag_22jui2012.diff this one]. It creates two properties in each mp plane: &lt;br /&gt;
&lt;br /&gt;
* controls/compensate-lag (bool) used to make the system work, or keep the old behaviour&lt;br /&gt;
* controls/player-lag: the time to change the displayed time (referenced from the received packet time) a positive value display in the future (here I used 0.12) and a negative make the display be late, allowing to be more smooth in case of jitter (for the UFO pass, it was -0.2).&lt;br /&gt;
I plan to have the user set the server lag for this property (or better a nasal part) , for that I need some tests with others pilots.&lt;br /&gt;
&lt;br /&gt;
For Windows users, I can provide a modified binary, along with the needed DLL, if you want to have a go and test it (32 or win64 ), just get in touch...&lt;br /&gt;
Mac or Linux users have to compile the patched version :)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===How FG currently deal with MP packets===&lt;br /&gt;
&lt;br /&gt;
I am far from being a C++ developer, but I can understand how it works, and I can try some easy code cheat. I will try to explain what I know, but keep in mind english in not my native language :) . &lt;br /&gt;
For now, the received MP packets are first ordered by sending time , and then FG tries to keep the MP displaying in a manner that we are always before the last packet, to have only a linear interpolation between two packets to do.&lt;br /&gt;
(That means for a 10 packets/s speed, we display the plane at least where it was 1/10s before the last packet..&lt;br /&gt;
The packets of no more use are then dropped from the stack.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Lag===&lt;br /&gt;
&lt;br /&gt;
In the case of multiplayer flight, we see the other plane retarded by:&lt;br /&gt;
* the transmission lag (travel time between the sender and the receiver )&lt;br /&gt;
* the lag added by the MP displaying code (more than 0.1s) &lt;br /&gt;
&lt;br /&gt;
If we want a good formation flight, we need to display the other planes in the future, in my setup, I needed to display other planes 0.12 s in the future.&lt;br /&gt;
If you want to have a look at this lag effect, simply use 127.0.0.1 as server, [http://janodesbois.free.fr/fg_screens/lag_test/f4n_normal_lag.png then you will see your plane], together with your AI counterpart, far behind once you've got some speed.&lt;br /&gt;
With the patch and after some fine tuning, you can have [http://janodesbois.free.fr/fg_screens/lag_test/f4n-compensated_lag.png a better matching].&lt;br /&gt;
&lt;br /&gt;
[http://janodesbois.free.fr/fg_screens/lag_test/refuel.jpg Example with two MP planes in refuelling action]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Jitter===&lt;br /&gt;
&lt;br /&gt;
The records were made on a local network, so the lag was here, but the jitter was minimal. What happens when we add jitter to the UDP packet, ''i.e.'' when the time taken to travel from a player to another varies?&lt;br /&gt;
The multiplayer code has got a basic prediction system, but it is nearly never used, if the packets are retarded, FG makes the plane &amp;quot;waiting in the sky&amp;quot; and if they suddenly regain a fast lag travel, we will see the plane accelerating. This is what is called &amp;quot;rubber band phenomenon&amp;quot; among formation flightgear pilots, the thing that makes a refuelling impossible, or break a tow in a glider session...&lt;br /&gt;
It is possible to address this jitter, by using the sending packets time, and guessing what is due to jitter, and what is due to clock drift between the sender/receiver, but for now I lack the skills. My patch just try to make the time adjustment system more smooth, thus using more the prediction system.&lt;br /&gt;
&lt;br /&gt;
A thing to consider here is to choose the same server, and one which give minimal jitter.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Existing prediction system===&lt;br /&gt;
&lt;br /&gt;
Just a few words about the system used to display the planes in the future.&lt;br /&gt;
It consists of Euler steps, starting from the last packet position and using the MP plane velocity and rotation data&lt;br /&gt;
* It works only without wind for Yasim aircrafts, as the speed transmitted in the UDP packet is the speed in the air mass and not in the reference frame as the JSBsim planes do.&lt;br /&gt;
* It was not intended to be used intensively, we always compute from the last packet position, and that charges the CPU if we try to predict to far in the future.&lt;br /&gt;
* This look OK on straight line, but the more you rotate, the more jumpy the displayed plane become, see for example the top of the cuban half figure in [http://www.youtube.com/watch?v=2eGOdBsd8Os the second video] (0'36), where this effect is clearly visible in number4 internal view. Note that all the external views were made with the UFO, with a display of the plane in the past, so no prediction system is at use.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Next step ==&lt;br /&gt;
&lt;br /&gt;
The next step is to try this with real mutiplayers, to see what's good, and what's wrong :)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==TODO list==&lt;br /&gt;
&lt;br /&gt;
* Write a nasal part, to choose which planes to display in the future: on a distance base, from a &amp;quot;friend/wingman list, go more in the past when no direct interaction is needed (with camera/ufo, if we are just observer)&lt;br /&gt;
* Try something to guess what is jitter and what is clock drift ...&lt;br /&gt;
* Improve the prediction system, by using a dt approach instead of starting from last packet time at each computation&lt;br /&gt;
* Find what value is needed depending on the server ping, and the frequency of packet sending to have planes concordant positions from each player point of view.&lt;br /&gt;
&lt;br /&gt;
[[Category:Multiplayer]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Improving_real_close_formation_flight&amp;diff=51942</id>
		<title>Improving real close formation flight</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Improving_real_close_formation_flight&amp;diff=51942"/>
		<updated>2012-07-23T20:15:15Z</updated>

		<summary type="html">&lt;p&gt;Xiii: Typos, caps, and space between sections.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==The movies==&lt;br /&gt;
&lt;br /&gt;
First of all, I'd like to show you what's possible to achieve in Flightgear:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[http://www.youtube.com/watch?v=LyBUPlf5NSw diamond formation flight]&lt;br /&gt;
&lt;br /&gt;
[http://www.youtube.com/watch?v=2eGOdBsd8Os F-4 training in TFFG]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Next is, how was it made:&lt;br /&gt;
&lt;br /&gt;
* take a plane with a JSBsim fdm (Yasim is buggy when it comes to display plane in the future cf [http://code.google.com/p/flightgear-bugs/issues/detail?id=202 this bug report] ;&lt;br /&gt;
* setup a local fgms on another PC ;&lt;br /&gt;
* fly the first plane, sending to the local fgms, and record the outgoing UDP packet from the PC running Flightgear (Wireshark software with some adapted rules) ;&lt;br /&gt;
* cheat the Flightgear source code (src/AIModel/AIMultiplayer.cxx and .hxx) to make the other planes displayed in the future, using the already present prediction system (and try to smooth the rubber band phenomenon) ;&lt;br /&gt;
* find the best value that matches your configuration ;&lt;br /&gt;
* now start Flightgear with the second plane, start recording again the UDP packets, and play again the previously recorded packets. Now it's time to show your flying skills!&lt;br /&gt;
* do this again with the number 3 and 4, and during the 4th run record the video to have a first camera view ;&lt;br /&gt;
* take the [[UFO]] (the video assistant was broken for me) and do another camera view ;&lt;br /&gt;
* make the movie, and voil&amp;amp;agrave;...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Record replay mechanism ==&lt;br /&gt;
&lt;br /&gt;
As described above, external softs were used to record and replay the planes: Wireshark, tcprewrite and tcpreplay.&lt;br /&gt;
Maybe there's a way to do this from Flightgear, but it was the easiest for me.&lt;br /&gt;
&lt;br /&gt;
How: The outgoing UDP packets from the FG machine are recorded (FG run with an input port different from the output port), while sending to a local fgms on another PC.&lt;br /&gt;
After some tcprewrite magic, the recorded file is ready to be sent again to fgms from the FG machine, and this time the record will include the replayed packet as well as the new FG session (which use a different input port).&lt;br /&gt;
&lt;br /&gt;
After the last run, the file include the 4 planes together, ready to be sent again any time to the local fgms. Now we can play it several time to have different camera views...&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
== Multiplayer patch ==&lt;br /&gt;
&lt;br /&gt;
The patch used was [http://janodesbois.free.fr/flightgear/lag-adjust/mp-lag_22jui2012.diff this one]. It creates two properties in each mp plane: &lt;br /&gt;
&lt;br /&gt;
* controls/compensate-lag (bool) used to make the system work, or keep the old behaviour&lt;br /&gt;
* controls/player-lag: the time to change the displayed time (referenced from the received packet time) a positive value display in the future (here I used 0.12) and a negative make the display be late, allowing to be more smooth in case of jitter (for the UFO pass, it was -0.2).&lt;br /&gt;
I plan to have the user set the server lag for this property (or better a nasal part) , for that I need some tests with others pilots.&lt;br /&gt;
&lt;br /&gt;
For Windows users, I can provide a modified binary, along with the needed DLL, if you want to have a go and test it (32 or win64 ), just get in touch...&lt;br /&gt;
Mac or Linux users have to compile the patched version :)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===How FG currently deal with MP packets===&lt;br /&gt;
&lt;br /&gt;
I am far from being a C++ developer, but I can understand how it works, and I can try some easy code cheat. I will try to explain what I know, but keep in mind english in not my native language :) . &lt;br /&gt;
For now, the received MP packets are first ordered by sending time , and then FG tries to keep the MP displaying in a manner that we are always before the last packet, to have only a linear interpolation between two packets to do.&lt;br /&gt;
(That means for a 10 packets/s speed, we display the plane at least where it was 1/10s before the last packet..&lt;br /&gt;
The packets of no more use are then dropped from the stack.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Lag===&lt;br /&gt;
&lt;br /&gt;
In the case of multiplayer flight, we see the other plane retarded by:&lt;br /&gt;
* the transmission lag (travel time between the sender and the receiver )&lt;br /&gt;
* the lag added by the MP displaying code (more than 0.1s) &lt;br /&gt;
&lt;br /&gt;
If we want a good formation flight, we need to display the other planes in the future, in my setup, I needed to display other planes 0.12 s in the future.&lt;br /&gt;
If you want to have a look at this lag effect, simply use 127.0.0.1 as server, [http://janodesbois.free.fr/fg_screens/lag_test/f4n_normal_lag.png then you will see your plane], together with your AI counterpart, far behind once you've got some speed.&lt;br /&gt;
With the patch and after some fine tuning, you can have [http://janodesbois.free.fr/fg_screens/lag_test/f4n-compensated_lag.png a better matching].&lt;br /&gt;
&lt;br /&gt;
[http://janodesbois.free.fr/fg_screens/lag_test/refuel.jpg Example with two MP planes in refuelling action]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Jitter===&lt;br /&gt;
&lt;br /&gt;
The records were made on a local network, so the lag was here, but the jitter was minimal. What happens when we add jitter to the UDP packet, i.e. when the time taken to travel from a player to another varies?&lt;br /&gt;
The multiplayer code has got a basic prediction system, but it is nearly never used, if the packets are retarded, FG makes the plane &amp;quot;waiting in the sky&amp;quot; and if they suddenly regain a fast lag travel, we will see the plane accelerating. This is what is called &amp;quot;rubber band phenomenon&amp;quot; among formation flightgear pilots, the thing that makes a refuelling impossible, or break a tow in a glider session...&lt;br /&gt;
It is possible to address this jitter, by using the sending packets time, and guessing what is due to jitter, and what is due to clock drift between the sender/receiver, but for now I lack the skills. My patch just try to make the time adjustment system more smooth, thus using more the prediction system.&lt;br /&gt;
&lt;br /&gt;
A thing to consider here is to choose the same server, and one which give minimal jitter.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Existing prediction system===&lt;br /&gt;
&lt;br /&gt;
Just a few words about the system used to display the planes in the future.&lt;br /&gt;
It consists of Euler steps, starting from the last packet position and using the MP plane velocity and rotation data&lt;br /&gt;
* It works only without wind for Yasim aircrafts, as the speed transmitted in the UDP packet is the speed in the air mass and not in the reference frame as the JSBsim planes do.&lt;br /&gt;
* It was not intended to be used intensively, we always compute from the last packet position, and that charges the CPU if we try to predict to far in the future.&lt;br /&gt;
* This look OK on straight line, but the more you rotate, the more jumpy the displayed plane become, see for example the top of the cuban half figure in [http://www.youtube.com/watch?v=2eGOdBsd8Os the second video] (0'36), where this effect is clearly visible in number4 internal view. Note that all the external views were made with the UFO, with a display of the plane in the past, so no prediction system is at use.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Next step ==&lt;br /&gt;
&lt;br /&gt;
The next step is to try this with real mutiplayers, to see what's good, and what's wrong :)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==TODO list==&lt;br /&gt;
&lt;br /&gt;
* Write a nasal part, to choose which planes to display in the future: on a distance base, from a &amp;quot;friend/wingman list, go more in the past when no direct interaction is needed (with camera/ufo, if we are just observer)&lt;br /&gt;
* Try something to guess what is jitter and what is clock drift ...&lt;br /&gt;
* Improve the prediction system, by using a dt approach instead of starting from last packet time at each computation&lt;br /&gt;
* Find what value is needed depending on the server ping, and the frequency of packet sending to have planes concordant positions from each player point of view.&lt;br /&gt;
&lt;br /&gt;
[[Category:Multiplayer]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=General_Dynamics_F-16/Development&amp;diff=51500</id>
		<title>General Dynamics F-16/Development</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=General_Dynamics_F-16/Development&amp;diff=51500"/>
		<updated>2012-07-04T11:12:09Z</updated>

		<summary type="html">&lt;p&gt;Xiii: Radar fixed&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page will organize the development efforts for the F-16. See [[F16]].&lt;br /&gt;
&lt;br /&gt;
=Efforts=&lt;br /&gt;
&lt;br /&gt;
==Personnel==&lt;br /&gt;
Erik Hofman has kindly granted username: Blackbird to continue development on the F-16 model. This page was created to organize all development for this aircraft.&lt;br /&gt;
&lt;br /&gt;
==Focus==&lt;br /&gt;
Development will attempt to accurately model the FlightGear F-16. Since the documentation for the MLU and F-16 C Block 50 variant is available in the form of the MLU manuals, many aspects of the current aircraft can be improved.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=System Development=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;High Priority&lt;br /&gt;
*Bind cockpit keys/buttons&lt;br /&gt;
*MFD/DED XML and Nasal scripts&lt;br /&gt;
** left MFD: radar works as expected &amp;lt;del&amp;gt;but is not displayed&amp;lt;/del&amp;gt; ''FIXED in 2.8 GIT 20120704-10:50''.&lt;br /&gt;
*Steerpoint management&lt;br /&gt;
*EWMS for chaff/flare deployment&lt;br /&gt;
*MMC and CADC outputs (airspeed, GPS, system altitude, hack times, etc.)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Medium Priority&lt;br /&gt;
*Optimize nasal code(better scripting, OOP)&lt;br /&gt;
*IFF, transponder&lt;br /&gt;
*VHF/UHF radios, TACAN, IFF&lt;br /&gt;
*FCR in MFD format&lt;br /&gt;
*RWR: needs some kind of point of view animation (ie. move the P.O.V. on click on the RWR so the whole screen can be seen). Works as expected.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Low Priority&lt;br /&gt;
*Improve Cockpit Models&lt;br /&gt;
*Improve Textures&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Avionics==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Units&lt;br /&gt;
*AIFF (Advanced Identification Friend or Foe)&lt;br /&gt;
*MMC (Modular Mission Computer)&lt;br /&gt;
*UFC (Upfront Controls) &lt;br /&gt;
*GPS (Global Positioning System)&lt;br /&gt;
*EUPDG/MFDS (Enhanced Upgraded Programmable Display Generator)&lt;br /&gt;
*SMS (Stores Management Set)&lt;br /&gt;
*IDM (Integrated Data Modem)&lt;br /&gt;
*CADC (Central Air Data Computer)&lt;br /&gt;
*INU (Inertial Navigation Unit)&lt;br /&gt;
*EWMS (Electronic Warfare Management System)&lt;br /&gt;
*FCR (Fire Control Radar)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;TDL&lt;br /&gt;
*Unified Logic development for ALL systems&lt;br /&gt;
*MFD Buttons&lt;br /&gt;
*MFD Display&lt;br /&gt;
*Steerpoint Management&lt;br /&gt;
*TACAN&lt;br /&gt;
*IDM/Radio Integration&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Progress&lt;br /&gt;
*UFC buttons enabled, Nasal page/key handler, XML display&lt;br /&gt;
*MFD Nasal page/key handler, XML display&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Resources&lt;br /&gt;
*[[Howto:Coding a Boeing CDU]]&lt;br /&gt;
*[[Howto:Implement a Control Display Unit]]&lt;br /&gt;
*[[Nasal CDU Framework]]&lt;br /&gt;
*[[Nasal Display Matrix Framework]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Electrical==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;TDL&lt;br /&gt;
*Create buses and components for avionics units, lighting, and other systems&lt;br /&gt;
*Link panel buttons to relevant switches&lt;br /&gt;
*Update loops to run only when electrical power is supplied&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Progress&lt;br /&gt;
*Nasal-Based Electrical System integrated into f16-set.xml&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Resources&lt;br /&gt;
*A Nasal-Based Electrical System for Flightgear, v 1.1 by Gary &amp;quot;Buckaroo&amp;quot; Neely - [http://www.buckarooshangar.com/flightgear/electrical_1.html]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Hydraulics==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Fuel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Failures==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Original TDL==&lt;br /&gt;
Issues to be fixed shortly:&lt;br /&gt;
* The first time the user change the view (ie. by hiting &amp;quot;v&amp;quot;) there is a 10/15 seconds pause.&lt;br /&gt;
** This seems to be due to the liveries textures. Removing the Livery choice and all associated entry in the -set file doesn't change the delay. Then reducing and flatening (remove alpha channel) the main texture f16.rgb from 2048 to 1024 px reduce the delay to 6/7 sec, then flatening the transparent logo texture f16-trans.rgb reduce the delay to 3/sec.&lt;br /&gt;
** Solution: switch to PNG textures, remove transparency on logos or even remove logos. Use a different mapping layout with 4 x 1024^2 textures instead of 1 x 2048^2 texture. Optimize surface usage in the textures, flaten textures as much as possible. (see much more complicated and detailled f-14b which doesn't suffer delay) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TDL FDM:&lt;br /&gt;
* Startup sequence&lt;br /&gt;
* Main U/C is above ground.&lt;br /&gt;
* Vibration when accelerating on the runway for takeof.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TDL Outside&lt;br /&gt;
* flaps are in wrong position and can't be triggered.&lt;br /&gt;
** that's because the f16 is flight computer controlled, so this is correct and NOT an error. (this to be moved in flight documentation)&lt;br /&gt;
* pilot's shoulder patch is empty. (remove ?)&lt;br /&gt;
* engine turbines do not rotate (is it useful ?)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TDL Cockpit and systems:&lt;br /&gt;
* HSI 3d model and textures.&lt;br /&gt;
* internal/external lighting panel.&lt;br /&gt;
* FMD's buttons pick animation. Define a logic in the FMD interactivity ?&lt;br /&gt;
* ICP better texture. buttons pick animation. Define a logic in the ICP interactivity ?&lt;br /&gt;
* HUD modes:&lt;br /&gt;
** A/A mode&lt;br /&gt;
** Basic nav mode (those could be a first step in order to provide usability in short term)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sounds: (Low priority)&lt;br /&gt;
* Establish a list of all sounds that can be produced by the F-16 and its driver:&lt;br /&gt;
&lt;br /&gt;
Cockpit:&lt;br /&gt;
** switches&lt;br /&gt;
** knobs&lt;br /&gt;
** levers&lt;br /&gt;
** buttons&lt;br /&gt;
** wheels (ICP)&lt;br /&gt;
** rudder pedals&lt;br /&gt;
** ejection seat&lt;br /&gt;
** canopy **implemented**&lt;br /&gt;
** canopy lock **implemented**&lt;br /&gt;
&lt;br /&gt;
Audio:&lt;br /&gt;
** &amp;quot;bitching betty&amp;quot;&lt;br /&gt;
*** missile launch&lt;br /&gt;
*** warning **implemented**&lt;br /&gt;
*** chaff/flare&lt;br /&gt;
*** jammer&lt;br /&gt;
** RWR&lt;br /&gt;
*** radar signature identification sounds&lt;br /&gt;
**** radar spike&lt;br /&gt;
**** radar lock&lt;br /&gt;
** gear horn (currently implemented as alert?)&lt;br /&gt;
&lt;br /&gt;
Pilot:&lt;br /&gt;
** breathing&lt;br /&gt;
** movement&lt;br /&gt;
** brevity comms&lt;br /&gt;
&lt;br /&gt;
External-sounds:&lt;br /&gt;
** engine **implemented**&lt;br /&gt;
** landing gear&lt;br /&gt;
*** up&lt;br /&gt;
*** down&lt;br /&gt;
*** broken&lt;br /&gt;
** ordnance&lt;br /&gt;
*** jettison store(s)&lt;br /&gt;
*** bomb drop&lt;br /&gt;
*** missile launch&lt;br /&gt;
*** 20mm cannon **implemented**&lt;br /&gt;
** damage&lt;br /&gt;
*** airframe overstress&lt;br /&gt;
*** gun hit&lt;br /&gt;
*** explosion&lt;br /&gt;
** Mid air refueling &lt;br /&gt;
*** refueling door&lt;br /&gt;
**** open&lt;br /&gt;
**** close&lt;br /&gt;
*** tank boom (tanker aircraft)&lt;br /&gt;
**** connect&lt;br /&gt;
**** disconnect&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=General_Dynamics_F-16/Development&amp;diff=51493</id>
		<title>General Dynamics F-16/Development</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=General_Dynamics_F-16/Development&amp;diff=51493"/>
		<updated>2012-07-03T23:12:26Z</updated>

		<summary type="html">&lt;p&gt;Xiii: checked the radar and RWR&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page will organize the development efforts for the F-16. See [[F16]].&lt;br /&gt;
&lt;br /&gt;
=Efforts=&lt;br /&gt;
&lt;br /&gt;
==Personnel==&lt;br /&gt;
Erik Hofman has kindly granted username: Blackbird to continue development on the F-16 model. This page was created to organize all development for this aircraft.&lt;br /&gt;
&lt;br /&gt;
==Focus==&lt;br /&gt;
Development will attempt to accurately model the FlightGear F-16. Since the documentation for the MLU and F-16 C Block 50 variant is available in the form of the MLU manuals, many aspects of the current aircraft can be improved.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=System Development=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;High Priority&lt;br /&gt;
*Bind cockpit keys/buttons&lt;br /&gt;
*MFD/DED XML and Nasal scripts&lt;br /&gt;
** left MFD: radar works as expected but is not displayed.&lt;br /&gt;
*Steerpoint management&lt;br /&gt;
*EWMS for chaff/flare deployment&lt;br /&gt;
*MMC and CADC outputs (airspeed, GPS, system altitude, hack times, etc.)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Medium Priority&lt;br /&gt;
*Optimize nasal code(better scripting, OOP)&lt;br /&gt;
*IFF, transponder&lt;br /&gt;
*VHF/UHF radios, TACAN, IFF&lt;br /&gt;
*FCR in MFD format&lt;br /&gt;
*RWR: needs some kind of point of view animation (ie. move the P.O.V. on click on the RWR so the whole screen can be seen). Works as expected.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Low Priority&lt;br /&gt;
*Improve Cockpit Models&lt;br /&gt;
*Improve Textures&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Avionics==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Units&lt;br /&gt;
*AIFF (Advanced Identification Friend or Foe)&lt;br /&gt;
*MMC (Modular Mission Computer)&lt;br /&gt;
*UFC (Upfront Controls) &lt;br /&gt;
*GPS (Global Positioning System)&lt;br /&gt;
*EUPDG/MFDS (Enhanced Upgraded Programmable Display Generator)&lt;br /&gt;
*SMS (Stores Management Set)&lt;br /&gt;
*IDM (Integrated Data Modem)&lt;br /&gt;
*CADC (Central Air Data Computer)&lt;br /&gt;
*INU (Inertial Navigation Unit)&lt;br /&gt;
*EWMS (Electronic Warfare Management System)&lt;br /&gt;
*FCR (Fire Control Radar)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;TDL&lt;br /&gt;
*Unified Logic development for ALL systems&lt;br /&gt;
*MFD Buttons&lt;br /&gt;
*MFD Display&lt;br /&gt;
*Steerpoint Management&lt;br /&gt;
*TACAN&lt;br /&gt;
*IDM/Radio Integration&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Progress&lt;br /&gt;
*UFC buttons enabled, Nasal page/key handler, XML display&lt;br /&gt;
*MFD Nasal page/key handler, XML display&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Resources&lt;br /&gt;
*[[Howto:Coding a Boeing CDU]]&lt;br /&gt;
*[[Howto:Implement a Control Display Unit]]&lt;br /&gt;
*[[Nasal CDU Framework]]&lt;br /&gt;
*[[Nasal Display Matrix Framework]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Electrical==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;TDL&lt;br /&gt;
*Create buses and components for avionics units, lighting, and other systems&lt;br /&gt;
*Link panel buttons to relevant switches&lt;br /&gt;
*Update loops to run only when electrical power is supplied&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Progress&lt;br /&gt;
*Nasal-Based Electrical System integrated into f16-set.xml&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Resources&lt;br /&gt;
*A Nasal-Based Electrical System for Flightgear, v 1.1 by Gary &amp;quot;Buckaroo&amp;quot; Neely - [http://www.buckarooshangar.com/flightgear/electrical_1.html]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Hydraulics==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Fuel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Failures==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Original TDL==&lt;br /&gt;
Issues to be fixed shortly:&lt;br /&gt;
* The first time the user change the view (ie. by hiting &amp;quot;v&amp;quot;) there is a 10/15 seconds pause.&lt;br /&gt;
** This seems to be due to the liveries textures. Removing the Livery choice and all associated entry in the -set file doesn't change the delay. Then reducing and flatening (remove alpha channel) the main texture f16.rgb from 2048 to 1024 px reduce the delay to 6/7 sec, then flatening the transparent logo texture f16-trans.rgb reduce the delay to 3/sec.&lt;br /&gt;
** Solution: switch to PNG textures, remove transparency on logos or even remove logos. Use a different mapping layout with 4 x 1024^2 textures instead of 1 x 2048^2 texture. Optimize surface usage in the textures, flaten textures as much as possible. (see much more complicated and detailled f-14b which doesn't suffer delay) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TDL FDM:&lt;br /&gt;
* Startup sequence&lt;br /&gt;
* Main U/C is above ground.&lt;br /&gt;
* Vibration when accelerating on the runway for takeof.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TDL Outside&lt;br /&gt;
* flaps are in wrong position and can't be triggered.&lt;br /&gt;
** that's because the f16 is flight computer controlled, so this is correct and NOT an error. (this to be moved in flight documentation)&lt;br /&gt;
* pilot's shoulder patch is empty. (remove ?)&lt;br /&gt;
* engine turbines do not rotate (is it useful ?)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TDL Cockpit and systems:&lt;br /&gt;
* HSI 3d model and textures.&lt;br /&gt;
* internal/external lighting panel.&lt;br /&gt;
* FMD's buttons pick animation. Define a logic in the FMD interactivity ?&lt;br /&gt;
* ICP better texture. buttons pick animation. Define a logic in the ICP interactivity ?&lt;br /&gt;
* HUD modes:&lt;br /&gt;
** A/A mode&lt;br /&gt;
** Basic nav mode (those could be a first step in order to provide usability in short term)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sounds: (Low priority)&lt;br /&gt;
* Establish a list of all sounds that can be produced by the F-16 and its driver:&lt;br /&gt;
&lt;br /&gt;
Cockpit:&lt;br /&gt;
** switches&lt;br /&gt;
** knobs&lt;br /&gt;
** levers&lt;br /&gt;
** buttons&lt;br /&gt;
** wheels (ICP)&lt;br /&gt;
** rudder pedals&lt;br /&gt;
** ejection seat&lt;br /&gt;
** canopy **implemented**&lt;br /&gt;
** canopy lock **implemented**&lt;br /&gt;
&lt;br /&gt;
Audio:&lt;br /&gt;
** &amp;quot;bitching betty&amp;quot;&lt;br /&gt;
*** missile launch&lt;br /&gt;
*** warning **implemented**&lt;br /&gt;
*** chaff/flare&lt;br /&gt;
*** jammer&lt;br /&gt;
** RWR&lt;br /&gt;
*** radar signature identification sounds&lt;br /&gt;
**** radar spike&lt;br /&gt;
**** radar lock&lt;br /&gt;
** gear horn (currently implemented as alert?)&lt;br /&gt;
&lt;br /&gt;
Pilot:&lt;br /&gt;
** breathing&lt;br /&gt;
** movement&lt;br /&gt;
** brevity comms&lt;br /&gt;
&lt;br /&gt;
External-sounds:&lt;br /&gt;
** engine **implemented**&lt;br /&gt;
** landing gear&lt;br /&gt;
*** up&lt;br /&gt;
*** down&lt;br /&gt;
*** broken&lt;br /&gt;
** ordnance&lt;br /&gt;
*** jettison store(s)&lt;br /&gt;
*** bomb drop&lt;br /&gt;
*** missile launch&lt;br /&gt;
*** 20mm cannon **implemented**&lt;br /&gt;
** damage&lt;br /&gt;
*** airframe overstress&lt;br /&gt;
*** gun hit&lt;br /&gt;
*** explosion&lt;br /&gt;
** Mid air refueling &lt;br /&gt;
*** refueling door&lt;br /&gt;
**** open&lt;br /&gt;
**** close&lt;br /&gt;
*** tank boom (tanker aircraft)&lt;br /&gt;
**** connect&lt;br /&gt;
**** disconnect&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Talk:General_Dynamics_F-16/Development&amp;diff=51478</id>
		<title>Talk:General Dynamics F-16/Development</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Talk:General_Dynamics_F-16/Development&amp;diff=51478"/>
		<updated>2012-07-02T21:11:18Z</updated>

		<summary type="html">&lt;p&gt;Xiii: xiii woud be happy to participate&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi Blackbird,&lt;br /&gt;
&lt;br /&gt;
I did already a bit of work on the f16 cockpit: central pedestal, RWR, radar, pilot's seat... I didn't check recently if all of this is in a good shape, but I'd be very happy to participate again on this model, specially if the project is well managed. With chance you can join me on IRC #flightgear (european TZ) or by email at &amp;quot;alexis dot bory at gmail dot com&amp;quot;. My refs: [co-]author of A-10, A-6E, f-14b, E-2C, Vinson carrier...&lt;br /&gt;
  &lt;br /&gt;
[[User:Xiii|Xiii]] 17:11, 2 July 2012 (EDT)&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Talk:Project_Rembrandt&amp;diff=50792</id>
		<title>Talk:Project Rembrandt</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Talk:Project_Rembrandt&amp;diff=50792"/>
		<updated>2012-06-03T20:22:19Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* feed back on models */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi.&lt;br /&gt;
&lt;br /&gt;
Like I mentioned in my email, I have made modifications to CameraGroup to allow much more camera options in preferences.xml. Currently supporting: multiple cameras &amp;amp; render orders, render to texture, multiple render targets, binding of render target textures for other cameras, floating point textures, post processing &amp;amp; chaining of effects.&lt;br /&gt;
&lt;br /&gt;
So basically I think most your stuff could be handled with this system (though it still has some bugs and seems to cause crashes in libGL...)&lt;br /&gt;
&lt;br /&gt;
Anyways, when you think you have the system running well enough, so that it would be time for cleanup, please give me a message and let's see if this work can be combined. Meanwhile, if you're interested, my git repo is at [https://gitorious.org/~zan/fg/zans-flightgear/commits/newcameras gitorious repository].&lt;br /&gt;
&lt;br /&gt;
What I wonder about your work, is how you handle the separation of geometry, i.e. that the geometry pass does not draw transparent objects like clouds? I was trying to add this to my system, and got it to sort of work (via pre-render callbacks) but it was ugly. I'm going to add an option in preferences.xml to select, which geometry (either render bin numbers or transparent/opaque etc) to render, which would allow multiple lights easily.&lt;br /&gt;
&lt;br /&gt;
[[User:Zan|Zan]] 04:36, 20 December 2011 (EST)&lt;br /&gt;
:: Also see [http://flightgear.org/forums/viewtopic.php?f=6&amp;amp;t=13798&amp;amp;p=140379&amp;amp;hilit=#p140299 here] (forum thread).--[[User:Hooray|Hooray]] 07:13, 20 December 2011 (EST)&lt;br /&gt;
&lt;br /&gt;
The cloud and the sky were removed from the main scenegraph (in renderer.cxx) and added as simple group nodes in the lighting camera (the stage before the display stage) before applying the ambient pass. I put banners in CameraGroup so it is easy to spot the different structures for each stage (CameraGroup::BuildGBufferCamera - a bit misnamed now).&lt;br /&gt;
&lt;br /&gt;
Also don't forget most of state attributes are set in terrain-default.eff and model-default.eff&lt;br /&gt;
&lt;br /&gt;
--[[User:Fredb|Fredb]] 16:01, 20 December 2011 (EST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You write about the transparent objects: ''In a cull callback attached to the Geometry camera, after the scenegraph traversal, the transparent bins are removed from the render stage and saved in a temporary collection.'' I have to tell you, when I made my modifications to the cameras, I was also thinking about deferred shader, and ended up with the exactly same method what you seem to be using! I just never found time to correctly implement it. I'm impressed that we both separately ended up with this same method!&lt;br /&gt;
[[User:Zan|Zan]] 15:58, 15 January 2012 (EST)&lt;br /&gt;
:So now I know I am on the right track ;-)&lt;br /&gt;
:Regards&lt;br /&gt;
:--[[User:Fredb|Fredb]] 08:32, 16 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
== Models modification log ==&lt;br /&gt;
{{cquote|Change KSFO_light.xml to apt-light.xml|Fredb}}&lt;br /&gt;
Why that? KSFO_light.xml is a special model, made for KSFO by Don Lavelle. Just like EHAM also has custom light poles. And EDDF. There are quite some actually...&lt;br /&gt;
&lt;br /&gt;
[[User:Gijs|Gijs]] 15:04, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
: Hi Gijs. Could you explain in what they are different and why there are only ten of then while there are more than 50 apt-light in KSFO ?&lt;br /&gt;
:--[[User:Fredb|Fredb]] 15:30, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
:: They are two completely different models. Just compare them in Blender (or whatever editor). The KSFO_light ones match better with the real ones at KSFO (one of the differences is that the KSFO ones are grey/brown, rather than red/white striped). I don't know why only a few are placed, the red/white ones should be replaced (will talk to Jon on IRC in a minute).&lt;br /&gt;
:: Now that you're working on spot lights, it's important to realize that we (will) have many light pole models, simply because there are many variants in real life... ;)&lt;br /&gt;
:: [[User:Gijs|Gijs]] 17:42, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
Because of this: &amp;quot;Add a spot light animation&amp;quot; - testing real lights now?&lt;br /&gt;
That would be great!&lt;br /&gt;
&lt;br /&gt;
--[[User:HHS|HHS]] 15:09, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
=== feed back on models ===&lt;br /&gt;
&lt;br /&gt;
''Howdy Fred, wonderful work. There are still plenty of thing to do, plenty about which modelers will rant, as usual, but let me tell you how much I appreciate what you have done with rembrandt. Now some &amp;lt;del&amp;gt;rants&amp;lt;/del&amp;gt; comments:''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* I worked on the f-14b cockpit and added 3 point lights to enlighten the space. No problem there, I managed (more or less) to keep the light volume inside the cockpit and this wasn't easy, and I linked the lights intensity to the instruments lights slider. the instruments have (since a long time) their own emission (material animation) but they just lose the color, so instead of being red lighted, they are now white. http://www.maison-capestang.com/fg/f-14b/f-14-inside-lighting-20120517.png&lt;br /&gt;
* &amp;lt;del&amp;gt;The bloom effect is a bit too much IHMO&amp;lt;/del&amp;gt;. will it be settable per object ? ''(In my case it was too much because of bad and avoidable interaction between legacy emissiveness and rembrandt lights)''&lt;br /&gt;
* &amp;lt;del&amp;gt;SSAO is also a bit strong, it would be nice to test several strength on different models before settling a default value.&amp;lt;/del&amp;gt; Seen the rendering dialog with a SSAO effect slider. Well done Fred. &lt;br /&gt;
* No major problems with converting of referencing the transparencies, but the sky is much darker than the terrain horizon when seen through the propellers with transparency (material animation). http://www.maison-capestang.com/fg/E-2C/through-the-propellers.png&lt;br /&gt;
* Found some problems with transparent layers partially disappearing when yawing or pitching the view direction. If you like to test (an can stand the tomcat) try launching the f-14b, check that the HSD screen in on and displays the TID (radar) symbology. you'll see the radar sweep angle displayed with dashed lines, pitch the view, or move it to the side and you should see the lines disappear.&lt;br /&gt;
** http://www.maison-capestang.com/fg/f-14b/radar-20120603a.png What is expected.&lt;br /&gt;
** http://www.maison-capestang.com/fg/f-14b/radar-20120603b.png The sweep angle border lines and some of the aircrafts symbology (differents objects with transparent textures) disappear. Note at the bottom of the screen a piece of aircraft symbology, not overlaying the green and emissive background).&lt;br /&gt;
&lt;br /&gt;
BTW: the f-14b in git has now plenty of nice light effects, try the switch and dimmers on the right console: http://www.maison-capestang.com/fg/f-14b/f-14b-right-console-light-panel.png note also the power switches on the DISPLAY panel (3 switches on the bottom row labeled POWER) for HUD, HSI and HSD.&lt;br /&gt;
&lt;br /&gt;
[[User:Xiii|Xiii]] 17:44, 17 May 2012 (EDT)&lt;br /&gt;
&lt;br /&gt;
Interesting: If you register an emissive object as transparent, it keeps its colored config. The following works with rembrandt: green emissive opaque object.&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;effect&amp;gt;&lt;br /&gt;
    &amp;lt;inherits-from&amp;gt;Effects/model-transparent&amp;lt;/inherits-from&amp;gt;&lt;br /&gt;
    &amp;lt;object-name&amp;gt;screen-bkg&amp;lt;/object-name&amp;gt;&lt;br /&gt;
  &amp;lt;/effect&amp;gt;&lt;br /&gt;
  &amp;lt;animation&amp;gt;&lt;br /&gt;
     &amp;lt;object-name&amp;gt;screen-bkg&amp;lt;/object-name&amp;gt;&lt;br /&gt;
     &amp;lt;type&amp;gt;material&amp;lt;/type&amp;gt;&lt;br /&gt;
     &amp;lt;emission&amp;gt;&lt;br /&gt;
       &amp;lt;factor-prop&amp;gt;sim/model/f-14b/controls/VDI/contrast&amp;lt;/factor-prop&amp;gt;&lt;br /&gt;
       &amp;lt;red&amp;gt;0.0&amp;lt;/red&amp;gt;&lt;br /&gt;
       &amp;lt;green&amp;gt;0.7&amp;lt;/green&amp;gt;&lt;br /&gt;
       &amp;lt;blue&amp;gt;0.0&amp;lt;/blue&amp;gt;&lt;br /&gt;
     &amp;lt;/emission&amp;gt;&lt;br /&gt;
  &amp;lt;/animation&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And it is realy cool news. But, but.... there are zbuffering issues (I suppose so because some overlaying transparent objects appears and disapear when the view pitch or yaw change).  &lt;br /&gt;
&lt;br /&gt;
[[User:Xiii|Xiii]] 03:57, 20 May 2012 (EDT)&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Talk:Project_Rembrandt&amp;diff=50791</id>
		<title>Talk:Project Rembrandt</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Talk:Project_Rembrandt&amp;diff=50791"/>
		<updated>2012-06-03T20:21:40Z</updated>

		<summary type="html">&lt;p&gt;Xiii: link to sceenshots&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi.&lt;br /&gt;
&lt;br /&gt;
Like I mentioned in my email, I have made modifications to CameraGroup to allow much more camera options in preferences.xml. Currently supporting: multiple cameras &amp;amp; render orders, render to texture, multiple render targets, binding of render target textures for other cameras, floating point textures, post processing &amp;amp; chaining of effects.&lt;br /&gt;
&lt;br /&gt;
So basically I think most your stuff could be handled with this system (though it still has some bugs and seems to cause crashes in libGL...)&lt;br /&gt;
&lt;br /&gt;
Anyways, when you think you have the system running well enough, so that it would be time for cleanup, please give me a message and let's see if this work can be combined. Meanwhile, if you're interested, my git repo is at [https://gitorious.org/~zan/fg/zans-flightgear/commits/newcameras gitorious repository].&lt;br /&gt;
&lt;br /&gt;
What I wonder about your work, is how you handle the separation of geometry, i.e. that the geometry pass does not draw transparent objects like clouds? I was trying to add this to my system, and got it to sort of work (via pre-render callbacks) but it was ugly. I'm going to add an option in preferences.xml to select, which geometry (either render bin numbers or transparent/opaque etc) to render, which would allow multiple lights easily.&lt;br /&gt;
&lt;br /&gt;
[[User:Zan|Zan]] 04:36, 20 December 2011 (EST)&lt;br /&gt;
:: Also see [http://flightgear.org/forums/viewtopic.php?f=6&amp;amp;t=13798&amp;amp;p=140379&amp;amp;hilit=#p140299 here] (forum thread).--[[User:Hooray|Hooray]] 07:13, 20 December 2011 (EST)&lt;br /&gt;
&lt;br /&gt;
The cloud and the sky were removed from the main scenegraph (in renderer.cxx) and added as simple group nodes in the lighting camera (the stage before the display stage) before applying the ambient pass. I put banners in CameraGroup so it is easy to spot the different structures for each stage (CameraGroup::BuildGBufferCamera - a bit misnamed now).&lt;br /&gt;
&lt;br /&gt;
Also don't forget most of state attributes are set in terrain-default.eff and model-default.eff&lt;br /&gt;
&lt;br /&gt;
--[[User:Fredb|Fredb]] 16:01, 20 December 2011 (EST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You write about the transparent objects: ''In a cull callback attached to the Geometry camera, after the scenegraph traversal, the transparent bins are removed from the render stage and saved in a temporary collection.'' I have to tell you, when I made my modifications to the cameras, I was also thinking about deferred shader, and ended up with the exactly same method what you seem to be using! I just never found time to correctly implement it. I'm impressed that we both separately ended up with this same method!&lt;br /&gt;
[[User:Zan|Zan]] 15:58, 15 January 2012 (EST)&lt;br /&gt;
:So now I know I am on the right track ;-)&lt;br /&gt;
:Regards&lt;br /&gt;
:--[[User:Fredb|Fredb]] 08:32, 16 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
== Models modification log ==&lt;br /&gt;
{{cquote|Change KSFO_light.xml to apt-light.xml|Fredb}}&lt;br /&gt;
Why that? KSFO_light.xml is a special model, made for KSFO by Don Lavelle. Just like EHAM also has custom light poles. And EDDF. There are quite some actually...&lt;br /&gt;
&lt;br /&gt;
[[User:Gijs|Gijs]] 15:04, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
: Hi Gijs. Could you explain in what they are different and why there are only ten of then while there are more than 50 apt-light in KSFO ?&lt;br /&gt;
:--[[User:Fredb|Fredb]] 15:30, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
:: They are two completely different models. Just compare them in Blender (or whatever editor). The KSFO_light ones match better with the real ones at KSFO (one of the differences is that the KSFO ones are grey/brown, rather than red/white striped). I don't know why only a few are placed, the red/white ones should be replaced (will talk to Jon on IRC in a minute).&lt;br /&gt;
:: Now that you're working on spot lights, it's important to realize that we (will) have many light pole models, simply because there are many variants in real life... ;)&lt;br /&gt;
:: [[User:Gijs|Gijs]] 17:42, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
Because of this: &amp;quot;Add a spot light animation&amp;quot; - testing real lights now?&lt;br /&gt;
That would be great!&lt;br /&gt;
&lt;br /&gt;
--[[User:HHS|HHS]] 15:09, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
=== feed back on models ===&lt;br /&gt;
&lt;br /&gt;
''Howdy Fred, wonderful work. There are still plenty of thing to do, plenty about which modelers will rant, as usual, but let me tell you how much I appreciate what you have done with rembrandt. Now some &amp;lt;del&amp;gt;rants&amp;lt;/del&amp;gt; comments:''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* I worked on the f-14b cockpit and added 3 point lights to enlighten the space. No problem there, I managed (more or less) to keep the light volume inside the cockpit and this wasn't easy, and I linked the lights intensity to the instruments lights slider. the instruments have (since a long time) their own emission (material animation) but they just lose the color, so instead of being red lighted, they are now white. http://www.maison-capestang.com/fg/f-14b/f-14-inside-lighting-20120517.png&lt;br /&gt;
* &amp;lt;del&amp;gt;The bloom effect is a bit too much IHMO&amp;lt;/del&amp;gt;. will it be settable per object ? ''(In my case it was too much because of bad and avoidable interaction between legacy emissiveness and rembrandt lights)''&lt;br /&gt;
* &amp;lt;del&amp;gt;SSAO is also a bit strong, it would be nice to test several strength on different models before settling a default value.&amp;lt;/del&amp;gt; Seen the rendering dialog with a SSAO effect slider. Well done Fred. &lt;br /&gt;
* No major problems with converting of referencing the transparencies, but the sky is much darker than the terrain horizon when seen through the propellers with transparency (material animation). http://www.maison-capestang.com/fg/E-2C/through-the-propellers.png&lt;br /&gt;
* Found some problems with transparent layers partially disappearing when yawing or pitching the view direction. If you like to test (an can stand the tomcat) try launching the f-14b, check that the HSD screen in on and displays the TID (radar) symbology. you'll see the radar sweep angle displayed with dashed lines, pitch the view, or move it to the side and you should see the lines disappear.&lt;br /&gt;
** http://www.maison-capestang.com/fg/f-14b/radar-20120603a.png What is expected.&lt;br /&gt;
** http://www.maison-capestang.com/fg/f-14b/radar-20120603b.png The sweep angle border lines and some of the aircrafts symbology (differents objects with transparent textures) disapear. Note at the bottom of the screen a piece of aircraft symbology, not overlaying the green and emissive background).&lt;br /&gt;
&lt;br /&gt;
BTW: the f-14b in git has now plenty of nice light effects, try the switch and dimmers on the right console: http://www.maison-capestang.com/fg/f-14b/f-14b-right-console-light-panel.png note also the power switches on the DISPLAY panel (3 switches on the bottom row labeled POWER) for HUD, HSI and HSD.&lt;br /&gt;
&lt;br /&gt;
[[User:Xiii|Xiii]] 17:44, 17 May 2012 (EDT)&lt;br /&gt;
&lt;br /&gt;
Interesting: If you register an emissive object as transparent, it keeps its colored config. The following works with rembrandt: green emissive opaque object.&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;effect&amp;gt;&lt;br /&gt;
    &amp;lt;inherits-from&amp;gt;Effects/model-transparent&amp;lt;/inherits-from&amp;gt;&lt;br /&gt;
    &amp;lt;object-name&amp;gt;screen-bkg&amp;lt;/object-name&amp;gt;&lt;br /&gt;
  &amp;lt;/effect&amp;gt;&lt;br /&gt;
  &amp;lt;animation&amp;gt;&lt;br /&gt;
     &amp;lt;object-name&amp;gt;screen-bkg&amp;lt;/object-name&amp;gt;&lt;br /&gt;
     &amp;lt;type&amp;gt;material&amp;lt;/type&amp;gt;&lt;br /&gt;
     &amp;lt;emission&amp;gt;&lt;br /&gt;
       &amp;lt;factor-prop&amp;gt;sim/model/f-14b/controls/VDI/contrast&amp;lt;/factor-prop&amp;gt;&lt;br /&gt;
       &amp;lt;red&amp;gt;0.0&amp;lt;/red&amp;gt;&lt;br /&gt;
       &amp;lt;green&amp;gt;0.7&amp;lt;/green&amp;gt;&lt;br /&gt;
       &amp;lt;blue&amp;gt;0.0&amp;lt;/blue&amp;gt;&lt;br /&gt;
     &amp;lt;/emission&amp;gt;&lt;br /&gt;
  &amp;lt;/animation&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And it is realy cool news. But, but.... there are zbuffering issues (I suppose so because some overlaying transparent objects appears and disapear when the view pitch or yaw change).  &lt;br /&gt;
&lt;br /&gt;
[[User:Xiii|Xiii]] 03:57, 20 May 2012 (EDT)&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Talk:Project_Rembrandt&amp;diff=50786</id>
		<title>Talk:Project Rembrandt</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Talk:Project_Rembrandt&amp;diff=50786"/>
		<updated>2012-06-03T19:14:24Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* feed back on models */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi.&lt;br /&gt;
&lt;br /&gt;
Like I mentioned in my email, I have made modifications to CameraGroup to allow much more camera options in preferences.xml. Currently supporting: multiple cameras &amp;amp; render orders, render to texture, multiple render targets, binding of render target textures for other cameras, floating point textures, post processing &amp;amp; chaining of effects.&lt;br /&gt;
&lt;br /&gt;
So basically I think most your stuff could be handled with this system (though it still has some bugs and seems to cause crashes in libGL...)&lt;br /&gt;
&lt;br /&gt;
Anyways, when you think you have the system running well enough, so that it would be time for cleanup, please give me a message and let's see if this work can be combined. Meanwhile, if you're interested, my git repo is at [https://gitorious.org/~zan/fg/zans-flightgear/commits/newcameras gitorious repository].&lt;br /&gt;
&lt;br /&gt;
What I wonder about your work, is how you handle the separation of geometry, i.e. that the geometry pass does not draw transparent objects like clouds? I was trying to add this to my system, and got it to sort of work (via pre-render callbacks) but it was ugly. I'm going to add an option in preferences.xml to select, which geometry (either render bin numbers or transparent/opaque etc) to render, which would allow multiple lights easily.&lt;br /&gt;
&lt;br /&gt;
[[User:Zan|Zan]] 04:36, 20 December 2011 (EST)&lt;br /&gt;
:: Also see [http://flightgear.org/forums/viewtopic.php?f=6&amp;amp;t=13798&amp;amp;p=140379&amp;amp;hilit=#p140299 here] (forum thread).--[[User:Hooray|Hooray]] 07:13, 20 December 2011 (EST)&lt;br /&gt;
&lt;br /&gt;
The cloud and the sky were removed from the main scenegraph (in renderer.cxx) and added as simple group nodes in the lighting camera (the stage before the display stage) before applying the ambient pass. I put banners in CameraGroup so it is easy to spot the different structures for each stage (CameraGroup::BuildGBufferCamera - a bit misnamed now).&lt;br /&gt;
&lt;br /&gt;
Also don't forget most of state attributes are set in terrain-default.eff and model-default.eff&lt;br /&gt;
&lt;br /&gt;
--[[User:Fredb|Fredb]] 16:01, 20 December 2011 (EST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You write about the transparent objects: ''In a cull callback attached to the Geometry camera, after the scenegraph traversal, the transparent bins are removed from the render stage and saved in a temporary collection.'' I have to tell you, when I made my modifications to the cameras, I was also thinking about deferred shader, and ended up with the exactly same method what you seem to be using! I just never found time to correctly implement it. I'm impressed that we both separately ended up with this same method!&lt;br /&gt;
[[User:Zan|Zan]] 15:58, 15 January 2012 (EST)&lt;br /&gt;
:So now I know I am on the right track ;-)&lt;br /&gt;
:Regards&lt;br /&gt;
:--[[User:Fredb|Fredb]] 08:32, 16 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
== Models modification log ==&lt;br /&gt;
{{cquote|Change KSFO_light.xml to apt-light.xml|Fredb}}&lt;br /&gt;
Why that? KSFO_light.xml is a special model, made for KSFO by Don Lavelle. Just like EHAM also has custom light poles. And EDDF. There are quite some actually...&lt;br /&gt;
&lt;br /&gt;
[[User:Gijs|Gijs]] 15:04, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
: Hi Gijs. Could you explain in what they are different and why there are only ten of then while there are more than 50 apt-light in KSFO ?&lt;br /&gt;
:--[[User:Fredb|Fredb]] 15:30, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
:: They are two completely different models. Just compare them in Blender (or whatever editor). The KSFO_light ones match better with the real ones at KSFO (one of the differences is that the KSFO ones are grey/brown, rather than red/white striped). I don't know why only a few are placed, the red/white ones should be replaced (will talk to Jon on IRC in a minute).&lt;br /&gt;
:: Now that you're working on spot lights, it's important to realize that we (will) have many light pole models, simply because there are many variants in real life... ;)&lt;br /&gt;
:: [[User:Gijs|Gijs]] 17:42, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
Because of this: &amp;quot;Add a spot light animation&amp;quot; - testing real lights now?&lt;br /&gt;
That would be great!&lt;br /&gt;
&lt;br /&gt;
--[[User:HHS|HHS]] 15:09, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
=== feed back on models ===&lt;br /&gt;
&lt;br /&gt;
''Howdy Fred, wonderful work. There are still plenty of thing to do, plenty about which modelers will rant, as usual, but let me tell you how much I appreciate what you have done with rembrandt. Now some &amp;lt;del&amp;gt;rants&amp;lt;/del&amp;gt; comments:''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* I worked on the f-14b cockpit and added 3 point lights to enlighten the space. No problem there, I managed (more or less) to keep the light volume inside the cockpit and this wasn't easy, and I linked the lights intensity to the instruments lights slider. the instruments have (since a long time) their own emission (material animation) but they just lose the color, so instead of being red lighted, they are now white. http://www.maison-capestang.com/fg/f-14b/f-14-inside-lighting-20120517.png&lt;br /&gt;
* &amp;lt;del&amp;gt;The bloom effect is a bit too much IHMO&amp;lt;/del&amp;gt;. will it be settable per object ? ''(In my case it was too much because of bad and avoidable interaction between legacy emissiveness and rembrandt lights)''&lt;br /&gt;
* &amp;lt;del&amp;gt;SSAO is also a bit strong, it would be nice to test several strength on different models before settling a default value.&amp;lt;/del&amp;gt; Seen the rendering dialog with a SSAO effect slider. Well done Fred. &lt;br /&gt;
* No major problems with converting of referencing the transparencies, but the sky is much darker than the terrain horizon when seen through the propellers with transparency (material animation). http://www.maison-capestang.com/fg/E-2C/through-the-propellers.png&lt;br /&gt;
* Found some problems with transparent layers partially disappearing when yawing or pitching the view direction. If you like to test (an can stand the tomcat) try launching the f-14b, check that the HSD screen in on and displays the TID (radar) symbology. you'll see the radar sweep angle displayed with dashed lines, pitch the view, or move it to the side and you should see the lines disappear.&lt;br /&gt;
&lt;br /&gt;
BTW: the f-14b in git has now plenty of nice light effects, try the switch and dimmers on the right console: http://www.maison-capestang.com/fg/f-14b/f-14b-right-console-light-panel.png note also the power switches on the DISPLAY panel (3 switches on the bottom row labeled POWER) for HUD, HSI and HSD.&lt;br /&gt;
&lt;br /&gt;
[[User:Xiii|Xiii]] 17:44, 17 May 2012 (EDT)&lt;br /&gt;
&lt;br /&gt;
Interesting: If you register an emissive object as transparent, it keeps its colored config. The following works with rembrandt: green emissive opaque object.&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;effect&amp;gt;&lt;br /&gt;
    &amp;lt;inherits-from&amp;gt;Effects/model-transparent&amp;lt;/inherits-from&amp;gt;&lt;br /&gt;
    &amp;lt;object-name&amp;gt;screen-bkg&amp;lt;/object-name&amp;gt;&lt;br /&gt;
  &amp;lt;/effect&amp;gt;&lt;br /&gt;
  &amp;lt;animation&amp;gt;&lt;br /&gt;
     &amp;lt;object-name&amp;gt;screen-bkg&amp;lt;/object-name&amp;gt;&lt;br /&gt;
     &amp;lt;type&amp;gt;material&amp;lt;/type&amp;gt;&lt;br /&gt;
     &amp;lt;emission&amp;gt;&lt;br /&gt;
       &amp;lt;factor-prop&amp;gt;sim/model/f-14b/controls/VDI/contrast&amp;lt;/factor-prop&amp;gt;&lt;br /&gt;
       &amp;lt;red&amp;gt;0.0&amp;lt;/red&amp;gt;&lt;br /&gt;
       &amp;lt;green&amp;gt;0.7&amp;lt;/green&amp;gt;&lt;br /&gt;
       &amp;lt;blue&amp;gt;0.0&amp;lt;/blue&amp;gt;&lt;br /&gt;
     &amp;lt;/emission&amp;gt;&lt;br /&gt;
  &amp;lt;/animation&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And it is realy cool news. But, but.... there are zbuffering issues (I suppose so because some overlaying transparent objects appears and disapear when the view pitch or yaw change).  &lt;br /&gt;
&lt;br /&gt;
[[User:Xiii|Xiii]] 03:57, 20 May 2012 (EDT)&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Talk:Project_Rembrandt&amp;diff=50784</id>
		<title>Talk:Project Rembrandt</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Talk:Project_Rembrandt&amp;diff=50784"/>
		<updated>2012-06-03T18:12:30Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* feed back on models */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi.&lt;br /&gt;
&lt;br /&gt;
Like I mentioned in my email, I have made modifications to CameraGroup to allow much more camera options in preferences.xml. Currently supporting: multiple cameras &amp;amp; render orders, render to texture, multiple render targets, binding of render target textures for other cameras, floating point textures, post processing &amp;amp; chaining of effects.&lt;br /&gt;
&lt;br /&gt;
So basically I think most your stuff could be handled with this system (though it still has some bugs and seems to cause crashes in libGL...)&lt;br /&gt;
&lt;br /&gt;
Anyways, when you think you have the system running well enough, so that it would be time for cleanup, please give me a message and let's see if this work can be combined. Meanwhile, if you're interested, my git repo is at [https://gitorious.org/~zan/fg/zans-flightgear/commits/newcameras gitorious repository].&lt;br /&gt;
&lt;br /&gt;
What I wonder about your work, is how you handle the separation of geometry, i.e. that the geometry pass does not draw transparent objects like clouds? I was trying to add this to my system, and got it to sort of work (via pre-render callbacks) but it was ugly. I'm going to add an option in preferences.xml to select, which geometry (either render bin numbers or transparent/opaque etc) to render, which would allow multiple lights easily.&lt;br /&gt;
&lt;br /&gt;
[[User:Zan|Zan]] 04:36, 20 December 2011 (EST)&lt;br /&gt;
:: Also see [http://flightgear.org/forums/viewtopic.php?f=6&amp;amp;t=13798&amp;amp;p=140379&amp;amp;hilit=#p140299 here] (forum thread).--[[User:Hooray|Hooray]] 07:13, 20 December 2011 (EST)&lt;br /&gt;
&lt;br /&gt;
The cloud and the sky were removed from the main scenegraph (in renderer.cxx) and added as simple group nodes in the lighting camera (the stage before the display stage) before applying the ambient pass. I put banners in CameraGroup so it is easy to spot the different structures for each stage (CameraGroup::BuildGBufferCamera - a bit misnamed now).&lt;br /&gt;
&lt;br /&gt;
Also don't forget most of state attributes are set in terrain-default.eff and model-default.eff&lt;br /&gt;
&lt;br /&gt;
--[[User:Fredb|Fredb]] 16:01, 20 December 2011 (EST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You write about the transparent objects: ''In a cull callback attached to the Geometry camera, after the scenegraph traversal, the transparent bins are removed from the render stage and saved in a temporary collection.'' I have to tell you, when I made my modifications to the cameras, I was also thinking about deferred shader, and ended up with the exactly same method what you seem to be using! I just never found time to correctly implement it. I'm impressed that we both separately ended up with this same method!&lt;br /&gt;
[[User:Zan|Zan]] 15:58, 15 January 2012 (EST)&lt;br /&gt;
:So now I know I am on the right track ;-)&lt;br /&gt;
:Regards&lt;br /&gt;
:--[[User:Fredb|Fredb]] 08:32, 16 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
== Models modification log ==&lt;br /&gt;
{{cquote|Change KSFO_light.xml to apt-light.xml|Fredb}}&lt;br /&gt;
Why that? KSFO_light.xml is a special model, made for KSFO by Don Lavelle. Just like EHAM also has custom light poles. And EDDF. There are quite some actually...&lt;br /&gt;
&lt;br /&gt;
[[User:Gijs|Gijs]] 15:04, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
: Hi Gijs. Could you explain in what they are different and why there are only ten of then while there are more than 50 apt-light in KSFO ?&lt;br /&gt;
:--[[User:Fredb|Fredb]] 15:30, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
:: They are two completely different models. Just compare them in Blender (or whatever editor). The KSFO_light ones match better with the real ones at KSFO (one of the differences is that the KSFO ones are grey/brown, rather than red/white striped). I don't know why only a few are placed, the red/white ones should be replaced (will talk to Jon on IRC in a minute).&lt;br /&gt;
:: Now that you're working on spot lights, it's important to realize that we (will) have many light pole models, simply because there are many variants in real life... ;)&lt;br /&gt;
:: [[User:Gijs|Gijs]] 17:42, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
Because of this: &amp;quot;Add a spot light animation&amp;quot; - testing real lights now?&lt;br /&gt;
That would be great!&lt;br /&gt;
&lt;br /&gt;
--[[User:HHS|HHS]] 15:09, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
=== feed back on models ===&lt;br /&gt;
&lt;br /&gt;
''Howdy Fred, wonderful work. There are still plenty of thing to do, plenty about which modelers will rant, as usual, but let me tell you how much I appreciate what you have done with rembrandt. Now some &amp;lt;del&amp;gt;rants&amp;lt;/del&amp;gt; comments:''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* I worked on the f-14b cockpit and added 3 point lights to enlighten the space. No problem there, I managed (more or less) to keep the light volume inside the cockpit and this wasn't easy, and I linked the lights intensity to the instruments lights slider. the instruments have (since a long time) their own emission (material animation) but they just lose the color, so instead of being red lighted, they are now white. http://www.maison-capestang.com/fg/f-14b/f-14-inside-lighting-20120517.png&lt;br /&gt;
* &amp;lt;del&amp;gt;The bloom effect is a bit too much IHMO&amp;lt;/del&amp;gt;. will it be settable per object ? ''(In my case it was too much because of bad and avoidable interaction between legacy emissiveness and rembrandt lights)''&lt;br /&gt;
* &amp;lt;del&amp;gt;SSAO is also a bit strong, it would be nice to test several strength on different models before settling a default value.&amp;lt;/del&amp;gt; Seen the rendering dialog with a SSAO effect slider. Well done Fred. &lt;br /&gt;
* No major problems with converting of referencing the transparencies, but the sky is much darker than the terrain horizon when seen through the propellers with transparency (material animation). http://www.maison-capestang.com/fg/E-2C/through-the-propellers.png&lt;br /&gt;
* Found some problems with transparent layers partially disappearing when yawing or pitching the view direction. If you like to test (an can stand the tomcat) try launching the f-14b, check that the HSD screen in on and displays the TID (radar) symbology. you'll see the radar sweep angle displayed with dashed lines, pitch the view, or move it to the side and you should see the lines disappear.&lt;br /&gt;
&lt;br /&gt;
[[User:Xiii|Xiii]] 17:44, 17 May 2012 (EDT)&lt;br /&gt;
&lt;br /&gt;
Interesting: If you register an emissive object as transparent, it keeps its colored config. The following works with rembrandt: green emissive opaque object.&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;effect&amp;gt;&lt;br /&gt;
    &amp;lt;inherits-from&amp;gt;Effects/model-transparent&amp;lt;/inherits-from&amp;gt;&lt;br /&gt;
    &amp;lt;object-name&amp;gt;screen-bkg&amp;lt;/object-name&amp;gt;&lt;br /&gt;
  &amp;lt;/effect&amp;gt;&lt;br /&gt;
  &amp;lt;animation&amp;gt;&lt;br /&gt;
     &amp;lt;object-name&amp;gt;screen-bkg&amp;lt;/object-name&amp;gt;&lt;br /&gt;
     &amp;lt;type&amp;gt;material&amp;lt;/type&amp;gt;&lt;br /&gt;
     &amp;lt;emission&amp;gt;&lt;br /&gt;
       &amp;lt;factor-prop&amp;gt;sim/model/f-14b/controls/VDI/contrast&amp;lt;/factor-prop&amp;gt;&lt;br /&gt;
       &amp;lt;red&amp;gt;0.0&amp;lt;/red&amp;gt;&lt;br /&gt;
       &amp;lt;green&amp;gt;0.7&amp;lt;/green&amp;gt;&lt;br /&gt;
       &amp;lt;blue&amp;gt;0.0&amp;lt;/blue&amp;gt;&lt;br /&gt;
     &amp;lt;/emission&amp;gt;&lt;br /&gt;
  &amp;lt;/animation&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And it is realy cool news. But, but.... there are zbuffering issues (I suppose so because some overlaying transparent objects appears and disapear when the view pitch or yaw change).  &lt;br /&gt;
&lt;br /&gt;
[[User:Xiii|Xiii]] 03:57, 20 May 2012 (EDT)&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Howto:Multiplayer&amp;diff=50453</id>
		<title>Howto:Multiplayer</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Howto:Multiplayer&amp;diff=50453"/>
		<updated>2012-05-23T13:44:11Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* Servers */ I stopped the mail service a while ago&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With the '''multiplayer''' function of [[FlightGear]] you are able to see other pilots and vice-versa. This makes it possible to fly in formation, [[Howto: Air-Air Refueling|connect to tankers]] controlled by real people or contact real [[ATC]]ers to ask for landing/takeoff clearence.&lt;br /&gt;
&lt;br /&gt;
Multiplay may cause extreme [[Howto: Improve Framerates|framerate]] drops during loading of aircraft models. Especially heavy models can cause severe lag. Therefore, it is suggested to fly in locations other than [[KSFO]], where there are fewer pilots flying around.&lt;br /&gt;
&lt;br /&gt;
== Servers ==&lt;br /&gt;
'''Please Note:''' The multiplayer servers are interconnected; you '''do not''' need to connect to a specific server in order to see other pilots who are on that server. For best performance, you should connect to the server that is geographically closest to you, has the lowest latency (ping time) or is the least busy.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; border=&amp;quot;1px solid&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot; style=&amp;quot;border-collapse: collapse;&amp;quot;&lt;br /&gt;
! style=&amp;quot;background:#efefef&amp;quot; |Server&lt;br /&gt;
! style=&amp;quot;background:#efefef&amp;quot; |Location&lt;br /&gt;
! style=&amp;quot;background:#efefef&amp;quot; |[http://fgfs.i-net.hu/modules/fgtracker/ Tracked]&lt;br /&gt;
! style=&amp;quot;background:#efefef&amp;quot; |Maintainer&lt;br /&gt;
! style=&amp;quot;background:#efefef&amp;quot; |[[IRC]] Name&lt;br /&gt;
! style=&amp;quot;background:#efefef&amp;quot; |[http://flightgear.org/forums Forum] Name&lt;br /&gt;
! style=&amp;quot;background:#efefef&amp;quot; |Comments&lt;br /&gt;
|-&lt;br /&gt;
|mpserver01.flightgear.org&lt;br /&gt;
|Germany&lt;br /&gt;
|Yes&lt;br /&gt;
|Oliver Schroeder&lt;br /&gt;
|os&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|mpserver02.flightgear.org&lt;br /&gt;
|Kansas, USA&lt;br /&gt;
|&lt;br /&gt;
|Sabin&lt;br /&gt;
|S-GECKO&lt;br /&gt;
|S-GECKO&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|mpserver03.flightgear.org&lt;br /&gt;
|Germany &lt;br /&gt;
|Yes&lt;br /&gt;
|Tobias Marx&lt;br /&gt;
|DocMarten&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|mpserver04.flightgear.org&lt;br /&gt;
|UK&lt;br /&gt;
|Yes&lt;br /&gt;
|Jon Stockill&lt;br /&gt;
|Nav&lt;br /&gt;
|JonS&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|mpserver05.flightgear.org&lt;br /&gt;
|Chicago, USA&lt;br /&gt;
|Yes&lt;br /&gt;
|Brant&lt;br /&gt;
|IonCannon218&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-       &lt;br /&gt;
|mpserver06.flightgear.org&lt;br /&gt;
|Berlin, Germany&lt;br /&gt;
|Yes&lt;br /&gt;
|Sven Teichmann&lt;br /&gt;
|&lt;br /&gt;
|D-SAMI&lt;br /&gt;
|Unlimited traffic&lt;br /&gt;
|-       &lt;br /&gt;
|mpserver07.flightgear.org&lt;br /&gt;
|Wisconsin, USA&lt;br /&gt;
|Yes&lt;br /&gt;
|Tom Betka&lt;br /&gt;
|TB&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-       &lt;br /&gt;
|mpserver08.flightgear.org&lt;br /&gt;
|Frankfurt am Main, Germany&lt;br /&gt;
|Yes&lt;br /&gt;
|Roland&lt;br /&gt;
|Quix0r&lt;br /&gt;
|Quix0r&lt;br /&gt;
|10 TByte traffic, mostly short pings&lt;br /&gt;
|-&lt;br /&gt;
|mpserver09.flightgear.org&lt;br /&gt;
|Köln, Germany&lt;br /&gt;
|Yes&lt;br /&gt;
|Daniel Vigano&lt;br /&gt;
|Fauchi95&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|mpserver10.flightgear.org&lt;br /&gt;
|Montpellier, France&lt;br /&gt;
|Yes&lt;br /&gt;
|Alexis Bory&lt;br /&gt;
|xiii&lt;br /&gt;
|xiii&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|mpserver11.flightgear.org&lt;br /&gt;
|Vilnius, Lithuania&lt;br /&gt;
|Yes&lt;br /&gt;
|Darius&lt;br /&gt;
|&lt;br /&gt;
|ffg&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|mpserver12.flightgear.org&lt;br /&gt;
|Amsterdam, the Netherlands&lt;br /&gt;
|No&lt;br /&gt;
|Rob&lt;br /&gt;
|evilslut&lt;br /&gt;
|evilslut&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|mpserver13.flightgear.org&lt;br /&gt;
|Grenoble, France&lt;br /&gt;
|Yes&lt;br /&gt;
|Charles Ingels&lt;br /&gt;
|charles&lt;br /&gt;
|cbz-026&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Use [http://mpmap01.flightgear.org/mpstatus/ this], [http://mpmap02.flightgear.org/mpstatus/ this] or [http://flightgear.mxchange.org/mpstatus/ this] link to check if the MP servers are online. Locations of the servers are also available at [http://maps.google.nl/maps/ms?hl=nl&amp;amp;ie=UTF8&amp;amp;msa=0&amp;amp;msid=108788649448915642705.000481c029e653a30807c Google Maps].&lt;br /&gt;
&lt;br /&gt;
If you are interested in hosting your own multiplayer server, you may want to check out [[Howto: Set up a multiplayer server]].&lt;br /&gt;
[[File:MP_Server.jpg|thumb|300px|[[MPMap]] screenshot]]&lt;br /&gt;
=== Multiplayer Map ===&lt;br /&gt;
{{Main article|MPMap}}&lt;br /&gt;
&lt;br /&gt;
There is a very nice online map which displays the location of online pilots at [http://mpmap01.flightgear.org mpmap01] and/or [http://mpmap02.flightgear.org mpmap02]. You will also find this useful to check that you are successfully connecting to the server.&lt;br /&gt;
&lt;br /&gt;
== Multiple connections per computer ==&lt;br /&gt;
It is possible to run multiple FlightGear instances on a single computer and connect them all to the multiplayer network. However, this requires some extras to keep in mind:&lt;br /&gt;
* both instances use the same out-port.&lt;br /&gt;
* one instance uses in port=5001, the other port 5002.&lt;br /&gt;
* and of course should both instances have unique callsigns.&lt;br /&gt;
&lt;br /&gt;
== Using the Windows launcher / FGRun ==&lt;br /&gt;
[[File:Multiplayer.jpg|thumb|300px|Multiplayer options in [[FlightGear Wizard|FG Launcher]]]]&lt;br /&gt;
# Select your [[aircraft]] and starting airport as normal in [[FlightGear Launch Control|FGRun]].&lt;br /&gt;
# On the next screen, tick the &amp;quot;Multiplayer&amp;quot; box. Also tick the &amp;quot;AI models&amp;quot; box or you will not be able to see the other pilots' aircraft.&lt;br /&gt;
#* '''Callsign:''' of your choice. Check [http://fgfs.i-net.hu/modules/fgtracker/ this page] to see whether it is already in use or not. Do not pick a callsign that is already used!&lt;br /&gt;
#* '''Hostname:''' enter &amp;lt;tt&amp;gt;mpserverXX.flightgear.org&amp;lt;/tt&amp;gt; (with &amp;lt;tt&amp;gt;XX&amp;lt;/tt&amp;gt; being the [[#Servers|server number]]).&lt;br /&gt;
#* '''In/Out:''' set both ports to 5000.&lt;br /&gt;
# Click run and you'll soon be flying with other pilots!&lt;br /&gt;
&lt;br /&gt;
To confirm that it's working, you can go to the multiplayer map at; http://mpmap02.flightgear.org/ (in Hong Kong). Once FlightGear has started, you will notice chat messages that say &amp;quot;Hello&amp;quot; indicating pilots that are online and then as they join (you can change this message by editing the &amp;lt;tt&amp;gt;&amp;lt;chat type=&amp;quot;string&amp;quot;&amp;gt;Hello&amp;lt;/chat&amp;gt;&amp;lt;/tt&amp;gt; line in &amp;lt;tt&amp;gt;[[$FG ROOT]]/preferences.xml&amp;lt;/tt&amp;gt;). You may wish to use a different server (i.e. &amp;quot;Hostname&amp;quot; entry). &lt;br /&gt;
&lt;br /&gt;
For more advanced settings, the &amp;lt;tt&amp;gt;Advanced &amp;gt; Network&amp;lt;/tt&amp;gt; tab can be opened. You are able to remove the in or out lines only through this method for example.&lt;br /&gt;
&lt;br /&gt;
== Using fgfs from the command line ==&lt;br /&gt;
First, for those who are very impatient and have a vague idea about what they're doing, the basic arguments to pass to fgfs for multiplayer are these;&lt;br /&gt;
&lt;br /&gt;
 --multiplay=out,10,server.ip.address,5000&lt;br /&gt;
 --callsign=anything &lt;br /&gt;
&lt;br /&gt;
where 5000 is the port number the server is listening on (which is 5000 for the official servers).&lt;br /&gt;
&lt;br /&gt;
If you for some reason need to specify which local port and/or interface FlightGear should use add the following argument:&lt;br /&gt;
&lt;br /&gt;
 --multiplay=in,10,your.ip.address,portnumber&lt;br /&gt;
&lt;br /&gt;
where portnumber is usually 5000 and your.ip.address is the ip address of the network interface being used by FG to connect to the server - even if that's a local 192.168 type address. You can also leave your.ip.address blank. FlightGear will then listen on all network interfaces:&lt;br /&gt;
&lt;br /&gt;
 --multiplay=in,10,,5000&lt;br /&gt;
&lt;br /&gt;
''If you are using fgrun, please note that fgrun expects you to enter a valid (non-loopback, i.e. not 127.0.0.1) IP address or hostname for the local network interface.''&lt;br /&gt;
&lt;br /&gt;
Check [http://fgfs.i-net.hu/modules/fgtracker/ this page] to see whether your callsign is already in use or not. Do not pick a callsign that is already used, as that will create problems!&lt;br /&gt;
&lt;br /&gt;
=== Now, going more slowly for those who are completely lost... ===&lt;br /&gt;
Try the above first, and if it doesn't work, read on.&lt;br /&gt;
&lt;br /&gt;
First of all, you need to know the IP address of the network interface you'll be using for multiplayer FG. If your Internet connection is via an ADSL modem that plugs directly into your computer with a USB connection, you should be able to find your IP address by visiting http://www.whatismyip.com . Please note that your ISP might not give you the same IP address each time - if MP stops working, check this first.&lt;br /&gt;
&lt;br /&gt;
Otherwise, your connection is likely via some kind of router that connects to your computer via an RJ-45, or &amp;quot;Ethernet&amp;quot; connector (similar shape to most Western telephone plugs), or by a wireless link. You need to find the IP address of that network interface.&lt;br /&gt;
&lt;br /&gt;
* Under '''linux''', this can be found by logging in as root and typing &amp;quot;ifconfig&amp;quot;. You may find more than one interface listed, beginning with &amp;quot;lo&amp;quot; - ignore that one. You should have something like &amp;quot;eth0&amp;quot; or &amp;quot;wlan0&amp;quot; also listed - look through this block of text for &amp;quot;inet addr&amp;quot;. This will be followed directly by the number you're looking for, e.g. &amp;quot;inet addr:192.168.0.150&amp;quot;&lt;br /&gt;
* Under '''Windows XP''' or '''Vista''', click start, run, and type &amp;quot;cmd&amp;quot;. In the terminal window which appears, type &amp;quot;ipconfig&amp;quot; This should show you your IP address - write it down.&lt;br /&gt;
* With '''Windows 98''', click start, run, and type &amp;quot;winipcfg&amp;quot; to get information about your IP address.&lt;br /&gt;
&lt;br /&gt;
This section _ought_ to be unnecessary now with recent versions of the FG server. If you have problems though, it won't hurt to follow through.&lt;br /&gt;
&lt;br /&gt;
Now, all (!) that remains is to configure your router to forward UDP port 5000 to the IP address you've just found. This is not something that can be described in step-by-step detail, because each manufacturer's configuration interfaces differ greatly. Some tips are given here - if you get stuck, ask nicely on the [[FlightGear IRC channel]] for help (details on the flightgear website).&lt;br /&gt;
&lt;br /&gt;
You should know how to log on to your router's configuration page, usually via a web browser. You are looking for settings pertaining to &amp;quot;port forwarding&amp;quot; &amp;quot;virtual server&amp;quot; &amp;quot;Forwarding Rules&amp;quot; or similar. When you have found the relevant settings, you need to add a rule that forwards port 5000 to the IP address you discovered earlier. If there is a choice given, ensure it is UDP ports that are forwarded. If there is no choice, you may assume that both TCP and UDP are being forwarded. Save your configuration, and most routers will probably then need to be rebooted to apply the changes.&lt;br /&gt;
&lt;br /&gt;
Note: (for BSD users) If you are using a ADSL modem, you might have to put the port forward command into the ppp.conf file rather than firewall. This is because the firewall script will only run each time the machine is booted rather than the ppp line coming back online.&lt;br /&gt;
&lt;br /&gt;
Finally, start FG using the command line given right at the start (if you're using the windows launcher you will find entry boxes for Multiplayer arguments - insert the relevant details there). You will end up with something like this;&lt;br /&gt;
&lt;br /&gt;
 fgfs --callsign=test --multiplay=in,10,192.168.0.2,5000 --multiplay=out,10,mpserver05.flightgear.org,5000 \&lt;br /&gt;
 --airport=KSFO --runway=28R --aircraft=hunter &lt;br /&gt;
&lt;br /&gt;
Choose your own callsign - this is currently limited to seven characters. Check [http://fgfs.i-net.hu/modules/fgtracker/ this page] to see whether your callsign is already in use or not. Do not pick a callsign that is already used, as that will create problems!&lt;br /&gt;
&lt;br /&gt;
Once you have started FG, you should, if others are flying, see messages in the terminal from which FG was started, similar to the following;&lt;br /&gt;
&lt;br /&gt;
 Initialising john51a using 'Aircraft/ufo/Models/ufo.xml'  &lt;br /&gt;
 FGMultiplayRxMgr::ProcessRxData - Add new player. IP: 10.0.0.36,  &lt;br /&gt;
 Call: john51a,model: Aircraft/ufo/Models/ufo.xml &lt;br /&gt;
&lt;br /&gt;
You MUST give your local, behind-the-router IP address for MultiPlayer to work. Trust me on this one!&lt;br /&gt;
&lt;br /&gt;
You should check that your firewall is not causing problems - either turn it off _temporarily_ or add an exception to allow incoming connections on port 5000.&lt;br /&gt;
&lt;br /&gt;
If it's still just not working for you, ask nicely on the [[FlightGear IRC channel]] and someone should be able to assist.&lt;br /&gt;
&lt;br /&gt;
== Multiplayer Chat ==&lt;br /&gt;
{{Main article|Chat Menu}}&lt;br /&gt;
&lt;br /&gt;
To chat with other pilots, go to the &amp;quot;Network&amp;quot; menu and select &amp;quot;Chat&amp;quot; or &amp;quot;Chat Menu&amp;quot; at the bottom of the menu. Note that the other pilots may not have their chat box open nor chat messages enabled, so they may not see your messages.&lt;br /&gt;
&lt;br /&gt;
The shortcut for chatting is &amp;quot;_&amp;quot; (underscore) and it brings up a small window where you can type. By default, other people's messages are displayed at the top of Flightgear's window for a few seconds, but it will appear for a much longer time in the window at &amp;lt;tt&amp;gt;Network &amp;gt; Chat&amp;lt;/tt&amp;gt;. So if you think you have missed anything, go check there.&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' Multiplayer chat is not supported by FlightGear 0.9.10 or older.&lt;br /&gt;
&lt;br /&gt;
== Coping with abusive behaviour ==&lt;br /&gt;
Should you become victim of abusive or annoying behaviour by any pilot you have option to ignore him or her. To activate the ignore function open the Network-&amp;gt;&amp;quot;Pilot list&amp;quot; dialog and click the ignore button next to the pilot's call sign. In FlightGear 2.0.0 this will prevent chat messages from the ignored pilot from appearing and in FlightGear GIT of 21 May 2010 and later it will additionally prevent his aircraft from appearing.&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' The ignore function is supported by FlightGear 2.0.0 or later.&lt;br /&gt;
&lt;br /&gt;
== Related content ==&lt;br /&gt;
* [[FlightGear Multiplayer Server]]&lt;br /&gt;
* [[Howto: Set up a multiplayer server]]&lt;br /&gt;
* [[Multiplayer protocol]]&lt;br /&gt;
[[de:Howto: Multiplayer]]&lt;br /&gt;
[[es:Howto: Multijugador]]&lt;br /&gt;
[[fr:Howto: Multijoueur]]&lt;br /&gt;
[[nl:Howto: Multiplayer]]&lt;br /&gt;
[[pl: Konfiguracja trybu multiplayer]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Multiplayer]]&lt;br /&gt;
[[Category:Howto|Multiplayer]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=How_the_Nasal_GC_works&amp;diff=50441</id>
		<title>How the Nasal GC works</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=How_the_Nasal_GC_works&amp;diff=50441"/>
		<updated>2012-05-22T18:39:47Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* The pool manager */  typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
= Problem =&lt;br /&gt;
The [[Nasal]] language is a dynamic programming language, where memory is not manually allocated and freed by the programmer, but instead the Nasal virtual machine automatically allocates memory from so called &amp;quot;memory pools&amp;quot;, every so often these memory pools must be checked, to see how many references (i.e. objects like variables) are still reachable, so that the unreachable ones can be removed from the memory pool and/or so that memory blocks in each pool can be allocated or freed. This is called &amp;quot;garbage management&amp;quot; or &amp;quot;garbage collection&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The current Nasal garbage collector (GC) is known to affect the frame rate in FlightGear and occasionally causes stutter (increased frame spacing) under certain circumstances (i.e. under heavy load, due to complex scripts - such as the [[Bombable]] addon or the local weather system. &lt;br /&gt;
&lt;br /&gt;
This is largely attributed to the GC being a fairly simple sequential [http://en.wikipedia.org/wiki/Garbage_collection_(computer_science)#Copying_vs._mark-and-sweep_vs._mark-and-don.27t-sweep mark/sweep collector], which needs to stop all operations, mark all reachable objects and free unreachable objects in an exclusive, single-threaded, fashion.&lt;br /&gt;
&lt;br /&gt;
In other words, the time spent in the GC is proportial to the number of active objects (i.e.  lines of code), even for objects which may not be running or active - just loaded. For additional background information, please see [[Improving Nasal]].&lt;br /&gt;
&lt;br /&gt;
= Objective =&lt;br /&gt;
Provide a basic introduction to garbage collection and document how the existing Nasal GC scheme works, so that it can be fully understood, before alternatives (fixes/improvements) or additional implementations are added (feedback and contributions are encouraged and appreciated!).&lt;br /&gt;
&lt;br /&gt;
Also, come up with an approach to generalize the Nasal GC API such that additional GC schemes can be easily implemented next to the native Nasal GC, providing an option to select a custom/experimental GC implementation at startup. Ideally, this should be possible by using a switch property during fgfs startup - such as --prop:/sim/nasal-gc=custom&lt;br /&gt;
&lt;br /&gt;
= Suggested readings =&lt;br /&gt;
The wikipedia article on garbage collection contains some pretty good general GC information: http://en.wikipedia.org/wiki/Garbage_collection_(computer_science)&lt;br /&gt;
&lt;br /&gt;
In addition, the following online presentations provide a basic introduction to garbage collection:&lt;br /&gt;
&lt;br /&gt;
* [http://lua-users.org/wiki/GarbageCollectionInRealTimeGames Garbage Collection in realtime games]&lt;br /&gt;
* [http://msdn.microsoft.com/en-us/library/ms973837.aspx Garbage Collector Basics and Performance Hints]&lt;br /&gt;
* http://www.memorymanagement.org/glossary/g.html#garbage.collection&lt;br /&gt;
* [http://www.slideshare.net/toantvo/garbage-collector-9434996 Garbage Collection Basics]&lt;br /&gt;
* http://www.slideshare.net/khuonganpt/basic-garbage-collection-techniques&lt;br /&gt;
* http://www.slideshare.net/achinth/garbage-collection-algorithms&lt;br /&gt;
* [http://www.slideshare.net/tinoubao/takano Unified Theory of Garbage Collection]&lt;br /&gt;
* [http://waww.iecc.com/gclist/GC-faq.htmlhttp://www.iecc.com/gclist/GC-faq.html GC FAQ]&lt;br /&gt;
* [http://www.iecc.com/gclist/GC-algorithms.html GC algorithms]&lt;br /&gt;
* http://www.cs.kent.ac.uk/people/staff/rej/gc.html&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
{{#ev:youtube|rp8PvFvSO_c|600|Lecture on GC (45 minutes)}}&lt;br /&gt;
&lt;br /&gt;
= Mark/Sweep =&lt;br /&gt;
&lt;br /&gt;
When using a mark-and-sweep collector, unreachable objects are not immediately reclaimed. Instead, garbage is allowed to accumulate until all available memory has been exhausted. When that happens, the execution of the program is suspended temporarily while the mark-and-sweep algorithm collects all the garbage. Once all unreferenced objects have been reclaimed, the normal execution of the program can resume.&lt;br /&gt;
&lt;br /&gt;
Obviously, the main disadvantage of the mark-and-sweep approach is the fact that that normal program execution is suspended while the garbage collection algorithm runs. In particular, this can be a problem in a program that must satisfy real-time execution constraints (like a flight simulator). For example, an interactive application that uses mark-and-sweep garbage collection becomes unresponsive periodically.&lt;br /&gt;
&lt;br /&gt;
The mark-and-sweep algorithm is called a tracing garbage collector because is traces out the entire collection of objects that are directly or indirectly accessible by the program. The objects that a program can access directly are those objects which are referenced by local variables on the processor stack as well as by any static variables that refer to objects. In the context of garbage collection, these variables are called the roots . An object is indirectly accessible if it is referenced by a field in some other (directly or indirectly) accessible object. An accessible object is said to be live . Conversely, an object which is not live is garbage.&lt;br /&gt;
&lt;br /&gt;
The mark-and-sweep algorithm consists of two phases: In the first phase, it finds and marks all accessible objects. The first phase is called the mark phase. In the second phase, the garbage collection algorithm scans through the heap and reclaims all the unmarked objects. The second phase is called the sweep phase.&lt;br /&gt;
&lt;br /&gt;
The mark/sweep algorithm can also be easily expressed using pseudo code, i.e. in Nasal itself:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 var garbageCollect = func (roots) {&lt;br /&gt;
 foreach(var root; roots) {&lt;br /&gt;
   mark(root);&lt;br /&gt;
  }&lt;br /&gt;
  sweep();&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The mark() function would just recursively check (i.e. calling itself) if the &amp;quot;marked&amp;quot; flag is set or not, and make sure to set the mark bit for all referenced objects:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 var mark = func (obj) {&lt;br /&gt;
  if (!obj.marked) {&lt;br /&gt;
   obj.marked=1;&lt;br /&gt;
   foreach( var referenced; referenced_by(obj) )&lt;br /&gt;
     mark(referenced);&lt;br /&gt;
  }&lt;br /&gt;
 }&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Finally, the sweep() function (reap() in the Nasal GC), will free all unreachable objects and reclaim the memory:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 var sweep = func {&lt;br /&gt;
  foreach(var obj; allocated_objects) {&lt;br /&gt;
   if (obj.marked) obj.marked=0;&lt;br /&gt;
   else reclaim(obj);&lt;br /&gt;
  }&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nasal's implementation of sweep() ( called reap() ) works such that it is always executed for a handful of different type-specific memory pools. In addition, it also makes sure to allocate new memory if required.&lt;br /&gt;
&lt;br /&gt;
= Pool storage =&lt;br /&gt;
A [http://en.wikipedia.org/wiki/Memory_pool memory pool] is basically a preallocated region of memory, which is dynamically resized. The Nasal GC works such that it manages a handful of global memory pools for all native Nasal types (strings, functions, vectors, hashes etc). At the moment, the hard coded defaults ensure that 25-50% of additional object &amp;quot;slots&amp;quot; (memory blocks) are kept available during each execution of reap() [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line287].&lt;br /&gt;
&lt;br /&gt;
Whenever new memory is requested to create a new type (such as a vector or a string), the available memory in the corresponding pool will be checked, reachable objects will be marked, and dead objects will be removed from all pools using a mark/sweep collector, new memory blocks will be allocated if necessary. All of this happens atomically, i.e. single-threaded.&lt;br /&gt;
&lt;br /&gt;
== Memory blocks ==&lt;br /&gt;
&lt;br /&gt;
[[File:NasalBlockStruct.png|thumb|450px|Nasal Block structure]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A Nasal memory pool consists of memory blocks.&lt;br /&gt;
&lt;br /&gt;
A memory block is a [http://en.wikipedia.org/wiki/Linked_list#Linear_and_circular_lists singly linked list]: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line10&lt;br /&gt;
&lt;br /&gt;
[[File:NasalNewBlockCallgraph.png|thumb|400px|Callgraph for newBlock()]]&lt;br /&gt;
&lt;br /&gt;
Each block contains a field to store its size, a pointer to the allocated memory, and another pointer to the next block.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
struct Block {&lt;br /&gt;
    int   size; // size of the block &lt;br /&gt;
    char* block; // pointer to the memory region&lt;br /&gt;
    struct Block* next;	// pointer to the next block&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
New memory blocks are allocated using newBlock() and the memory is initialized with 0: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line150&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
static void newBlock(struct naPool* p, int need)	&lt;br /&gt;
{&lt;br /&gt;
    int i;&lt;br /&gt;
    struct Block* newb;&lt;br /&gt;
    if(need &amp;lt; MIN_BLOCK_SIZE) need = MIN_BLOCK_SIZE;&lt;br /&gt;
    // allocate a new Block&lt;br /&gt;
    newb = naAlloc(sizeof(struct Block));&lt;br /&gt;
    // initialize the Block&lt;br /&gt;
    newb-&amp;gt;block = naAlloc(need * p-&amp;gt;elemsz); // number of elements * size of element&lt;br /&gt;
    newb-&amp;gt;size = need; // set block size &lt;br /&gt;
    // memory blocks are circular linked lists: &lt;br /&gt;
    newb-&amp;gt;next = p-&amp;gt;blocks;&lt;br /&gt;
    p-&amp;gt;blocks = newb;&lt;br /&gt;
    naBZero(newb-&amp;gt;block, need * p-&amp;gt;elemsz);&lt;br /&gt;
&lt;br /&gt;
    if(need &amp;gt; p-&amp;gt;freesz - p-&amp;gt;freetop) need = p-&amp;gt;freesz - p-&amp;gt;freetop;&lt;br /&gt;
    p-&amp;gt;nfree = 0;&lt;br /&gt;
    p-&amp;gt;free = p-&amp;gt;free0 + p-&amp;gt;freetop;&lt;br /&gt;
    // mark all new blocks as unreachable and add them to the pool's free list&lt;br /&gt;
    for(i=0; i &amp;lt; need; i++) {&lt;br /&gt;
        // initialize each new new memory blocks by setting up an naRef (the container for all Nasal references) &lt;br /&gt;
        struct naObj* o = (struct naObj*)(newb-&amp;gt;block + i*p-&amp;gt;elemsz);&lt;br /&gt;
        o-&amp;gt;mark = 0;&lt;br /&gt;
        p-&amp;gt;free[p-&amp;gt;nfree++] = o;	&lt;br /&gt;
    }&lt;br /&gt;
    p-&amp;gt;freetop += need;	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Nasal memory pools ==&lt;br /&gt;
&lt;br /&gt;
For each of the 7 Nasal data types, there is a separate storage pool available, declared as part of the &amp;quot;Globals&amp;quot; structure.&lt;br /&gt;
&lt;br /&gt;
As can be seen, each storage pool is addressed by its enum index (0..6): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/data.h#line65&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
enum { T_STR, T_VEC, T_HASH, T_CODE, T_FUNC, T_CCODE, T_GHOST, NUM_NASAL_TYPES }; // V. important that this come last!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For example, '''globals-&amp;gt;pools[T_VEC]''' refers to the storage pools  for vectors:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
globals-&amp;gt;pools[T_VEC];&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The 7 storage pools are declared in code.h as part of the &amp;quot;Globals&amp;quot; structure, line 39: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/code.h#line39&lt;br /&gt;
&lt;br /&gt;
The relevant part is:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
struct Globals {	&lt;br /&gt;
    // Garbage collecting allocators:&lt;br /&gt;
    struct naPool pools[NUM_NASAL_TYPES];&lt;br /&gt;
    int allocCount;&lt;br /&gt;
    // Dead blocks waiting to be freed when it is safe&lt;br /&gt;
    void** deadBlocks;&lt;br /&gt;
    int deadsz;&lt;br /&gt;
    int ndead;&lt;br /&gt;
//...&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
So, we have these pools:&lt;br /&gt;
&lt;br /&gt;
* globals-&amp;gt;pools[T_STR]&lt;br /&gt;
* globals-&amp;gt;pools[T_VEC]&lt;br /&gt;
* globals-&amp;gt;pools[T_HASH]&lt;br /&gt;
* globals-&amp;gt;pools[T_CODE]&lt;br /&gt;
* globals-&amp;gt;pools[T_FUNC]&lt;br /&gt;
* globals-&amp;gt;pools[T_CCODE]&lt;br /&gt;
* globals-&amp;gt;pools[T_GHOST]&lt;br /&gt;
&lt;br /&gt;
== The Globals structure ==&lt;br /&gt;
&lt;br /&gt;
[[File:NasalGlobalsStruct.png|thumb|500px|Nasal Globals structure]]&lt;br /&gt;
&lt;br /&gt;
The complete Globals structure looks like this:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
struct Globals {	&lt;br /&gt;
    // Garbage collecting allocators:&lt;br /&gt;
    struct naPool pools[NUM_NASAL_TYPES];&lt;br /&gt;
    int allocCount;&lt;br /&gt;
    // Dead blocks waiting to be freed when it is safe&lt;br /&gt;
    void** deadBlocks;&lt;br /&gt;
    int deadsz;&lt;br /&gt;
    int ndead;&lt;br /&gt;
&lt;br /&gt;
    // Threading stuff&lt;br /&gt;
	&lt;br /&gt;
    int nThreads;&lt;br /&gt;
	&lt;br /&gt;
    int waitCount;&lt;br /&gt;
	&lt;br /&gt;
    int needGC;&lt;br /&gt;
	&lt;br /&gt;
    int bottleneck;&lt;br /&gt;
	&lt;br /&gt;
    void* sem;&lt;br /&gt;
	&lt;br /&gt;
    void* lock;&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
    // Constants&lt;br /&gt;
	&lt;br /&gt;
    naRef meRef;&lt;br /&gt;
	&lt;br /&gt;
    naRef argRef;&lt;br /&gt;
&lt;br /&gt;
    naRef parentsRef;&lt;br /&gt;
&lt;br /&gt;
    // A hash of symbol names&lt;br /&gt;
    naRef symbols;&lt;br /&gt;
    naRef save;&lt;br /&gt;
    struct Context* freeContexts;&lt;br /&gt;
    struct Context* allContexts;	&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== The naPool structure ==&lt;br /&gt;
&lt;br /&gt;
[[File:NasalnaPoolStruct.png|thumb|400px|Nasal naPool structure]]&lt;br /&gt;
&lt;br /&gt;
The structure keeping all pool-related information is named &amp;quot;naPool&amp;quot;, the layout of the naPool structure can be seen in data.h, line 172: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/data.h#line172&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
struct naPool {&lt;br /&gt;
    int           type; // one of T_STR, T_VEC, T_HASH etc&lt;br /&gt;
    int           elemsz; // size of each element - determined via naTypeSize(T_*)&lt;br /&gt;
    struct Block* blocks;&lt;br /&gt;
    void**   free0; // pointer to the alloced buffer&lt;br /&gt;
    int     freesz; // size of the alloced buffer&lt;br /&gt;
    void**    free; // current &amp;quot;free frame&amp;quot;&lt;br /&gt;
    int      nfree; // down-counting index within the free frame&lt;br /&gt;
    int    freetop; // curr. top of the free list&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Each memory pool is initialized using naGC_init(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line175&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
void naGC_init(struct naPool* p, int type)&lt;br /&gt;
{&lt;br /&gt;
    p-&amp;gt;type = type;&lt;br /&gt;
    p-&amp;gt;elemsz = naTypeSize(type);&lt;br /&gt;
    p-&amp;gt;blocks = 0;&lt;br /&gt;
    p-&amp;gt;free0 = p-&amp;gt;free = 0;&lt;br /&gt;
    p-&amp;gt;nfree = p-&amp;gt;freesz = p-&amp;gt;freetop = 0;&lt;br /&gt;
    reap(p);	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As can be seen, &amp;quot;elemsz&amp;quot;  just stores the size of each type-specific structure, so that it can be used for new allocations.&lt;br /&gt;
&lt;br /&gt;
naGC_init is called in initGlobals() in code.c for each Nasal type (T_STR, T_VEC etc): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/code.c#line170&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
for(i=0; i&amp;lt;NUM_NASAL_TYPES; i++)&lt;br /&gt;
        naGC_init(&amp;amp;(globals-&amp;gt;pools[i]), i);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The size of a memory pool is determined using poolsize(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line186&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
static int poolsize(struct naPool* p)&lt;br /&gt;
{&lt;br /&gt;
    int total = 0;&lt;br /&gt;
    struct Block* b = p-&amp;gt;blocks;&lt;br /&gt;
    while(b) { total += b-&amp;gt;size; b = b-&amp;gt;next; }&lt;br /&gt;
    return total;	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The function poolsize() just iterates over all memory blocks in the pool, and computes the total size of the pool by adding up the &amp;quot;size&amp;quot; field of all blocks in the linked list.&lt;br /&gt;
&lt;br /&gt;
= Allocating Nasal types =&lt;br /&gt;
&lt;br /&gt;
All Nasal types (scalars, vectors, hashes, funcs, ghosts) are allocated via wrappers in [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c misc.c].&lt;br /&gt;
&lt;br /&gt;
These wrappers are:&lt;br /&gt;
* naNewString(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line77&lt;br /&gt;
* naNewVector(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line87&lt;br /&gt;
* naNewHash(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line94&lt;br /&gt;
* naNewCode(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line101&lt;br /&gt;
* naNewCCode(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line106&lt;br /&gt;
* naNewFunc(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line113&lt;br /&gt;
* naNewGhost(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line122&lt;br /&gt;
* naNewGhost2(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line135&lt;br /&gt;
&lt;br /&gt;
All of these wrappers are really just helpers on top of naNew(), they just set up type-specific information and initialize each Nasal type properly.&lt;br /&gt;
For instance, first naNew() is called for the given context, along with the type info (to set up the size properly)- and then each type is initialized:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
// The naNew* helpers are just wrappers to set up type-specific structures, after allocating the memory using naNew()&lt;br /&gt;
naRef naNewString(struct Context* c)	&lt;br /&gt;
{&lt;br /&gt;
    naRef s = naNew(c, T_STR);&lt;br /&gt;
    PTR(s).str-&amp;gt;emblen = 0;&lt;br /&gt;
    PTR(s).str-&amp;gt;data.ref.len = 0;&lt;br /&gt;
    PTR(s).str-&amp;gt;data.ref.ptr = 0;&lt;br /&gt;
    PTR(s).str-&amp;gt;hashcode = 0;&lt;br /&gt;
    return s;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= naNew() =&lt;br /&gt;
&lt;br /&gt;
As can be seen, the key allocator function is [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line66 naNew()]. &lt;br /&gt;
All memory allocations done via the naNew*() helpers will first of all set up memory using naNew().&lt;br /&gt;
&lt;br /&gt;
naNew() is really just a fancy malloc() replacement, i.e. it's just getting passed the Nasal execution context, and the nasal type (which is mapped to the size of the requested memory region using naTypeSize()).&lt;br /&gt;
&lt;br /&gt;
The naNew() function is also implemented in misc.c, see [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line122 line 66]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
naRef naNew(struct Context* c, int type)	&lt;br /&gt;
{&lt;br /&gt;
    naRef result;&lt;br /&gt;
    if(c-&amp;gt;nfree[type] == 0)&lt;br /&gt;
        c-&amp;gt;free[type] = naGC_get(&amp;amp;globals-&amp;gt;pools[type],&lt;br /&gt;
                                 OBJ_CACHE_SZ, &amp;amp;c-&amp;gt;nfree[type]);&lt;br /&gt;
    result = naObj(type, c-&amp;gt;free[type][--c-&amp;gt;nfree[type]]);&lt;br /&gt;
    naTempSave(c, result);&lt;br /&gt;
    return result;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
First, the conditional checks if there's any free memory in the Nasal storage pools  for the requested Nasal data type, if there isn't any free memory left, new memory is assigned to the contexts-&amp;gt;free[type] pool via naGC_get().&lt;br /&gt;
&lt;br /&gt;
'''Note:''' naGC_get() is the only function which really manages all memory pools and which triggers the GC. Allocations via naNew()* will end up calling naNew() and naNew() ends up calling naGC_get() '''always'''.&lt;br /&gt;
&lt;br /&gt;
For the time being, OBJ_CACHE_SZ can be ignored, it's defined in code.h, line 12: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/code.h#line12&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
// Number of objects (per pool per thread) asked for using naGC_get().&lt;br /&gt;
// The idea is that contexts can &amp;quot;cache&amp;quot; allocations to prevent thread&lt;br /&gt;
// contention on the global pools.  But in practice this interacts&lt;br /&gt;
// very badly with small subcontext calls, which grab huge numbers of&lt;br /&gt;
// cached objects and don't use them, causing far more collections&lt;br /&gt;
// than necessary.  Just leave it at 1 pending a rework of the&lt;br /&gt;
// collector synchronization.&lt;br /&gt;
#define OBJ_CACHE_SZ 1&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The final argument to the naGC_get() function is a pointer to to the context's nfree[type] member which is updated by the function.&lt;br /&gt;
&lt;br /&gt;
Next, a new naRef structure is set up using the allocated naObj memory and the type info: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
result = naObj(type, c-&amp;gt;free[type][--c-&amp;gt;nfree[type]]);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
naRef naObj(int type, struct naObj* o)	&lt;br /&gt;
{&lt;br /&gt;
    naRef r;&lt;br /&gt;
    SETPTR(r, o);&lt;br /&gt;
    o-&amp;gt;type = type;&lt;br /&gt;
    return r;	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= The GC interface =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Nasal-gc.png|thumb|650px|Nasal GC]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TODO: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/data.h#line204&lt;br /&gt;
&lt;br /&gt;
* void naGC_init(struct naPool* p, int type);&lt;br /&gt;
* struct naObj** naGC_get(struct naPool* p, int n, int* nout);	&lt;br /&gt;
* void naGC_swapfree(void** target, void* val); (used for vector/hash resizing)&lt;br /&gt;
* void naGC_freedead();&lt;br /&gt;
* void naiGCMark(naRef r);&lt;br /&gt;
* void naiGCMarkHash(naRef h);&lt;br /&gt;
&lt;br /&gt;
= The pool manager =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:NasalNaGetCallgraph.png|thumb|550px|Callgraph for naGC_get()]]&lt;br /&gt;
&lt;br /&gt;
All high level type allocators (naNewString, naNewVector, naNewHash etc) make use of the naNew() call introduced earlier.&lt;br /&gt;
&lt;br /&gt;
naNew() doesn't directly allocate new memory from the heap using naAlloc(), but instead use the naGC_get() helper which manages memory from the global pools (i.e. preallocated memory for each type).&lt;br /&gt;
&lt;br /&gt;
For each native Nasal data type (scalars, vectors, hashes, funcs etc) , there are separate memory pools in globals-&amp;gt;pools[n]. The index (n) is one of T_VEC, T_HASH, T_FUNC etc.&lt;br /&gt;
&lt;br /&gt;
The naGC_get() pool &amp;quot;manager&amp;quot; is located in gc.nas line 194: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line194&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
struct naObj** naGC_get(struct naPool* p, int n, int* nout)&lt;br /&gt;
{&lt;br /&gt;
    struct naObj** result;&lt;br /&gt;
    naCheckBottleneck();&lt;br /&gt;
    LOCK();&lt;br /&gt;
    while(globals-&amp;gt;allocCount &amp;lt; 0 || (p-&amp;gt;nfree == 0 &amp;amp;&amp;amp; p-&amp;gt;freetop &amp;gt;= p-&amp;gt;freesz)) {&lt;br /&gt;
        globals-&amp;gt;needGC = 1;&lt;br /&gt;
        bottleneck();	&lt;br /&gt;
    }&lt;br /&gt;
    if(p-&amp;gt;nfree == 0)&lt;br /&gt;
        newBlock(p, poolsize(p)/8);&lt;br /&gt;
    n = p-&amp;gt;nfree &amp;lt; n ? p-&amp;gt;nfree : n;&lt;br /&gt;
    *nout = n;&lt;br /&gt;
    p-&amp;gt;nfree -= n;&lt;br /&gt;
    globals-&amp;gt;allocCount -= n;&lt;br /&gt;
    result = (struct naObj**)(p-&amp;gt;free + p-&amp;gt;nfree);&lt;br /&gt;
    UNLOCK();&lt;br /&gt;
    return result;	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As can be seen, the garbage collector itself is triggered by setting the global &amp;quot;needGC&amp;quot; flag to 1 in the globals structure and then calling the bottleneck() function: [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line199].&lt;br /&gt;
&lt;br /&gt;
In line 209, the memory region from the global pool is cast back to a pointer (struct naObj**): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line209&lt;br /&gt;
the &amp;quot;nout&amp;quot; parameter is just there to update c-&amp;gt;nfree[type] with the amount of free memory.&lt;br /&gt;
&lt;br /&gt;
In other words, whenever new Nasal types are allocated, new memory from one of the 7 Nasal pools is requested. All of these allocation requests are channeled through naNew() and finally naGC_get(). naGC_get() is the de facto memory manager in Nasal, all memory management is triggered here - new memory block allocations for each pool, as well as garbage collection via the bottleneck() call.&lt;br /&gt;
&lt;br /&gt;
This also means that we basically just need to provide an alternate naGC_get() function, next to the existing one, to add support for alternate GC schemes.&lt;br /&gt;
&lt;br /&gt;
= Disabling the current GC =&lt;br /&gt;
&lt;br /&gt;
The overhead caused by managing the memory pools and constantly scanning the  heap (mark/reap) can be examined by modifying the naGC_get() function such that it no longer uses any pool memory, but directly allocates via malloc()/naAlloc() - without ever freeing any memory (i.e. leaking). While the fgfs process will eventually get killed this way, the GC will be basically switched off.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
struct naObj** naGC_get(struct naPool* p, int n, int* nout)&lt;br /&gt;
{&lt;br /&gt;
    struct naObj** result;&lt;br /&gt;
    naCheckBottleneck();&lt;br /&gt;
    LOCK();&lt;br /&gt;
#define LEAKY &lt;br /&gt;
#ifndef LEAKY&lt;br /&gt;
    while(globals-&amp;gt;allocCount &amp;lt; 0 || (p-&amp;gt;nfree == 0 &amp;amp;&amp;amp; p-&amp;gt;freetop &amp;gt;= p-&amp;gt;freesz)) {&lt;br /&gt;
        globals-&amp;gt;needGC = 1;&lt;br /&gt;
        bottleneck();	&lt;br /&gt;
    }&lt;br /&gt;
    if(p-&amp;gt;nfree == 0)&lt;br /&gt;
        newBlock(p, poolsize(p)/8);&lt;br /&gt;
    n = p-&amp;gt;nfree &amp;lt; n ? p-&amp;gt;nfree : n;&lt;br /&gt;
    *nout = n;&lt;br /&gt;
    p-&amp;gt;nfree -= n;&lt;br /&gt;
    globals-&amp;gt;allocCount -= n;&lt;br /&gt;
    result = (struct naObj**)(p-&amp;gt;free + p-&amp;gt;nfree);&lt;br /&gt;
#else&lt;br /&gt;
    result = (struct naObj**) naAlloc( naTypeSize(n) );&lt;br /&gt;
#endif&lt;br /&gt;
    UNLOCK();&lt;br /&gt;
    return result;	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= bottleneck() =&lt;br /&gt;
&lt;br /&gt;
[[File:NasalCheckBottleneckCallerGraph.png|thumb|450px|Callergraph of naCheckBottleneck()]]&lt;br /&gt;
[[File:NasalCheckBottleneckCallgraph.png|thumb|400px|Callgraph of naCheckBottleneck()]]&lt;br /&gt;
&lt;br /&gt;
Whenever new memory from one of the global pools is being requested via naGC_get(), naCheckBottleneck() will also be invoked:&lt;br /&gt;
&lt;br /&gt;
https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line121&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
void naCheckBottleneck()	&lt;br /&gt;
{&lt;br /&gt;
    if(globals-&amp;gt;bottleneck) { LOCK(); bottleneck(); UNLOCK(); }	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This checks if globals-&amp;gt;bottleneck is true, and if it is, it makes sure that the bottleneck() function is only invoked after acquiring a lock.&lt;br /&gt;
&lt;br /&gt;
[[File:NasalBottleneckCallgraph.png|thumb|550px|Callgraph of bottleneck()]]&lt;br /&gt;
&lt;br /&gt;
https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line99&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
// Must be called with the main lock.  Engages the &amp;quot;bottleneck&amp;quot;, where&lt;br /&gt;
// all threads will block so that one (the last one to call this&lt;br /&gt;
// function) can run alone.  This is done for GC, and also to free the&lt;br /&gt;
// list of &amp;quot;dead&amp;quot; blocks when it gets full (which is part of GC, if&lt;br /&gt;
// you think about it).&lt;br /&gt;
static void bottleneck()	&lt;br /&gt;
{&lt;br /&gt;
    struct Globals* g = globals;&lt;br /&gt;
    g-&amp;gt;bottleneck = 1;&lt;br /&gt;
    while(g-&amp;gt;bottleneck &amp;amp;&amp;amp; g-&amp;gt;waitCount &amp;lt; g-&amp;gt;nThreads - 1) {&lt;br /&gt;
        g-&amp;gt;waitCount++;&lt;br /&gt;
        UNLOCK(); naSemDown(g-&amp;gt;sem); LOCK();&lt;br /&gt;
        g-&amp;gt;waitCount--;	&lt;br /&gt;
    }&lt;br /&gt;
    if(g-&amp;gt;waitCount &amp;gt;= g-&amp;gt;nThreads - 1) {&lt;br /&gt;
        freeDead();&lt;br /&gt;
        if(g-&amp;gt;needGC) garbageCollect();&lt;br /&gt;
        if(g-&amp;gt;waitCount) naSemUp(g-&amp;gt;sem, g-&amp;gt;waitCount);&lt;br /&gt;
        g-&amp;gt;bottleneck = 0;	&lt;br /&gt;
    }	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The actual garbage collection takes place in [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line114 line 114] where dead objects from the memory pool are freed, and the garbageCollect() function is called if globals.needGC is true.&lt;br /&gt;
&lt;br /&gt;
= garbageCollect() =&lt;br /&gt;
&lt;br /&gt;
[[File:NasalGarbageCollectCallgraph.png|thumb|550px|Callgraph of garbageCollect()]]&lt;br /&gt;
&lt;br /&gt;
This is the function that does the mark/sweep part using mark() to recursively mark reachable objects, and reap() to collect unreachable objects.&lt;br /&gt;
&lt;br /&gt;
https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line35&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
// Must be called with the big lock!&lt;br /&gt;
static void garbageCollect()	&lt;br /&gt;
{&lt;br /&gt;
    int i;&lt;br /&gt;
    struct Context* c;&lt;br /&gt;
    globals-&amp;gt;allocCount = 0;&lt;br /&gt;
    c = globals-&amp;gt;allContexts;&lt;br /&gt;
    while(c) {&lt;br /&gt;
        for(i=0; i&amp;lt;NUM_NASAL_TYPES; i++)&lt;br /&gt;
            c-&amp;gt;nfree[i] = 0;&lt;br /&gt;
        for(i=0; i &amp;lt; c-&amp;gt;fTop; i++) {&lt;br /&gt;
            mark(c-&amp;gt;fStack[i].func);&lt;br /&gt;
            mark(c-&amp;gt;fStack[i].locals);&lt;br /&gt;
        }&lt;br /&gt;
        for(i=0; i &amp;lt; c-&amp;gt;opTop; i++)&lt;br /&gt;
            mark(c-&amp;gt;opStack[i]);&lt;br /&gt;
        mark(c-&amp;gt;dieArg);&lt;br /&gt;
        marktemps(c);&lt;br /&gt;
        c = c-&amp;gt;nextAll;	&lt;br /&gt;
    }&lt;br /&gt;
    mark(globals-&amp;gt;save);&lt;br /&gt;
    mark(globals-&amp;gt;symbols);&lt;br /&gt;
    mark(globals-&amp;gt;meRef);&lt;br /&gt;
    mark(globals-&amp;gt;argRef);&lt;br /&gt;
    mark(globals-&amp;gt;parentsRef);&lt;br /&gt;
    // Finally collect all the freed objects&lt;br /&gt;
    for(i=0; i&amp;lt;NUM_NASAL_TYPES; i++)&lt;br /&gt;
        reap(&amp;amp;(globals-&amp;gt;pools[i]));&lt;br /&gt;
    // Make enough space for the dead blocks we need to free during&lt;br /&gt;
    // execution.  This works out to 1 spot for every 2 live objects,&lt;br /&gt;
    // which should be limit the number of bottleneck operations&lt;br /&gt;
    // without imposing an undue burden of extra &amp;quot;freeable&amp;quot; memory.&lt;br /&gt;
    if(globals-&amp;gt;deadsz &amp;lt; globals-&amp;gt;allocCount) {&lt;br /&gt;
        globals-&amp;gt;deadsz = globals-&amp;gt;allocCount;&lt;br /&gt;
        if(globals-&amp;gt;deadsz &amp;lt; 256) globals-&amp;gt;deadsz = 256;&lt;br /&gt;
        naFree(globals-&amp;gt;deadBlocks);&lt;br /&gt;
        globals-&amp;gt;deadBlocks = naAlloc(sizeof(void*) * globals-&amp;gt;deadsz);	&lt;br /&gt;
    }&lt;br /&gt;
    globals-&amp;gt;needGC = 0;	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For each invocation of garbageCollect(), the following takes place:&lt;br /&gt;
* For each context:&lt;br /&gt;
** The counter for each type-specific pool will be reset to 0 in line 43: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line43&lt;br /&gt;
** for each stack frame of the given context, all reachable locals and functions will be marked as reachable in line 45: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line45&lt;br /&gt;
** All instructions in the opcode stack will be marked as reachable from top to bottom in line 49: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line49&lt;br /&gt;
** mark(die-&amp;gt;Arg)&lt;br /&gt;
** temporary variables are marked reachable&lt;br /&gt;
* root references (constants) are marked reachable in line56:  https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line56&lt;br /&gt;
* foreach Nasal data type:&lt;br /&gt;
** unreachable objects are then collected in line 62: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line62&lt;br /&gt;
* dead blocks are freed and new memory is allocated in line: 66 https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line66&lt;br /&gt;
* the needGC flag is set to 0&lt;br /&gt;
&lt;br /&gt;
= mark() =&lt;br /&gt;
&lt;br /&gt;
[[File:NasalMarkCallgraph.png|thumb|400px|Callgraph of mark()]]&lt;br /&gt;
&lt;br /&gt;
All reachable objects are recursively marked using tagged naRef structures [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/data.h#line50], so that unreachable objects can be collected (i.e. because the reftag bit is not set) and freed.&lt;br /&gt;
&lt;br /&gt;
TOOD: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line223&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= reap() =&lt;br /&gt;
&lt;br /&gt;
[[File:NasalReapCallgraph.png|thumb|450px|Callgraph for reap()]]&lt;br /&gt;
&lt;br /&gt;
This is the collector function called by garbageCollect() which also frees elements and allocates new blocks for the specified pool:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
// Collects all the unreachable objects into a free list, and&lt;br /&gt;
// allocates more space if needed.&lt;br /&gt;
static void reap(struct naPool* p)&lt;br /&gt;
{&lt;br /&gt;
    struct Block* b;&lt;br /&gt;
    int elem, freesz, total = poolsize(p);&lt;br /&gt;
    freesz = total &amp;lt; MIN_BLOCK_SIZE ? MIN_BLOCK_SIZE : total;&lt;br /&gt;
    freesz = (3 * freesz / 2) + (globals-&amp;gt;nThreads * OBJ_CACHE_SZ);&lt;br /&gt;
    if(p-&amp;gt;freesz &amp;lt; freesz) {&lt;br /&gt;
        naFree(p-&amp;gt;free0);&lt;br /&gt;
        p-&amp;gt;freesz = freesz;&lt;br /&gt;
        p-&amp;gt;free = p-&amp;gt;free0 = naAlloc(sizeof(void*) * p-&amp;gt;freesz);&lt;br /&gt;
    }&lt;br /&gt;
    p-&amp;gt;nfree = 0;&lt;br /&gt;
    p-&amp;gt;free = p-&amp;gt;free0;&lt;br /&gt;
    for(b = p-&amp;gt;blocks; b; b = b-&amp;gt;next)&lt;br /&gt;
        for(elem=0; elem &amp;lt; b-&amp;gt;size; elem++) {&lt;br /&gt;
            struct naObj* o = (struct naObj*)(b-&amp;gt;block + elem * p-&amp;gt;elemsz);&lt;br /&gt;
            if(o-&amp;gt;mark == 0)&lt;br /&gt;
                freeelem(p, o);&lt;br /&gt;
            o-&amp;gt;mark = 0;&lt;br /&gt;
        }&lt;br /&gt;
    p-&amp;gt;freetop = p-&amp;gt;nfree;&lt;br /&gt;
    // allocs of this type until the next collection&lt;br /&gt;
    globals-&amp;gt;allocCount += total/2;&lt;br /&gt;
    // Allocate more if necessary (try to keep 25-50% of the objects&lt;br /&gt;
    // available)&lt;br /&gt;
    if(p-&amp;gt;nfree &amp;lt; total/4) {&lt;br /&gt;
        int used = total - p-&amp;gt;nfree;&lt;br /&gt;
        int avail = total - used;&lt;br /&gt;
        int need = used/2 - avail;&lt;br /&gt;
        if(need &amp;gt; 0)&lt;br /&gt;
            newBlock(p, need);&lt;br /&gt;
    }	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=swapfree() =&lt;br /&gt;
[[File:NasalGC swapfreeCallgraph.png|thumb|450px|Callgraph of swapfree()]]&lt;br /&gt;
&lt;br /&gt;
= freeelem() =&lt;br /&gt;
&lt;br /&gt;
[[File:NasalFreeelemCallgraph.png|thumb|Callgraph of freeelem()]]&lt;br /&gt;
&lt;br /&gt;
Frees individual elements and adds freed pointers to the globals free list, implemented in gc.c: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line137&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
static void freeelem(struct naPool* p, struct naObj* o)&lt;br /&gt;
{&lt;br /&gt;
    // Clean up any intrinsic storage the object might have...&lt;br /&gt;
    switch(p-&amp;gt;type) {&lt;br /&gt;
    case T_STR:   naStr_gcclean  ((struct naStr*)  o); break;&lt;br /&gt;
    case T_VEC:   naVec_gcclean  ((struct naVec*)  o); break;&lt;br /&gt;
    case T_HASH:  naiGCHashClean ((struct naHash*) o); break;&lt;br /&gt;
    case T_CODE:  naCode_gcclean ((struct naCode*) o); break;&lt;br /&gt;
    case T_GHOST: naGhost_gcclean((struct naGhost*)o); break;	&lt;br /&gt;
    }&lt;br /&gt;
    p-&amp;gt;free[p-&amp;gt;nfree++] = o;  // ...and add it to the free list	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Type destructors =&lt;br /&gt;
Will be called by freelem(), implemented for all native Nasal types:&lt;br /&gt;
&lt;br /&gt;
* strings (T_STR):   naStr_gcclean [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/string.c#line113]&lt;br /&gt;
* vectors (T_VEC):   naVec_gcclean [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/vector.c#line22]&lt;br /&gt;
* hashes (T_HASH):  naiGCHashClean [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/hash.c#line221]&lt;br /&gt;
* code   (T_CODE):  naCode_gcclean [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line126]&lt;br /&gt;
* ghosts (T_GHOST): naGhost_gcclean [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line131]&lt;br /&gt;
&lt;br /&gt;
= Contexts =&lt;br /&gt;
&lt;br /&gt;
[[File:NasalContextStruct.png|thumb|500px|Nasal Context structure]]&lt;br /&gt;
&lt;br /&gt;
https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/code.h#line71&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
struct Context {&lt;br /&gt;
	&lt;br /&gt;
    // Stack(s)&lt;br /&gt;
	&lt;br /&gt;
    struct Frame fStack[MAX_RECURSION];&lt;br /&gt;
	&lt;br /&gt;
    int fTop;&lt;br /&gt;
	&lt;br /&gt;
    naRef opStack[MAX_STACK_DEPTH];&lt;br /&gt;
	&lt;br /&gt;
    int opFrame; // like Frame::bp, but for C functions&lt;br /&gt;
	&lt;br /&gt;
    int opTop;&lt;br /&gt;
	&lt;br /&gt;
    int markStack[MAX_MARK_DEPTH];&lt;br /&gt;
	&lt;br /&gt;
    int markTop;&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
    // Free object lists, cached from the global GC&lt;br /&gt;
	&lt;br /&gt;
    struct naObj** free[NUM_NASAL_TYPES];&lt;br /&gt;
	&lt;br /&gt;
    int nfree[NUM_NASAL_TYPES];&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
    // GC-findable reference point for objects that may live on the&lt;br /&gt;
	&lt;br /&gt;
    // processor (&amp;quot;real&amp;quot;) stack during execution.  naNew() places them&lt;br /&gt;
	&lt;br /&gt;
    // here, and clears the array each instruction&lt;br /&gt;
	&lt;br /&gt;
    struct naObj** temps;&lt;br /&gt;
	&lt;br /&gt;
    int ntemps;&lt;br /&gt;
	&lt;br /&gt;
    int tempsz;&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
    // Error handling&lt;br /&gt;
	&lt;br /&gt;
    jmp_buf jumpHandle;&lt;br /&gt;
	&lt;br /&gt;
    char error[128];&lt;br /&gt;
	&lt;br /&gt;
    naRef dieArg;&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
    // Sub-call lists&lt;br /&gt;
	&lt;br /&gt;
    struct Context* callParent;&lt;br /&gt;
	&lt;br /&gt;
    struct Context* callChild;&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
    // Linked list pointers in globals&lt;br /&gt;
	&lt;br /&gt;
    struct Context* nextFree;&lt;br /&gt;
	&lt;br /&gt;
    struct Context* nextAll;&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
    void* userData;&lt;br /&gt;
	&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Stack frames =&lt;br /&gt;
https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/code.h#line32&lt;br /&gt;
&lt;br /&gt;
= Tagged structures =&lt;br /&gt;
https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/data.h#line84&lt;br /&gt;
&lt;br /&gt;
= Core allocations =&lt;br /&gt;
All core memory allocation takes place via wrappers in [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line8 misc.c]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
void naFree(void* m) { free(m); }	&lt;br /&gt;
void* naAlloc(int n) { return malloc(n); }&lt;br /&gt;
void* naRealloc(void* b, int n) { return realloc(b, n); }&lt;br /&gt;
void naBZero(void* m, int n) { memset(m, 0, n); }&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Core developer documentation]] &lt;br /&gt;
[[Category:Nasal]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=How_the_Nasal_GC_works&amp;diff=50440</id>
		<title>How the Nasal GC works</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=How_the_Nasal_GC_works&amp;diff=50440"/>
		<updated>2012-05-22T18:26:26Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* Mark/Sweep */  typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
= Problem =&lt;br /&gt;
The [[Nasal]] language is a dynamic programming language, where memory is not manually allocated and freed by the programmer, but instead the Nasal virtual machine automatically allocates memory from so called &amp;quot;memory pools&amp;quot;, every so often these memory pools must be checked, to see how many references (i.e. objects like variables) are still reachable, so that the unreachable ones can be removed from the memory pool and/or so that memory blocks in each pool can be allocated or freed. This is called &amp;quot;garbage management&amp;quot; or &amp;quot;garbage collection&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The current Nasal garbage collector (GC) is known to affect the frame rate in FlightGear and occasionally causes stutter (increased frame spacing) under certain circumstances (i.e. under heavy load, due to complex scripts - such as the [[Bombable]] addon or the local weather system. &lt;br /&gt;
&lt;br /&gt;
This is largely attributed to the GC being a fairly simple sequential [http://en.wikipedia.org/wiki/Garbage_collection_(computer_science)#Copying_vs._mark-and-sweep_vs._mark-and-don.27t-sweep mark/sweep collector], which needs to stop all operations, mark all reachable objects and free unreachable objects in an exclusive, single-threaded, fashion.&lt;br /&gt;
&lt;br /&gt;
In other words, the time spent in the GC is proportial to the number of active objects (i.e.  lines of code), even for objects which may not be running or active - just loaded. For additional background information, please see [[Improving Nasal]].&lt;br /&gt;
&lt;br /&gt;
= Objective =&lt;br /&gt;
Provide a basic introduction to garbage collection and document how the existing Nasal GC scheme works, so that it can be fully understood, before alternatives (fixes/improvements) or additional implementations are added (feedback and contributions are encouraged and appreciated!).&lt;br /&gt;
&lt;br /&gt;
Also, come up with an approach to generalize the Nasal GC API such that additional GC schemes can be easily implemented next to the native Nasal GC, providing an option to select a custom/experimental GC implementation at startup. Ideally, this should be possible by using a switch property during fgfs startup - such as --prop:/sim/nasal-gc=custom&lt;br /&gt;
&lt;br /&gt;
= Suggested readings =&lt;br /&gt;
The wikipedia article on garbage collection contains some pretty good general GC information: http://en.wikipedia.org/wiki/Garbage_collection_(computer_science)&lt;br /&gt;
&lt;br /&gt;
In addition, the following online presentations provide a basic introduction to garbage collection:&lt;br /&gt;
&lt;br /&gt;
* [http://lua-users.org/wiki/GarbageCollectionInRealTimeGames Garbage Collection in realtime games]&lt;br /&gt;
* [http://msdn.microsoft.com/en-us/library/ms973837.aspx Garbage Collector Basics and Performance Hints]&lt;br /&gt;
* http://www.memorymanagement.org/glossary/g.html#garbage.collection&lt;br /&gt;
* [http://www.slideshare.net/toantvo/garbage-collector-9434996 Garbage Collection Basics]&lt;br /&gt;
* http://www.slideshare.net/khuonganpt/basic-garbage-collection-techniques&lt;br /&gt;
* http://www.slideshare.net/achinth/garbage-collection-algorithms&lt;br /&gt;
* [http://www.slideshare.net/tinoubao/takano Unified Theory of Garbage Collection]&lt;br /&gt;
* [http://waww.iecc.com/gclist/GC-faq.htmlhttp://www.iecc.com/gclist/GC-faq.html GC FAQ]&lt;br /&gt;
* [http://www.iecc.com/gclist/GC-algorithms.html GC algorithms]&lt;br /&gt;
* http://www.cs.kent.ac.uk/people/staff/rej/gc.html&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
{{#ev:youtube|rp8PvFvSO_c|600|Lecture on GC (45 minutes)}}&lt;br /&gt;
&lt;br /&gt;
= Mark/Sweep =&lt;br /&gt;
&lt;br /&gt;
When using a mark-and-sweep collector, unreachable objects are not immediately reclaimed. Instead, garbage is allowed to accumulate until all available memory has been exhausted. When that happens, the execution of the program is suspended temporarily while the mark-and-sweep algorithm collects all the garbage. Once all unreferenced objects have been reclaimed, the normal execution of the program can resume.&lt;br /&gt;
&lt;br /&gt;
Obviously, the main disadvantage of the mark-and-sweep approach is the fact that that normal program execution is suspended while the garbage collection algorithm runs. In particular, this can be a problem in a program that must satisfy real-time execution constraints (like a flight simulator). For example, an interactive application that uses mark-and-sweep garbage collection becomes unresponsive periodically.&lt;br /&gt;
&lt;br /&gt;
The mark-and-sweep algorithm is called a tracing garbage collector because is traces out the entire collection of objects that are directly or indirectly accessible by the program. The objects that a program can access directly are those objects which are referenced by local variables on the processor stack as well as by any static variables that refer to objects. In the context of garbage collection, these variables are called the roots . An object is indirectly accessible if it is referenced by a field in some other (directly or indirectly) accessible object. An accessible object is said to be live . Conversely, an object which is not live is garbage.&lt;br /&gt;
&lt;br /&gt;
The mark-and-sweep algorithm consists of two phases: In the first phase, it finds and marks all accessible objects. The first phase is called the mark phase. In the second phase, the garbage collection algorithm scans through the heap and reclaims all the unmarked objects. The second phase is called the sweep phase.&lt;br /&gt;
&lt;br /&gt;
The mark/sweep algorithm can also be easily expressed using pseudo code, i.e. in Nasal itself:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 var garbageCollect = func (roots) {&lt;br /&gt;
 foreach(var root; roots) {&lt;br /&gt;
   mark(root);&lt;br /&gt;
  }&lt;br /&gt;
  sweep();&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The mark() function would just recursively check (i.e. calling itself) if the &amp;quot;marked&amp;quot; flag is set or not, and make sure to set the mark bit for all referenced objects:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 var mark = func (obj) {&lt;br /&gt;
  if (!obj.marked) {&lt;br /&gt;
   obj.marked=1;&lt;br /&gt;
   foreach( var referenced; referenced_by(obj) )&lt;br /&gt;
     mark(referenced);&lt;br /&gt;
  }&lt;br /&gt;
 }&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Finally, the sweep() function (reap() in the Nasal GC), will free all unreachable objects and reclaim the memory:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 var sweep = func {&lt;br /&gt;
  foreach(var obj; allocated_objects) {&lt;br /&gt;
   if (obj.marked) obj.marked=0;&lt;br /&gt;
   else reclaim(obj);&lt;br /&gt;
  }&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nasal's implementation of sweep() ( called reap() ) works such that it is always executed for a handful of different type-specific memory pools. In addition, it also makes sure to allocate new memory if required.&lt;br /&gt;
&lt;br /&gt;
= Pool storage =&lt;br /&gt;
A [http://en.wikipedia.org/wiki/Memory_pool memory pool] is basically a preallocated region of memory, which is dynamically resized. The Nasal GC works such that it manages a handful of global memory pools for all native Nasal types (strings, functions, vectors, hashes etc). At the moment, the hard coded defaults ensure that 25-50% of additional object &amp;quot;slots&amp;quot; (memory blocks) are kept available during each execution of reap() [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line287].&lt;br /&gt;
&lt;br /&gt;
Whenever new memory is requested to create a new type (such as a vector or a string), the available memory in the corresponding pool will be checked, reachable objects will be marked, and dead objects will be removed from all pools using a mark/sweep collector, new memory blocks will be allocated if necessary. All of this happens atomically, i.e. single-threaded.&lt;br /&gt;
&lt;br /&gt;
== Memory blocks ==&lt;br /&gt;
&lt;br /&gt;
[[File:NasalBlockStruct.png|thumb|450px|Nasal Block structure]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A Nasal memory pool consists of memory blocks.&lt;br /&gt;
&lt;br /&gt;
A memory block is a [http://en.wikipedia.org/wiki/Linked_list#Linear_and_circular_lists singly linked list]: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line10&lt;br /&gt;
&lt;br /&gt;
[[File:NasalNewBlockCallgraph.png|thumb|400px|Callgraph for newBlock()]]&lt;br /&gt;
&lt;br /&gt;
Each block contains a field to store its size, a pointer to the allocated memory, and another pointer to the next block.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
struct Block {&lt;br /&gt;
    int   size; // size of the block &lt;br /&gt;
    char* block; // pointer to the memory region&lt;br /&gt;
    struct Block* next;	// pointer to the next block&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
New memory blocks are allocated using newBlock() and the memory is initialized with 0: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line150&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
static void newBlock(struct naPool* p, int need)	&lt;br /&gt;
{&lt;br /&gt;
    int i;&lt;br /&gt;
    struct Block* newb;&lt;br /&gt;
    if(need &amp;lt; MIN_BLOCK_SIZE) need = MIN_BLOCK_SIZE;&lt;br /&gt;
    // allocate a new Block&lt;br /&gt;
    newb = naAlloc(sizeof(struct Block));&lt;br /&gt;
    // initialize the Block&lt;br /&gt;
    newb-&amp;gt;block = naAlloc(need * p-&amp;gt;elemsz); // number of elements * size of element&lt;br /&gt;
    newb-&amp;gt;size = need; // set block size &lt;br /&gt;
    // memory blocks are circular linked lists: &lt;br /&gt;
    newb-&amp;gt;next = p-&amp;gt;blocks;&lt;br /&gt;
    p-&amp;gt;blocks = newb;&lt;br /&gt;
    naBZero(newb-&amp;gt;block, need * p-&amp;gt;elemsz);&lt;br /&gt;
&lt;br /&gt;
    if(need &amp;gt; p-&amp;gt;freesz - p-&amp;gt;freetop) need = p-&amp;gt;freesz - p-&amp;gt;freetop;&lt;br /&gt;
    p-&amp;gt;nfree = 0;&lt;br /&gt;
    p-&amp;gt;free = p-&amp;gt;free0 + p-&amp;gt;freetop;&lt;br /&gt;
    // mark all new blocks as unreachable and add them to the pool's free list&lt;br /&gt;
    for(i=0; i &amp;lt; need; i++) {&lt;br /&gt;
        // initialize each new new memory blocks by setting up an naRef (the container for all Nasal references) &lt;br /&gt;
        struct naObj* o = (struct naObj*)(newb-&amp;gt;block + i*p-&amp;gt;elemsz);&lt;br /&gt;
        o-&amp;gt;mark = 0;&lt;br /&gt;
        p-&amp;gt;free[p-&amp;gt;nfree++] = o;	&lt;br /&gt;
    }&lt;br /&gt;
    p-&amp;gt;freetop += need;	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Nasal memory pools ==&lt;br /&gt;
&lt;br /&gt;
For each of the 7 Nasal data types, there is a separate storage pool available, declared as part of the &amp;quot;Globals&amp;quot; structure.&lt;br /&gt;
&lt;br /&gt;
As can be seen, each storage pool is addressed by its enum index (0..6): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/data.h#line65&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
enum { T_STR, T_VEC, T_HASH, T_CODE, T_FUNC, T_CCODE, T_GHOST, NUM_NASAL_TYPES }; // V. important that this come last!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For example, '''globals-&amp;gt;pools[T_VEC]''' refers to the storage pools  for vectors:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
globals-&amp;gt;pools[T_VEC];&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The 7 storage pools are declared in code.h as part of the &amp;quot;Globals&amp;quot; structure, line 39: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/code.h#line39&lt;br /&gt;
&lt;br /&gt;
The relevant part is:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
struct Globals {	&lt;br /&gt;
    // Garbage collecting allocators:&lt;br /&gt;
    struct naPool pools[NUM_NASAL_TYPES];&lt;br /&gt;
    int allocCount;&lt;br /&gt;
    // Dead blocks waiting to be freed when it is safe&lt;br /&gt;
    void** deadBlocks;&lt;br /&gt;
    int deadsz;&lt;br /&gt;
    int ndead;&lt;br /&gt;
//...&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
So, we have these pools:&lt;br /&gt;
&lt;br /&gt;
* globals-&amp;gt;pools[T_STR]&lt;br /&gt;
* globals-&amp;gt;pools[T_VEC]&lt;br /&gt;
* globals-&amp;gt;pools[T_HASH]&lt;br /&gt;
* globals-&amp;gt;pools[T_CODE]&lt;br /&gt;
* globals-&amp;gt;pools[T_FUNC]&lt;br /&gt;
* globals-&amp;gt;pools[T_CCODE]&lt;br /&gt;
* globals-&amp;gt;pools[T_GHOST]&lt;br /&gt;
&lt;br /&gt;
== The Globals structure ==&lt;br /&gt;
&lt;br /&gt;
[[File:NasalGlobalsStruct.png|thumb|500px|Nasal Globals structure]]&lt;br /&gt;
&lt;br /&gt;
The complete Globals structure looks like this:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
struct Globals {	&lt;br /&gt;
    // Garbage collecting allocators:&lt;br /&gt;
    struct naPool pools[NUM_NASAL_TYPES];&lt;br /&gt;
    int allocCount;&lt;br /&gt;
    // Dead blocks waiting to be freed when it is safe&lt;br /&gt;
    void** deadBlocks;&lt;br /&gt;
    int deadsz;&lt;br /&gt;
    int ndead;&lt;br /&gt;
&lt;br /&gt;
    // Threading stuff&lt;br /&gt;
	&lt;br /&gt;
    int nThreads;&lt;br /&gt;
	&lt;br /&gt;
    int waitCount;&lt;br /&gt;
	&lt;br /&gt;
    int needGC;&lt;br /&gt;
	&lt;br /&gt;
    int bottleneck;&lt;br /&gt;
	&lt;br /&gt;
    void* sem;&lt;br /&gt;
	&lt;br /&gt;
    void* lock;&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
    // Constants&lt;br /&gt;
	&lt;br /&gt;
    naRef meRef;&lt;br /&gt;
	&lt;br /&gt;
    naRef argRef;&lt;br /&gt;
&lt;br /&gt;
    naRef parentsRef;&lt;br /&gt;
&lt;br /&gt;
    // A hash of symbol names&lt;br /&gt;
    naRef symbols;&lt;br /&gt;
    naRef save;&lt;br /&gt;
    struct Context* freeContexts;&lt;br /&gt;
    struct Context* allContexts;	&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== The naPool structure ==&lt;br /&gt;
&lt;br /&gt;
[[File:NasalnaPoolStruct.png|thumb|400px|Nasal naPool structure]]&lt;br /&gt;
&lt;br /&gt;
The structure keeping all pool-related information is named &amp;quot;naPool&amp;quot;, the layout of the naPool structure can be seen in data.h, line 172: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/data.h#line172&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
struct naPool {&lt;br /&gt;
    int           type; // one of T_STR, T_VEC, T_HASH etc&lt;br /&gt;
    int           elemsz; // size of each element - determined via naTypeSize(T_*)&lt;br /&gt;
    struct Block* blocks;&lt;br /&gt;
    void**   free0; // pointer to the alloced buffer&lt;br /&gt;
    int     freesz; // size of the alloced buffer&lt;br /&gt;
    void**    free; // current &amp;quot;free frame&amp;quot;&lt;br /&gt;
    int      nfree; // down-counting index within the free frame&lt;br /&gt;
    int    freetop; // curr. top of the free list&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Each memory pool is initialized using naGC_init(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line175&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
void naGC_init(struct naPool* p, int type)&lt;br /&gt;
{&lt;br /&gt;
    p-&amp;gt;type = type;&lt;br /&gt;
    p-&amp;gt;elemsz = naTypeSize(type);&lt;br /&gt;
    p-&amp;gt;blocks = 0;&lt;br /&gt;
    p-&amp;gt;free0 = p-&amp;gt;free = 0;&lt;br /&gt;
    p-&amp;gt;nfree = p-&amp;gt;freesz = p-&amp;gt;freetop = 0;&lt;br /&gt;
    reap(p);	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As can be seen, &amp;quot;elemsz&amp;quot;  just stores the size of each type-specific structure, so that it can be used for new allocations.&lt;br /&gt;
&lt;br /&gt;
naGC_init is called in initGlobals() in code.c for each Nasal type (T_STR, T_VEC etc): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/code.c#line170&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
for(i=0; i&amp;lt;NUM_NASAL_TYPES; i++)&lt;br /&gt;
        naGC_init(&amp;amp;(globals-&amp;gt;pools[i]), i);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The size of a memory pool is determined using poolsize(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line186&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
static int poolsize(struct naPool* p)&lt;br /&gt;
{&lt;br /&gt;
    int total = 0;&lt;br /&gt;
    struct Block* b = p-&amp;gt;blocks;&lt;br /&gt;
    while(b) { total += b-&amp;gt;size; b = b-&amp;gt;next; }&lt;br /&gt;
    return total;	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The function poolsize() just iterates over all memory blocks in the pool, and computes the total size of the pool by adding up the &amp;quot;size&amp;quot; field of all blocks in the linked list.&lt;br /&gt;
&lt;br /&gt;
= Allocating Nasal types =&lt;br /&gt;
&lt;br /&gt;
All Nasal types (scalars, vectors, hashes, funcs, ghosts) are allocated via wrappers in [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c misc.c].&lt;br /&gt;
&lt;br /&gt;
These wrappers are:&lt;br /&gt;
* naNewString(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line77&lt;br /&gt;
* naNewVector(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line87&lt;br /&gt;
* naNewHash(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line94&lt;br /&gt;
* naNewCode(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line101&lt;br /&gt;
* naNewCCode(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line106&lt;br /&gt;
* naNewFunc(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line113&lt;br /&gt;
* naNewGhost(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line122&lt;br /&gt;
* naNewGhost2(): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line135&lt;br /&gt;
&lt;br /&gt;
All of these wrappers are really just helpers on top of naNew(), they just set up type-specific information and initialize each Nasal type properly.&lt;br /&gt;
For instance, first naNew() is called for the given context, along with the type info (to set up the size properly)- and then each type is initialized:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
// The naNew* helpers are just wrappers to set up type-specific structures, after allocating the memory using naNew()&lt;br /&gt;
naRef naNewString(struct Context* c)	&lt;br /&gt;
{&lt;br /&gt;
    naRef s = naNew(c, T_STR);&lt;br /&gt;
    PTR(s).str-&amp;gt;emblen = 0;&lt;br /&gt;
    PTR(s).str-&amp;gt;data.ref.len = 0;&lt;br /&gt;
    PTR(s).str-&amp;gt;data.ref.ptr = 0;&lt;br /&gt;
    PTR(s).str-&amp;gt;hashcode = 0;&lt;br /&gt;
    return s;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= naNew() =&lt;br /&gt;
&lt;br /&gt;
As can be seen, the key allocator function is [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line66 naNew()]. &lt;br /&gt;
All memory allocations done via the naNew*() helpers will first of all set up memory using naNew().&lt;br /&gt;
&lt;br /&gt;
naNew() is really just a fancy malloc() replacement, i.e. it's just getting passed the Nasal execution context, and the nasal type (which is mapped to the size of the requested memory region using naTypeSize()).&lt;br /&gt;
&lt;br /&gt;
The naNew() function is also implemented in misc.c, see [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line122 line 66]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
naRef naNew(struct Context* c, int type)	&lt;br /&gt;
{&lt;br /&gt;
    naRef result;&lt;br /&gt;
    if(c-&amp;gt;nfree[type] == 0)&lt;br /&gt;
        c-&amp;gt;free[type] = naGC_get(&amp;amp;globals-&amp;gt;pools[type],&lt;br /&gt;
                                 OBJ_CACHE_SZ, &amp;amp;c-&amp;gt;nfree[type]);&lt;br /&gt;
    result = naObj(type, c-&amp;gt;free[type][--c-&amp;gt;nfree[type]]);&lt;br /&gt;
    naTempSave(c, result);&lt;br /&gt;
    return result;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
First, the conditional checks if there's any free memory in the Nasal storage pools  for the requested Nasal data type, if there isn't any free memory left, new memory is assigned to the contexts-&amp;gt;free[type] pool via naGC_get().&lt;br /&gt;
&lt;br /&gt;
'''Note:''' naGC_get() is the only function which really manages all memory pools and which triggers the GC. Allocations via naNew()* will end up calling naNew() and naNew() ends up calling naGC_get() '''always'''.&lt;br /&gt;
&lt;br /&gt;
For the time being, OBJ_CACHE_SZ can be ignored, it's defined in code.h, line 12: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/code.h#line12&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
// Number of objects (per pool per thread) asked for using naGC_get().&lt;br /&gt;
// The idea is that contexts can &amp;quot;cache&amp;quot; allocations to prevent thread&lt;br /&gt;
// contention on the global pools.  But in practice this interacts&lt;br /&gt;
// very badly with small subcontext calls, which grab huge numbers of&lt;br /&gt;
// cached objects and don't use them, causing far more collections&lt;br /&gt;
// than necessary.  Just leave it at 1 pending a rework of the&lt;br /&gt;
// collector synchronization.&lt;br /&gt;
#define OBJ_CACHE_SZ 1&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The final argument to the naGC_get() function is a pointer to to the context's nfree[type] member which is updated by the function.&lt;br /&gt;
&lt;br /&gt;
Next, a new naRef structure is set up using the allocated naObj memory and the type info: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
result = naObj(type, c-&amp;gt;free[type][--c-&amp;gt;nfree[type]]);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
naRef naObj(int type, struct naObj* o)	&lt;br /&gt;
{&lt;br /&gt;
    naRef r;&lt;br /&gt;
    SETPTR(r, o);&lt;br /&gt;
    o-&amp;gt;type = type;&lt;br /&gt;
    return r;	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= The GC interface =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Nasal-gc.png|thumb|650px|Nasal GC]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TODO: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/data.h#line204&lt;br /&gt;
&lt;br /&gt;
* void naGC_init(struct naPool* p, int type);&lt;br /&gt;
* struct naObj** naGC_get(struct naPool* p, int n, int* nout);	&lt;br /&gt;
* void naGC_swapfree(void** target, void* val); (used for vector/hash resizing)&lt;br /&gt;
* void naGC_freedead();&lt;br /&gt;
* void naiGCMark(naRef r);&lt;br /&gt;
* void naiGCMarkHash(naRef h);&lt;br /&gt;
&lt;br /&gt;
= The pool manager =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:NasalNaGetCallgraph.png|thumb|550px|Callgraph for naGC_get()]]&lt;br /&gt;
&lt;br /&gt;
All high level type allocators (naNewString, naNewVector, naNewHash etc) make use of the naNew() call introduced earlier.&lt;br /&gt;
&lt;br /&gt;
naNew() doesn't directly allocate new memory from the heap using naAlloc(), but instead use the naGC_get() helper which manages memory from the global pools (i.e. preallocated memory for each type).&lt;br /&gt;
&lt;br /&gt;
For each native Nasal data type (scalars, vectors, hashes, funcs etc) , there are separate memory pools in globals-&amp;gt;pools[n]. The index (n) is one of T_VEC, T_HASH, T_FUNC etc.&lt;br /&gt;
&lt;br /&gt;
The naGC_get() pool &amp;quot;manager&amp;quot; is located in gc.nas line 194: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line194&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
struct naObj** naGC_get(struct naPool* p, int n, int* nout)&lt;br /&gt;
{&lt;br /&gt;
    struct naObj** result;&lt;br /&gt;
    naCheckBottleneck();&lt;br /&gt;
    LOCK();&lt;br /&gt;
    while(globals-&amp;gt;allocCount &amp;lt; 0 || (p-&amp;gt;nfree == 0 &amp;amp;&amp;amp; p-&amp;gt;freetop &amp;gt;= p-&amp;gt;freesz)) {&lt;br /&gt;
        globals-&amp;gt;needGC = 1;&lt;br /&gt;
        bottleneck();	&lt;br /&gt;
    }&lt;br /&gt;
    if(p-&amp;gt;nfree == 0)&lt;br /&gt;
        newBlock(p, poolsize(p)/8);&lt;br /&gt;
    n = p-&amp;gt;nfree &amp;lt; n ? p-&amp;gt;nfree : n;&lt;br /&gt;
    *nout = n;&lt;br /&gt;
    p-&amp;gt;nfree -= n;&lt;br /&gt;
    globals-&amp;gt;allocCount -= n;&lt;br /&gt;
    result = (struct naObj**)(p-&amp;gt;free + p-&amp;gt;nfree);&lt;br /&gt;
    UNLOCK();&lt;br /&gt;
    return result;	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As can be seen, the garbage collector itself is triggered by setting the global &amp;quot;needGC&amp;quot; flag to 1 in the globals structure and then calling the bottleneck() function: [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line199].&lt;br /&gt;
&lt;br /&gt;
In line 209, the memory region from the global pool is cast back to a pointer (struct naObj**): https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line209&lt;br /&gt;
the &amp;quot;nout&amp;quot; paramter is just there to update c-&amp;gt;nfree[type] with the amount of free memory.&lt;br /&gt;
&lt;br /&gt;
In other words, whenever new Nasal types are allocated, new memory from one of the 7 Nasal pools is requested. All of these allocation requests are channeled through naNew() and finally naGC_get(). naGC_get() is the de facto memory manager in Nasal, all memory management is triggered here - new memory block allocations for each pool, as well as garbage collection via the bottleneck() call.&lt;br /&gt;
&lt;br /&gt;
This also means that we basically just need to provide an alternate naGC_get() function, next to the existing one, to add support for alternate GC schemes.&lt;br /&gt;
&lt;br /&gt;
= Disabling the current GC =&lt;br /&gt;
&lt;br /&gt;
The overhead caused by managing the memory pools and constantly scanning the  heap (mark/reap) can be examined by modifying the naGC_get() function such that it no longer uses any pool memory, but directly allocates via malloc()/naAlloc() - without ever freeing any memory (i.e. leaking). While the fgfs process will eventually get killed this way, the GC will be basically switched off.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
struct naObj** naGC_get(struct naPool* p, int n, int* nout)&lt;br /&gt;
{&lt;br /&gt;
    struct naObj** result;&lt;br /&gt;
    naCheckBottleneck();&lt;br /&gt;
    LOCK();&lt;br /&gt;
#define LEAKY &lt;br /&gt;
#ifndef LEAKY&lt;br /&gt;
    while(globals-&amp;gt;allocCount &amp;lt; 0 || (p-&amp;gt;nfree == 0 &amp;amp;&amp;amp; p-&amp;gt;freetop &amp;gt;= p-&amp;gt;freesz)) {&lt;br /&gt;
        globals-&amp;gt;needGC = 1;&lt;br /&gt;
        bottleneck();	&lt;br /&gt;
    }&lt;br /&gt;
    if(p-&amp;gt;nfree == 0)&lt;br /&gt;
        newBlock(p, poolsize(p)/8);&lt;br /&gt;
    n = p-&amp;gt;nfree &amp;lt; n ? p-&amp;gt;nfree : n;&lt;br /&gt;
    *nout = n;&lt;br /&gt;
    p-&amp;gt;nfree -= n;&lt;br /&gt;
    globals-&amp;gt;allocCount -= n;&lt;br /&gt;
    result = (struct naObj**)(p-&amp;gt;free + p-&amp;gt;nfree);&lt;br /&gt;
#else&lt;br /&gt;
    result = (struct naObj**) naAlloc( naTypeSize(n) );&lt;br /&gt;
#endif&lt;br /&gt;
    UNLOCK();&lt;br /&gt;
    return result;	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= bottleneck() =&lt;br /&gt;
&lt;br /&gt;
[[File:NasalCheckBottleneckCallerGraph.png|thumb|450px|Callergraph of naCheckBottleneck()]]&lt;br /&gt;
[[File:NasalCheckBottleneckCallgraph.png|thumb|400px|Callgraph of naCheckBottleneck()]]&lt;br /&gt;
&lt;br /&gt;
Whenever new memory from one of the global pools is being requested via naGC_get(), naCheckBottleneck() will also be invoked:&lt;br /&gt;
&lt;br /&gt;
https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line121&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
void naCheckBottleneck()	&lt;br /&gt;
{&lt;br /&gt;
    if(globals-&amp;gt;bottleneck) { LOCK(); bottleneck(); UNLOCK(); }	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This checks if globals-&amp;gt;bottleneck is true, and if it is, it makes sure that the bottleneck() function is only invoked after acquiring a lock.&lt;br /&gt;
&lt;br /&gt;
[[File:NasalBottleneckCallgraph.png|thumb|550px|Callgraph of bottleneck()]]&lt;br /&gt;
&lt;br /&gt;
https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line99&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
// Must be called with the main lock.  Engages the &amp;quot;bottleneck&amp;quot;, where&lt;br /&gt;
// all threads will block so that one (the last one to call this&lt;br /&gt;
// function) can run alone.  This is done for GC, and also to free the&lt;br /&gt;
// list of &amp;quot;dead&amp;quot; blocks when it gets full (which is part of GC, if&lt;br /&gt;
// you think about it).&lt;br /&gt;
static void bottleneck()	&lt;br /&gt;
{&lt;br /&gt;
    struct Globals* g = globals;&lt;br /&gt;
    g-&amp;gt;bottleneck = 1;&lt;br /&gt;
    while(g-&amp;gt;bottleneck &amp;amp;&amp;amp; g-&amp;gt;waitCount &amp;lt; g-&amp;gt;nThreads - 1) {&lt;br /&gt;
        g-&amp;gt;waitCount++;&lt;br /&gt;
        UNLOCK(); naSemDown(g-&amp;gt;sem); LOCK();&lt;br /&gt;
        g-&amp;gt;waitCount--;	&lt;br /&gt;
    }&lt;br /&gt;
    if(g-&amp;gt;waitCount &amp;gt;= g-&amp;gt;nThreads - 1) {&lt;br /&gt;
        freeDead();&lt;br /&gt;
        if(g-&amp;gt;needGC) garbageCollect();&lt;br /&gt;
        if(g-&amp;gt;waitCount) naSemUp(g-&amp;gt;sem, g-&amp;gt;waitCount);&lt;br /&gt;
        g-&amp;gt;bottleneck = 0;	&lt;br /&gt;
    }	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The actual garbage collection takes place in [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line114 line 114] where dead objects from the memory pool are freed, and the garbageCollect() function is called if globals.needGC is true.&lt;br /&gt;
&lt;br /&gt;
= garbageCollect() =&lt;br /&gt;
&lt;br /&gt;
[[File:NasalGarbageCollectCallgraph.png|thumb|550px|Callgraph of garbageCollect()]]&lt;br /&gt;
&lt;br /&gt;
This is the function that does the mark/sweep part using mark() to recursively mark reachable objects, and reap() to collect unreachable objects.&lt;br /&gt;
&lt;br /&gt;
https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line35&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
// Must be called with the big lock!&lt;br /&gt;
static void garbageCollect()	&lt;br /&gt;
{&lt;br /&gt;
    int i;&lt;br /&gt;
    struct Context* c;&lt;br /&gt;
    globals-&amp;gt;allocCount = 0;&lt;br /&gt;
    c = globals-&amp;gt;allContexts;&lt;br /&gt;
    while(c) {&lt;br /&gt;
        for(i=0; i&amp;lt;NUM_NASAL_TYPES; i++)&lt;br /&gt;
            c-&amp;gt;nfree[i] = 0;&lt;br /&gt;
        for(i=0; i &amp;lt; c-&amp;gt;fTop; i++) {&lt;br /&gt;
            mark(c-&amp;gt;fStack[i].func);&lt;br /&gt;
            mark(c-&amp;gt;fStack[i].locals);&lt;br /&gt;
        }&lt;br /&gt;
        for(i=0; i &amp;lt; c-&amp;gt;opTop; i++)&lt;br /&gt;
            mark(c-&amp;gt;opStack[i]);&lt;br /&gt;
        mark(c-&amp;gt;dieArg);&lt;br /&gt;
        marktemps(c);&lt;br /&gt;
        c = c-&amp;gt;nextAll;	&lt;br /&gt;
    }&lt;br /&gt;
    mark(globals-&amp;gt;save);&lt;br /&gt;
    mark(globals-&amp;gt;symbols);&lt;br /&gt;
    mark(globals-&amp;gt;meRef);&lt;br /&gt;
    mark(globals-&amp;gt;argRef);&lt;br /&gt;
    mark(globals-&amp;gt;parentsRef);&lt;br /&gt;
    // Finally collect all the freed objects&lt;br /&gt;
    for(i=0; i&amp;lt;NUM_NASAL_TYPES; i++)&lt;br /&gt;
        reap(&amp;amp;(globals-&amp;gt;pools[i]));&lt;br /&gt;
    // Make enough space for the dead blocks we need to free during&lt;br /&gt;
    // execution.  This works out to 1 spot for every 2 live objects,&lt;br /&gt;
    // which should be limit the number of bottleneck operations&lt;br /&gt;
    // without imposing an undue burden of extra &amp;quot;freeable&amp;quot; memory.&lt;br /&gt;
    if(globals-&amp;gt;deadsz &amp;lt; globals-&amp;gt;allocCount) {&lt;br /&gt;
        globals-&amp;gt;deadsz = globals-&amp;gt;allocCount;&lt;br /&gt;
        if(globals-&amp;gt;deadsz &amp;lt; 256) globals-&amp;gt;deadsz = 256;&lt;br /&gt;
        naFree(globals-&amp;gt;deadBlocks);&lt;br /&gt;
        globals-&amp;gt;deadBlocks = naAlloc(sizeof(void*) * globals-&amp;gt;deadsz);	&lt;br /&gt;
    }&lt;br /&gt;
    globals-&amp;gt;needGC = 0;	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For each invocation of garbageCollect(), the following takes place:&lt;br /&gt;
* For each context:&lt;br /&gt;
** The counter for each type-specific pool will be reset to 0 in line 43: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line43&lt;br /&gt;
** for each stack frame of the given context, all reachable locals and functions will be marked as reachable in line 45: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line45&lt;br /&gt;
** All instructions in the opcode stack will be marked as reachable from top to bottom in line 49: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line49&lt;br /&gt;
** mark(die-&amp;gt;Arg)&lt;br /&gt;
** temporary variables are marked reachable&lt;br /&gt;
* root references (constants) are marked reachable in line56:  https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line56&lt;br /&gt;
* foreach Nasal data type:&lt;br /&gt;
** unreachable objects are then collected in line 62: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line62&lt;br /&gt;
* dead blocks are freed and new memory is allocated in line: 66 https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line66&lt;br /&gt;
* the needGC flag is set to 0&lt;br /&gt;
&lt;br /&gt;
= mark() =&lt;br /&gt;
&lt;br /&gt;
[[File:NasalMarkCallgraph.png|thumb|400px|Callgraph of mark()]]&lt;br /&gt;
&lt;br /&gt;
All reachable objects are recursively marked using tagged naRef structures [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/data.h#line50], so that unreachable objects can be collected (i.e. because the reftag bit is not set) and freed.&lt;br /&gt;
&lt;br /&gt;
TOOD: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line223&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= reap() =&lt;br /&gt;
&lt;br /&gt;
[[File:NasalReapCallgraph.png|thumb|450px|Callgraph for reap()]]&lt;br /&gt;
&lt;br /&gt;
This is the collector function called by garbageCollect() which also frees elements and allocates new blocks for the specified pool:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
// Collects all the unreachable objects into a free list, and&lt;br /&gt;
// allocates more space if needed.&lt;br /&gt;
static void reap(struct naPool* p)&lt;br /&gt;
{&lt;br /&gt;
    struct Block* b;&lt;br /&gt;
    int elem, freesz, total = poolsize(p);&lt;br /&gt;
    freesz = total &amp;lt; MIN_BLOCK_SIZE ? MIN_BLOCK_SIZE : total;&lt;br /&gt;
    freesz = (3 * freesz / 2) + (globals-&amp;gt;nThreads * OBJ_CACHE_SZ);&lt;br /&gt;
    if(p-&amp;gt;freesz &amp;lt; freesz) {&lt;br /&gt;
        naFree(p-&amp;gt;free0);&lt;br /&gt;
        p-&amp;gt;freesz = freesz;&lt;br /&gt;
        p-&amp;gt;free = p-&amp;gt;free0 = naAlloc(sizeof(void*) * p-&amp;gt;freesz);&lt;br /&gt;
    }&lt;br /&gt;
    p-&amp;gt;nfree = 0;&lt;br /&gt;
    p-&amp;gt;free = p-&amp;gt;free0;&lt;br /&gt;
    for(b = p-&amp;gt;blocks; b; b = b-&amp;gt;next)&lt;br /&gt;
        for(elem=0; elem &amp;lt; b-&amp;gt;size; elem++) {&lt;br /&gt;
            struct naObj* o = (struct naObj*)(b-&amp;gt;block + elem * p-&amp;gt;elemsz);&lt;br /&gt;
            if(o-&amp;gt;mark == 0)&lt;br /&gt;
                freeelem(p, o);&lt;br /&gt;
            o-&amp;gt;mark = 0;&lt;br /&gt;
        }&lt;br /&gt;
    p-&amp;gt;freetop = p-&amp;gt;nfree;&lt;br /&gt;
    // allocs of this type until the next collection&lt;br /&gt;
    globals-&amp;gt;allocCount += total/2;&lt;br /&gt;
    // Allocate more if necessary (try to keep 25-50% of the objects&lt;br /&gt;
    // available)&lt;br /&gt;
    if(p-&amp;gt;nfree &amp;lt; total/4) {&lt;br /&gt;
        int used = total - p-&amp;gt;nfree;&lt;br /&gt;
        int avail = total - used;&lt;br /&gt;
        int need = used/2 - avail;&lt;br /&gt;
        if(need &amp;gt; 0)&lt;br /&gt;
            newBlock(p, need);&lt;br /&gt;
    }	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=swapfree() =&lt;br /&gt;
[[File:NasalGC swapfreeCallgraph.png|thumb|450px|Callgraph of swapfree()]]&lt;br /&gt;
&lt;br /&gt;
= freeelem() =&lt;br /&gt;
&lt;br /&gt;
[[File:NasalFreeelemCallgraph.png|thumb|Callgraph of freeelem()]]&lt;br /&gt;
&lt;br /&gt;
Frees individual elements and adds freed pointers to the globals free list, implemented in gc.c: https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line137&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
static void freeelem(struct naPool* p, struct naObj* o)&lt;br /&gt;
{&lt;br /&gt;
    // Clean up any intrinsic storage the object might have...&lt;br /&gt;
    switch(p-&amp;gt;type) {&lt;br /&gt;
    case T_STR:   naStr_gcclean  ((struct naStr*)  o); break;&lt;br /&gt;
    case T_VEC:   naVec_gcclean  ((struct naVec*)  o); break;&lt;br /&gt;
    case T_HASH:  naiGCHashClean ((struct naHash*) o); break;&lt;br /&gt;
    case T_CODE:  naCode_gcclean ((struct naCode*) o); break;&lt;br /&gt;
    case T_GHOST: naGhost_gcclean((struct naGhost*)o); break;	&lt;br /&gt;
    }&lt;br /&gt;
    p-&amp;gt;free[p-&amp;gt;nfree++] = o;  // ...and add it to the free list	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Type destructors =&lt;br /&gt;
Will be called by freelem(), implemented for all native Nasal types:&lt;br /&gt;
&lt;br /&gt;
* strings (T_STR):   naStr_gcclean [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/string.c#line113]&lt;br /&gt;
* vectors (T_VEC):   naVec_gcclean [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/vector.c#line22]&lt;br /&gt;
* hashes (T_HASH):  naiGCHashClean [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/hash.c#line221]&lt;br /&gt;
* code   (T_CODE):  naCode_gcclean [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line126]&lt;br /&gt;
* ghosts (T_GHOST): naGhost_gcclean [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/gc.c#line131]&lt;br /&gt;
&lt;br /&gt;
= Contexts =&lt;br /&gt;
&lt;br /&gt;
[[File:NasalContextStruct.png|thumb|500px|Nasal Context structure]]&lt;br /&gt;
&lt;br /&gt;
https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/code.h#line71&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
struct Context {&lt;br /&gt;
	&lt;br /&gt;
    // Stack(s)&lt;br /&gt;
	&lt;br /&gt;
    struct Frame fStack[MAX_RECURSION];&lt;br /&gt;
	&lt;br /&gt;
    int fTop;&lt;br /&gt;
	&lt;br /&gt;
    naRef opStack[MAX_STACK_DEPTH];&lt;br /&gt;
	&lt;br /&gt;
    int opFrame; // like Frame::bp, but for C functions&lt;br /&gt;
	&lt;br /&gt;
    int opTop;&lt;br /&gt;
	&lt;br /&gt;
    int markStack[MAX_MARK_DEPTH];&lt;br /&gt;
	&lt;br /&gt;
    int markTop;&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
    // Free object lists, cached from the global GC&lt;br /&gt;
	&lt;br /&gt;
    struct naObj** free[NUM_NASAL_TYPES];&lt;br /&gt;
	&lt;br /&gt;
    int nfree[NUM_NASAL_TYPES];&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
    // GC-findable reference point for objects that may live on the&lt;br /&gt;
	&lt;br /&gt;
    // processor (&amp;quot;real&amp;quot;) stack during execution.  naNew() places them&lt;br /&gt;
	&lt;br /&gt;
    // here, and clears the array each instruction&lt;br /&gt;
	&lt;br /&gt;
    struct naObj** temps;&lt;br /&gt;
	&lt;br /&gt;
    int ntemps;&lt;br /&gt;
	&lt;br /&gt;
    int tempsz;&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
    // Error handling&lt;br /&gt;
	&lt;br /&gt;
    jmp_buf jumpHandle;&lt;br /&gt;
	&lt;br /&gt;
    char error[128];&lt;br /&gt;
	&lt;br /&gt;
    naRef dieArg;&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
    // Sub-call lists&lt;br /&gt;
	&lt;br /&gt;
    struct Context* callParent;&lt;br /&gt;
	&lt;br /&gt;
    struct Context* callChild;&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
    // Linked list pointers in globals&lt;br /&gt;
	&lt;br /&gt;
    struct Context* nextFree;&lt;br /&gt;
	&lt;br /&gt;
    struct Context* nextAll;&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
    void* userData;&lt;br /&gt;
	&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Stack frames =&lt;br /&gt;
https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/code.h#line32&lt;br /&gt;
&lt;br /&gt;
= Tagged structures =&lt;br /&gt;
https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/data.h#line84&lt;br /&gt;
&lt;br /&gt;
= Core allocations =&lt;br /&gt;
All core memory allocation takes place via wrappers in [https://gitorious.org/fg/simgear/blobs/next/simgear/nasal/misc.c#line8 misc.c]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
void naFree(void* m) { free(m); }	&lt;br /&gt;
void* naAlloc(int n) { return malloc(n); }&lt;br /&gt;
void* naRealloc(void* b, int n) { return realloc(b, n); }&lt;br /&gt;
void naBZero(void* m, int n) { memset(m, 0, n); }&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Core developer documentation]] &lt;br /&gt;
[[Category:Nasal]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Talk:Project_Rembrandt&amp;diff=50313</id>
		<title>Talk:Project Rembrandt</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Talk:Project_Rembrandt&amp;diff=50313"/>
		<updated>2012-05-20T08:29:04Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* feed back on models */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi.&lt;br /&gt;
&lt;br /&gt;
Like I mentioned in my email, I have made modifications to CameraGroup to allow much more camera options in preferences.xml. Currently supporting: multiple cameras &amp;amp; render orders, render to texture, multiple render targets, binding of render target textures for other cameras, floating point textures, post processing &amp;amp; chaining of effects.&lt;br /&gt;
&lt;br /&gt;
So basically I think most your stuff could be handled with this system (though it still has some bugs and seems to cause crashes in libGL...)&lt;br /&gt;
&lt;br /&gt;
Anyways, when you think you have the system running well enough, so that it would be time for cleanup, please give me a message and let's see if this work can be combined. Meanwhile, if you're interested, my git repo is at [https://gitorious.org/~zan/fg/zans-flightgear/commits/newcameras gitorious repository].&lt;br /&gt;
&lt;br /&gt;
What I wonder about your work, is how you handle the separation of geometry, i.e. that the geometry pass does not draw transparent objects like clouds? I was trying to add this to my system, and got it to sort of work (via pre-render callbacks) but it was ugly. I'm going to add an option in preferences.xml to select, which geometry (either render bin numbers or transparent/opaque etc) to render, which would allow multiple lights easily.&lt;br /&gt;
&lt;br /&gt;
[[User:Zan|Zan]] 04:36, 20 December 2011 (EST)&lt;br /&gt;
:: Also see [http://flightgear.org/forums/viewtopic.php?f=6&amp;amp;t=13798&amp;amp;p=140379&amp;amp;hilit=#p140299 here] (forum thread).--[[User:Hooray|Hooray]] 07:13, 20 December 2011 (EST)&lt;br /&gt;
&lt;br /&gt;
The cloud and the sky were removed from the main scenegraph (in renderer.cxx) and added as simple group nodes in the lighting camera (the stage before the display stage) before applying the ambient pass. I put banners in CameraGroup so it is easy to spot the different structures for each stage (CameraGroup::BuildGBufferCamera - a bit misnamed now).&lt;br /&gt;
&lt;br /&gt;
Also don't forget most of state attributes are set in terrain-default.eff and model-default.eff&lt;br /&gt;
&lt;br /&gt;
--[[User:Fredb|Fredb]] 16:01, 20 December 2011 (EST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You write about the transparent objects: ''In a cull callback attached to the Geometry camera, after the scenegraph traversal, the transparent bins are removed from the render stage and saved in a temporary collection.'' I have to tell you, when I made my modifications to the cameras, I was also thinking about deferred shader, and ended up with the exactly same method what you seem to be using! I just never found time to correctly implement it. I'm impressed that we both separately ended up with this same method!&lt;br /&gt;
[[User:Zan|Zan]] 15:58, 15 January 2012 (EST)&lt;br /&gt;
:So now I know I am on the right track ;-)&lt;br /&gt;
:Regards&lt;br /&gt;
:--[[User:Fredb|Fredb]] 08:32, 16 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
== Models modification log ==&lt;br /&gt;
{{cquote|Change KSFO_light.xml to apt-light.xml|Fredb}}&lt;br /&gt;
Why that? KSFO_light.xml is a special model, made for KSFO by Don Lavelle. Just like EHAM also has custom light poles. And EDDF. There are quite some actually...&lt;br /&gt;
&lt;br /&gt;
[[User:Gijs|Gijs]] 15:04, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
: Hi Gijs. Could you explain in what they are different and why there are only ten of then while there are more than 50 apt-light in KSFO ?&lt;br /&gt;
:--[[User:Fredb|Fredb]] 15:30, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
:: They are two completely different models. Just compare them in Blender (or whatever editor). The KSFO_light ones match better with the real ones at KSFO (one of the differences is that the KSFO ones are grey/brown, rather than red/white striped). I don't know why only a few are placed, the red/white ones should be replaced (will talk to Jon on IRC in a minute).&lt;br /&gt;
:: Now that you're working on spot lights, it's important to realize that we (will) have many light pole models, simply because there are many variants in real life... ;)&lt;br /&gt;
:: [[User:Gijs|Gijs]] 17:42, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
Because of this: &amp;quot;Add a spot light animation&amp;quot; - testing real lights now?&lt;br /&gt;
That would be great!&lt;br /&gt;
&lt;br /&gt;
--[[User:HHS|HHS]] 15:09, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
=== feed back on models ===&lt;br /&gt;
&lt;br /&gt;
''Howdy Fred, wonderful work. There are still plenty of thing to do, plenty about which modelers will rant, as usual, but let me tell you how much I appreciate what you have done with rembrandt. Now some &amp;lt;del&amp;gt;rants&amp;lt;/del&amp;gt; comments:''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* I worked on the f-14b cockpit and added 3 point lights to enlighten the space. No problem there, I managed (more or less) to keep the light volume inside the cockpit and this wasn't easy, and I linked the lights intensity to the instruments lights slider. the instruments have (since a long time) their own emission (material animation) but they just lose the color, so instead of being red lighted, they are now white. http://www.maison-capestang.com/fg/f-14b/f-14-inside-lighting-20120517.png&lt;br /&gt;
* &amp;lt;del&amp;gt;The bloom effect is a bit too much IHMO&amp;lt;/del&amp;gt;. will it be settable per object ? ''(In my case it was too much because of bad and avoidable interaction between legacy emissiveness and rembrandt lights)''&lt;br /&gt;
* SSAO is also a bit strong, it would be nice to test several strength on different models before settling a default value. http://www.maison-capestang.com/fg/E-2C/ssao-on-off.png&lt;br /&gt;
* No major problems with converting of referencing the transparencies, but the sky is much darker than the terrain horizon when seen through the propellers with transparency (material animation). http://www.maison-capestang.com/fg/E-2C/through-the-propellers.png&lt;br /&gt;
&lt;br /&gt;
[[User:Xiii|Xiii]] 17:44, 17 May 2012 (EDT)&lt;br /&gt;
&lt;br /&gt;
Interesting: If you register an emissive object as transparent, it keeps its colored config. The following works with rembrandt: green emissive opaque object.&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;effect&amp;gt;&lt;br /&gt;
    &amp;lt;inherits-from&amp;gt;Effects/model-transparent&amp;lt;/inherits-from&amp;gt;&lt;br /&gt;
    &amp;lt;object-name&amp;gt;screen-bkg&amp;lt;/object-name&amp;gt;&lt;br /&gt;
  &amp;lt;/effect&amp;gt;&lt;br /&gt;
  &amp;lt;animation&amp;gt;&lt;br /&gt;
     &amp;lt;object-name&amp;gt;screen-bkg&amp;lt;/object-name&amp;gt;&lt;br /&gt;
     &amp;lt;type&amp;gt;material&amp;lt;/type&amp;gt;&lt;br /&gt;
     &amp;lt;emission&amp;gt;&lt;br /&gt;
       &amp;lt;factor-prop&amp;gt;sim/model/f-14b/controls/VDI/contrast&amp;lt;/factor-prop&amp;gt;&lt;br /&gt;
       &amp;lt;red&amp;gt;0.0&amp;lt;/red&amp;gt;&lt;br /&gt;
       &amp;lt;green&amp;gt;0.7&amp;lt;/green&amp;gt;&lt;br /&gt;
       &amp;lt;blue&amp;gt;0.0&amp;lt;/blue&amp;gt;&lt;br /&gt;
     &amp;lt;/emission&amp;gt;&lt;br /&gt;
  &amp;lt;/animation&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And it is realy cool news. But, but.... there are zbuffering issues (I suppose so because some overlaying transparent objects appears and disapear when the view pitch or yaw change).  &lt;br /&gt;
&lt;br /&gt;
[[User:Xiii|Xiii]] 03:57, 20 May 2012 (EDT)&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Talk:Project_Rembrandt&amp;diff=50312</id>
		<title>Talk:Project Rembrandt</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Talk:Project_Rembrandt&amp;diff=50312"/>
		<updated>2012-05-20T07:57:46Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* feed back on models */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi.&lt;br /&gt;
&lt;br /&gt;
Like I mentioned in my email, I have made modifications to CameraGroup to allow much more camera options in preferences.xml. Currently supporting: multiple cameras &amp;amp; render orders, render to texture, multiple render targets, binding of render target textures for other cameras, floating point textures, post processing &amp;amp; chaining of effects.&lt;br /&gt;
&lt;br /&gt;
So basically I think most your stuff could be handled with this system (though it still has some bugs and seems to cause crashes in libGL...)&lt;br /&gt;
&lt;br /&gt;
Anyways, when you think you have the system running well enough, so that it would be time for cleanup, please give me a message and let's see if this work can be combined. Meanwhile, if you're interested, my git repo is at [https://gitorious.org/~zan/fg/zans-flightgear/commits/newcameras gitorious repository].&lt;br /&gt;
&lt;br /&gt;
What I wonder about your work, is how you handle the separation of geometry, i.e. that the geometry pass does not draw transparent objects like clouds? I was trying to add this to my system, and got it to sort of work (via pre-render callbacks) but it was ugly. I'm going to add an option in preferences.xml to select, which geometry (either render bin numbers or transparent/opaque etc) to render, which would allow multiple lights easily.&lt;br /&gt;
&lt;br /&gt;
[[User:Zan|Zan]] 04:36, 20 December 2011 (EST)&lt;br /&gt;
:: Also see [http://flightgear.org/forums/viewtopic.php?f=6&amp;amp;t=13798&amp;amp;p=140379&amp;amp;hilit=#p140299 here] (forum thread).--[[User:Hooray|Hooray]] 07:13, 20 December 2011 (EST)&lt;br /&gt;
&lt;br /&gt;
The cloud and the sky were removed from the main scenegraph (in renderer.cxx) and added as simple group nodes in the lighting camera (the stage before the display stage) before applying the ambient pass. I put banners in CameraGroup so it is easy to spot the different structures for each stage (CameraGroup::BuildGBufferCamera - a bit misnamed now).&lt;br /&gt;
&lt;br /&gt;
Also don't forget most of state attributes are set in terrain-default.eff and model-default.eff&lt;br /&gt;
&lt;br /&gt;
--[[User:Fredb|Fredb]] 16:01, 20 December 2011 (EST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You write about the transparent objects: ''In a cull callback attached to the Geometry camera, after the scenegraph traversal, the transparent bins are removed from the render stage and saved in a temporary collection.'' I have to tell you, when I made my modifications to the cameras, I was also thinking about deferred shader, and ended up with the exactly same method what you seem to be using! I just never found time to correctly implement it. I'm impressed that we both separately ended up with this same method!&lt;br /&gt;
[[User:Zan|Zan]] 15:58, 15 January 2012 (EST)&lt;br /&gt;
:So now I know I am on the right track ;-)&lt;br /&gt;
:Regards&lt;br /&gt;
:--[[User:Fredb|Fredb]] 08:32, 16 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
== Models modification log ==&lt;br /&gt;
{{cquote|Change KSFO_light.xml to apt-light.xml|Fredb}}&lt;br /&gt;
Why that? KSFO_light.xml is a special model, made for KSFO by Don Lavelle. Just like EHAM also has custom light poles. And EDDF. There are quite some actually...&lt;br /&gt;
&lt;br /&gt;
[[User:Gijs|Gijs]] 15:04, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
: Hi Gijs. Could you explain in what they are different and why there are only ten of then while there are more than 50 apt-light in KSFO ?&lt;br /&gt;
:--[[User:Fredb|Fredb]] 15:30, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
:: They are two completely different models. Just compare them in Blender (or whatever editor). The KSFO_light ones match better with the real ones at KSFO (one of the differences is that the KSFO ones are grey/brown, rather than red/white striped). I don't know why only a few are placed, the red/white ones should be replaced (will talk to Jon on IRC in a minute).&lt;br /&gt;
:: Now that you're working on spot lights, it's important to realize that we (will) have many light pole models, simply because there are many variants in real life... ;)&lt;br /&gt;
:: [[User:Gijs|Gijs]] 17:42, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
Because of this: &amp;quot;Add a spot light animation&amp;quot; - testing real lights now?&lt;br /&gt;
That would be great!&lt;br /&gt;
&lt;br /&gt;
--[[User:HHS|HHS]] 15:09, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
=== feed back on models ===&lt;br /&gt;
&lt;br /&gt;
''Howdy Fred, wonderful work. There are still plenty of thing to do, plenty about which modelers will rant, as usual, but let me tell you how much I appreciate what you have done with rembrandt. Now some &amp;lt;del&amp;gt;rants&amp;lt;/del&amp;gt; comments:''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* I worked on the f-14b cockpit and added 3 point lights to enlighten the space. No problem there, I managed (more or less) to keep the light volume inside the cockpit and this wasn't easy, and I linked the lights intensity to the instruments lights slider. the instruments have (since a long time) their own emission (material animation) but they just lose the color, so instead of being red lighted, they are now white. http://www.maison-capestang.com/fg/f-14b/f-14-inside-lighting-20120517.png&lt;br /&gt;
* &amp;lt;del&amp;gt;The bloom effect is a bit too much IHMO&amp;lt;/del&amp;gt;. will it be settable per object ? ''(In my case it was too much because of bad and avoidable interaction between legacy emissiveness and rembrandt lights)''&lt;br /&gt;
* SSAO is also a bit strong, it would be nice to test several strength on different models before settling a default value. http://www.maison-capestang.com/fg/E-2C/ssao-on-off.png&lt;br /&gt;
* No major problems with converting of referencing the transparencies, but the sky is much darker than the terrain horizon when seen through the propellers with transparency (material animation). http://www.maison-capestang.com/fg/E-2C/through-the-propellers.png&lt;br /&gt;
&lt;br /&gt;
[[User:Xiii|Xiii]] 17:44, 17 May 2012 (EDT)&lt;br /&gt;
&lt;br /&gt;
Interesting: If you register an emissive object as transparent, it keeps its colored config. The following works with rembrandt: green emissive opaque object.&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;effect&amp;gt;&lt;br /&gt;
    &amp;lt;inherits-from&amp;gt;Effects/model-transparent&amp;lt;/inherits-from&amp;gt;&lt;br /&gt;
    &amp;lt;object-name&amp;gt;screen-bkg&amp;lt;/object-name&amp;gt;&lt;br /&gt;
  &amp;lt;/effect&amp;gt;&lt;br /&gt;
  &amp;lt;animation&amp;gt;&lt;br /&gt;
     &amp;lt;object-name&amp;gt;screen-bkg&amp;lt;/object-name&amp;gt;&lt;br /&gt;
     &amp;lt;type&amp;gt;material&amp;lt;/type&amp;gt;&lt;br /&gt;
     &amp;lt;emission&amp;gt;&lt;br /&gt;
       &amp;lt;factor-prop&amp;gt;sim/model/f-14b/controls/VDI/contrast&amp;lt;/factor-prop&amp;gt;&lt;br /&gt;
       &amp;lt;red&amp;gt;0.0&amp;lt;/red&amp;gt;&lt;br /&gt;
       &amp;lt;green&amp;gt;0.7&amp;lt;/green&amp;gt;&lt;br /&gt;
       &amp;lt;blue&amp;gt;0.0&amp;lt;/blue&amp;gt;&lt;br /&gt;
     &amp;lt;/emission&amp;gt;&lt;br /&gt;
  &amp;lt;/animation&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And it is realy cool news.&lt;br /&gt;
&lt;br /&gt;
[[User:Xiii|Xiii]] 03:57, 20 May 2012 (EDT)&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Talk:Project_Rembrandt&amp;diff=50093</id>
		<title>Talk:Project Rembrandt</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Talk:Project_Rembrandt&amp;diff=50093"/>
		<updated>2012-05-17T21:44:18Z</updated>

		<summary type="html">&lt;p&gt;Xiii: modeler comments&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi.&lt;br /&gt;
&lt;br /&gt;
Like I mentioned in my email, I have made modifications to CameraGroup to allow much more camera options in preferences.xml. Currently supporting: multiple cameras &amp;amp; render orders, render to texture, multiple render targets, binding of render target textures for other cameras, floating point textures, post processing &amp;amp; chaining of effects.&lt;br /&gt;
&lt;br /&gt;
So basically I think most your stuff could be handled with this system (though it still has some bugs and seems to cause crashes in libGL...)&lt;br /&gt;
&lt;br /&gt;
Anyways, when you think you have the system running well enough, so that it would be time for cleanup, please give me a message and let's see if this work can be combined. Meanwhile, if you're interested, my git repo is at [https://gitorious.org/~zan/fg/zans-flightgear/commits/newcameras gitorious repository].&lt;br /&gt;
&lt;br /&gt;
What I wonder about your work, is how you handle the separation of geometry, i.e. that the geometry pass does not draw transparent objects like clouds? I was trying to add this to my system, and got it to sort of work (via pre-render callbacks) but it was ugly. I'm going to add an option in preferences.xml to select, which geometry (either render bin numbers or transparent/opaque etc) to render, which would allow multiple lights easily.&lt;br /&gt;
&lt;br /&gt;
[[User:Zan|Zan]] 04:36, 20 December 2011 (EST)&lt;br /&gt;
:: Also see [http://flightgear.org/forums/viewtopic.php?f=6&amp;amp;t=13798&amp;amp;p=140379&amp;amp;hilit=#p140299 here] (forum thread).--[[User:Hooray|Hooray]] 07:13, 20 December 2011 (EST)&lt;br /&gt;
&lt;br /&gt;
The cloud and the sky were removed from the main scenegraph (in renderer.cxx) and added as simple group nodes in the lighting camera (the stage before the display stage) before applying the ambient pass. I put banners in CameraGroup so it is easy to spot the different structures for each stage (CameraGroup::BuildGBufferCamera - a bit misnamed now).&lt;br /&gt;
&lt;br /&gt;
Also don't forget most of state attributes are set in terrain-default.eff and model-default.eff&lt;br /&gt;
&lt;br /&gt;
--[[User:Fredb|Fredb]] 16:01, 20 December 2011 (EST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You write about the transparent objects: ''In a cull callback attached to the Geometry camera, after the scenegraph traversal, the transparent bins are removed from the render stage and saved in a temporary collection.'' I have to tell you, when I made my modifications to the cameras, I was also thinking about deferred shader, and ended up with the exactly same method what you seem to be using! I just never found time to correctly implement it. I'm impressed that we both separately ended up with this same method!&lt;br /&gt;
[[User:Zan|Zan]] 15:58, 15 January 2012 (EST)&lt;br /&gt;
:So now I know I am on the right track ;-)&lt;br /&gt;
:Regards&lt;br /&gt;
:--[[User:Fredb|Fredb]] 08:32, 16 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
== Models modification log ==&lt;br /&gt;
{{cquote|Change KSFO_light.xml to apt-light.xml|Fredb}}&lt;br /&gt;
Why that? KSFO_light.xml is a special model, made for KSFO by Don Lavelle. Just like EHAM also has custom light poles. And EDDF. There are quite some actually...&lt;br /&gt;
&lt;br /&gt;
[[User:Gijs|Gijs]] 15:04, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
: Hi Gijs. Could you explain in what they are different and why there are only ten of then while there are more than 50 apt-light in KSFO ?&lt;br /&gt;
:--[[User:Fredb|Fredb]] 15:30, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
:: They are two completely different models. Just compare them in Blender (or whatever editor). The KSFO_light ones match better with the real ones at KSFO (one of the differences is that the KSFO ones are grey/brown, rather than red/white striped). I don't know why only a few are placed, the red/white ones should be replaced (will talk to Jon on IRC in a minute).&lt;br /&gt;
:: Now that you're working on spot lights, it's important to realize that we (will) have many light pole models, simply because there are many variants in real life... ;)&lt;br /&gt;
:: [[User:Gijs|Gijs]] 17:42, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
Because of this: &amp;quot;Add a spot light animation&amp;quot; - testing real lights now?&lt;br /&gt;
That would be great!&lt;br /&gt;
&lt;br /&gt;
--[[User:HHS|HHS]] 15:09, 3 January 2012 (EST)&lt;br /&gt;
&lt;br /&gt;
=== feed back on models ===&lt;br /&gt;
&lt;br /&gt;
''Howdy Fred, wonderful work. There are still plenty of thing to do, plenty about which modelers will rant, as usual, but let me tell you how much I appreciate what you have done with rembrandt. Now some &amp;lt;del&amp;gt;rants&amp;lt;/del&amp;gt; comments:''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* I worked on the f-14b cockpit and added 3 point lights to enlighten the space. No problem there, I managed (more or less) to keep the light volume inside the cockpit and this wasn't easy, and I linked the lights intensity to the instruments lights slider. the instruments have (since a long time) their own emission (material animation) but they just lose the color, so instead of being red lighted, they are now white. http://www.maison-capestang.com/fg/f-14b/f-14-inside-lighting-20120517.png&lt;br /&gt;
* The bloom effect is a bit too much IHMO. will it be settable per object ?&lt;br /&gt;
* SSAO is also a bit strong, it would be nice to test several strength on different models before settling a default value. http://www.maison-capestang.com/fg/E-2C/ssao-on-off.png&lt;br /&gt;
* No major problems with converting of referencing the transparencies, but the sky is much darker than the terrain horizon when seen through the propellers with transparency (material animation). http://www.maison-capestang.com/fg/E-2C/through-the-propellers.png&lt;br /&gt;
&lt;br /&gt;
[[User:Xiii|Xiii]] 17:44, 17 May 2012 (EDT)&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=FlightGear_Newsletter_August_2011&amp;diff=33657</id>
		<title>FlightGear Newsletter August 2011</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=FlightGear_Newsletter_August_2011&amp;diff=33657"/>
		<updated>2011-08-28T12:20:22Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* New Aircraft */  added the Hawkeye&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{newsletter}}&lt;br /&gt;
{{TOC_right|limit=2}}&lt;br /&gt;
&lt;br /&gt;
''We would like to emphasize that the monthly newsletter can not live without the contributions of FlightGear users and developers. Everyone with a wiki account (free to register) can edit the newsletter and every contribution is welcome. So if you know about any FlightGear related projects such as for example updated scenery or aircraft, please do feel invited to add such news to the newsletter.''&lt;br /&gt;
&lt;br /&gt;
== New FlightGear Version Finally Released ==&lt;br /&gt;
On August 17 after a year and a half of hard work, [http://www.flightgear.org/announcements/flightgear-v2-4-0-released/ FlightGear v2.4 has finally been released!]  Thanks to the key developers that took the lead to overhaul the FlightGear release plan and create a regular release cycle.  Thanks also to each and every developer in every portion of the FlightGear community who have contributed to make FlightGear such a success!  [http://www.flightgear.org/download/ Please click here to jump to the download page.]&lt;br /&gt;
Starting with the v2.4 release, the development of FlightGear will now follow the [[Release Plan]], which will act as a guideline in upcoming development and regular releases of the FlightGear simulator in the form of a six-month development cycle.  In other words, if this Release Plan's suggestions are followed thoroughly, stable releases of the simulator will be created twice a year, on the 17th of February and August.&lt;br /&gt;
&lt;br /&gt;
== FlightGear.org Main Website Updated ==&lt;br /&gt;
Along with the [http://www.flightgear.org/announcements/flightgear-v2-4-0-released/ v2.4 release], the [http://www.flightgear.org FlightGear.org] web site has seen a complete overhaul during the month of August.  The new website is based on &amp;quot;wordpress&amp;quot; which supports multiple editors and allows for much easier editing and updating of content.  One interesting feature of wordpress is the ability to create &amp;quot;posts&amp;quot; and then allow anyone to add their own comments (pending approval.)  Newsletter contributors (and anyone else) are invited to create a &amp;quot;post&amp;quot; for the main flightgear.org web site.  This is a great way to promote your own project and do so in a context that allows more paragraphs, more detail, and more pictures than can fit in a newsletter article.  So please continue to submit newsletter articles, but also please consider developing a longer version for the main web site!&lt;br /&gt;
&lt;br /&gt;
== Development news ==&lt;br /&gt;
&lt;br /&gt;
=== AI/ATC interactions ===&lt;br /&gt;
[[File:Ehamrwyblock.png|thumb| Heavily congested taxiways at Schiphol after the 777-200 had been blocking active runway 24 for nearly 4 hours.]]&lt;br /&gt;
While the preparations for our upcoming release are still going on, development for the next release has already started. In early august code changes were committed, which allow FlightGear users to interact with an artifically intelligent ATC system. Currently it is possible to request startup clearance, permission for push back, as well as taxi-clearances. A brand new, and highly experimental, ground network visualization system makes it possible to taxi from parking to runway along the route given by ATC. Hold position and resume taxi instructions can be be given in order to avoid collisions with other (AI controlled) aircraft. Hand-off to a tower controller, as well as more interactive take offs, are in the planning stages. The aim is to have all stages of IFR commercial aviation traffic under ATC control before the release of flightgear 2.6.0, which is planned for early 2012.&lt;br /&gt;
&lt;br /&gt;
== Nasal for newbies ==&lt;br /&gt;
== New software Tools and Projects ==&lt;br /&gt;
=== TerraMaster ===&lt;br /&gt;
[http://code.google.com/p/terramaster TerraMaster] is a Java-based application that lets you pick-and-choose which scenery tiles you would like to sync with the FG scenery server. Ideal for those people who prefer to TerraSync preflight rather than inflight.&lt;br /&gt;
== FlightGear Addons and Mods ==&lt;br /&gt;
== In the Hangar ==&lt;br /&gt;
=== New Aircraft ===&lt;br /&gt;
[[File:A310-snap.png|thumb| Mahan Air A310-300 over Schiphol.]]&lt;br /&gt;
Icecode and Star a few months ago started the development of the [http://wiki.flightgear.org/Airbus_A310-300 Airbus A310-300]. The latest version of the model includes a detailed cockpit and a realistic YAsim FDM. You can view the development progress [http://www.flightgear.org/forums/viewtopic.php?f=4&amp;amp;t=12790 here].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== TECNAM P.92 ECHO ====&lt;br /&gt;
[[File:Tecnam-P92.PNG|200px|thumb| Tecnam-P92.]]&lt;br /&gt;
A french team who likes to be called &amp;quot;The Flightgear France patrol&amp;quot; has been working on many aircrafts. It is composed of many specialists in various fields (3D, texture, FDM, nasal, xml, sound...).&lt;br /&gt;
The France patrol is proud to offer you a new airplane: the Tecnam-P92. It is probably the best ultralight aircraft available by now in Flightgear. All the instruments, electrical systems and most of the sound are realistically simulated.&lt;br /&gt;
You can download this airplane in [http://helijah.free.fr/flightgear/hangar.htm Helijah's hangar] here as well as in the GIT repository.&lt;br /&gt;
This team is currently working on other planes and helos, such as the R44, DC3 C-47 and D510. Those aircrafts can also be found in Helijah's hangar and in GIT.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== GRUMMAN E-2C HAWKEYE ====&lt;br /&gt;
[[File:Grumman-E-2C-early-model-20110626.png|200px|thumb| Grumman E-2C Hawkeye.]]&lt;br /&gt;
At that time being the bird is in a very early stage of development, but with a little bit of time it could become a very nice carrier based flying ATC, needing (1) a Pilot to stay on station flying flat &amp;quot;8s&amp;quot; against the wind and (2) a skilled Air Controller to &amp;quot;control&amp;quot; the kind of nasty boys one can usually see around the Nimitz. Right now, the model available in Git is very crude (but the Landing gear) and the FDM isn't completely tuned. There is the minimal set of instruments, but no lights and no fancy details in the cockpit yet. Anyway she can already land and take of from a carrier (with day light). This model is coming out of xiii's factory, so be sure it will be over detailed and accurately modeled :-)&lt;br /&gt;
&lt;br /&gt;
=== Updated aircraft ===&lt;br /&gt;
=== Liveries ===&lt;br /&gt;
== Scenery corner ==&lt;br /&gt;
=== Airports ===&lt;br /&gt;
I have started a few models on Helgoland with the airport terminal building (EDXH) with the nearby shop and Mobile home park. &lt;br /&gt;
&lt;br /&gt;
It is hard to find photos of local landmarks, or interesting buildings there. Anyone who has visited Helgoland and is prepared to show me their photos could make a valuable contribution here. The church would be a welcome addition.&lt;br /&gt;
&lt;br /&gt;
If you know of any such photos on the internet, which cannot be found by searching with the obvious names, details would also be welcome.&lt;br /&gt;
&lt;br /&gt;
Any help much appreciated.&lt;br /&gt;
&lt;br /&gt;
VicMar&lt;br /&gt;
&lt;br /&gt;
== Aircraft of the month ==&lt;br /&gt;
&lt;br /&gt;
The Bombardier CRJ700 series was reviewed as this week/month's feature aircraft. You can read the full review at our wiki's [[Bombardier CRJ700 series#Aircraft of the Week.2FMonth|Bombardier CRJ700 series]] article.&lt;br /&gt;
&lt;br /&gt;
== Airport of the month ==&lt;br /&gt;
== Screenshot of the month ==&lt;br /&gt;
== Suggested flights ==&lt;br /&gt;
Set your plane at LPLA. This was an emergency landing site for the space shuttle so you will have plenty of room to take off.&lt;br /&gt;
We will have to fly an odd pattern. The reason for that: If you don't fly to high you will have some amazing views.&lt;br /&gt;
&lt;br /&gt;
Fly towards and over LPPD. Look out the window and enjoy the view. &lt;br /&gt;
Head out towards LPHR. If you feel LPHR coming near, look out the window good, you might have to pull your plane up.&lt;br /&gt;
&lt;br /&gt;
Happy flying!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Aircraft reviews ==&lt;br /&gt;
== Wiki updates ==&lt;br /&gt;
== Community news ==&lt;br /&gt;
&lt;br /&gt;
[http://wiki.flightgear.org/User:Longfly Longfly] is very proud and happy to announce the first official release of the &amp;quot;FlightgGear aircraftlist&amp;quot;. After eight months of development it contains exactly '''491 different aircrafts''' for FlightGear with screenshots (click on the thumbnails – not everyone is working yet) and download-links.&lt;br /&gt;
&lt;br /&gt;
Because it is a very long list (6127 lines of code and many images) it may take very long to load on some slow computers. So I'll implement five subpages with always 100 planes. There is also a filter, so you can get a better overview of your favorite planes.&lt;br /&gt;
&lt;br /&gt;
The list should be complete but if an aircraft is missing I urge you to report it to me [http://flightgear.bplaced.de/index.php/flugzeugliste/report-a-missing-plane (pm or forum post or mail)] – Thanks! Furthermore feedback, criticism and new ideas are always very welcome in [http://www.flightgear.org/forums/viewtopic.php?f=4&amp;amp;t=10536&amp;amp;start=45 the forum threat].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here it is: [http://flightgear.bplaced.de/aircraftlist/ '''www.flightgear.bplaced.de/aircraftlist/''']&lt;br /&gt;
&lt;br /&gt;
Have fun exploring it!&lt;br /&gt;
&lt;br /&gt;
=== Stunt Fridays Monthly Video Challenge ===&lt;br /&gt;
Stunt Friday, originally a weekly event, is a monthly event where participants compete to record videos of a given stunt, and compete to create the most interesting video and stunt.&lt;br /&gt;
The challenge for August involved landing an aircraft at the notoriously infamous former Kai Tak international airport in Hong Kong.&lt;br /&gt;
[[User:Alphamedia|Andrew Yokoyama (&amp;quot;kyokoyama&amp;quot;)]] won this month's challenge with a crosswind landing of a BAe Concorde in a storm and heavy crosswinds.&lt;br /&gt;
&lt;br /&gt;
* [http://www.youtube.com/watch?v=HnwFduqGHNM&amp;amp;feature=relmfu Announcement Video]&lt;br /&gt;
* [http://www.youtube.com/watch?v=rMX_30khbXg Winner Announcement Video]&lt;br /&gt;
* [http://www.youtube.com/watch?v=P21z6aFYeA4 Winning Video: BAe Concorde, British Airways]&lt;br /&gt;
&lt;br /&gt;
* [http://www.youtube.com/watch?v=JKxI1wYHBy4 Kyokoyama's First Video: B777, Custom Livery]&lt;br /&gt;
* [http://www.youtube.com/watch?v=6x3vQ6O6Iek&amp;amp;feature=player_embedded Ernest1984's Video: B787, House Livery]&lt;br /&gt;
* [http://www.youtube.com/watch?v=sXLy5GTuE30 CatchatyouFG's Video: A340, Cathay Pacific Airlines]&lt;br /&gt;
* [http://www.youtube.com/watch?v=bRoDzuR2rlo&amp;amp;feature=related Youssef's Video: B777, KLM]&lt;br /&gt;
* [http://www.youtube.com/watch?v=OkXr36GglEo&amp;amp;feature=player_embedded abc45's First Video: A320, Philippines Airlines]&lt;br /&gt;
* [http://www.youtube.com/watch?v=3fxxyFUyyAU&amp;amp;feature=player_embedded abc45's Second Video: A380, Singapore Airlines]&lt;br /&gt;
* [http://s979.photobucket.com/albums/ae271/MTshoot/?action=view&amp;amp;current=KaiTak13.mp4 E-Savageair's Video: B747, Cathay Pacific Airlines]&lt;br /&gt;
&lt;br /&gt;
=== FlightGear on YouTube ===&lt;br /&gt;
=== New tutorials and screencasts ===&lt;br /&gt;
=== Forum news ===&lt;br /&gt;
=== Multiplayer ===&lt;br /&gt;
=== Virtual airlines ===&lt;br /&gt;
=== FlightGear events ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Useful links ==&lt;br /&gt;
== And finally ... ==&lt;br /&gt;
=== Contributing ===&lt;br /&gt;
One of the regular thoughts expressed on the FlightGear forums is &amp;quot;I'd like to contribute but I don't know how to program, and I don't have the time&amp;quot;. Unfortunately, there is a common mis-conception that contributing requires programming and lots of free time. In fact, there are a huge range of ways to contribute to the project without needing to write code or spending days working on something. &lt;br /&gt;
&lt;br /&gt;
For ideas on starting to contribute to FlightGear, you may want to check out: [[Volunteer]].&lt;br /&gt;
&lt;br /&gt;
=== Call for volunteers ===&lt;br /&gt;
* The [[OpenRadar]] project is looking for a new maintainer.&lt;br /&gt;
* The [[FGFSPM]] (FlightGear Package Manager) is looking for a new maintainer.&lt;br /&gt;
&lt;br /&gt;
== Did you know==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Template:Newsletternav}}&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=File:Grumman-E-2C-early-model-20110626.png&amp;diff=33656</id>
		<title>File:Grumman-E-2C-early-model-20110626.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=File:Grumman-E-2C-early-model-20110626.png&amp;diff=33656"/>
		<updated>2011-08-28T12:02:15Z</updated>

		<summary type="html">&lt;p&gt;Xiii: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Grumman_A-6E&amp;diff=33121</id>
		<title>Grumman A-6E</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Grumman_A-6E&amp;diff=33121"/>
		<updated>2011-08-06T13:11:24Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* Operating Instructions */  remove next section title, will come latter&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{infobox Aircraft&lt;br /&gt;
|image =A-6E.jpg&lt;br /&gt;
|caption = The &amp;quot;Intruder&amp;quot;&lt;br /&gt;
|name =Grumman A-6E Intruder&lt;br /&gt;
|type =Attack aircraft&lt;br /&gt;
|authors =Alexis Bory&lt;br /&gt;
|fdm =YASim&lt;br /&gt;
|status =Beta&lt;br /&gt;
|fgname =A-6E&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The Grumman A-6 Intruder is available for FlightGear, and is capable of air-to-air refueling and landing on the carrier in that version. It features a high-quality 3D cockpit, avionics, and exterior model.&lt;br /&gt;
&lt;br /&gt;
The FG model is modeled with [[Tactical Air Navigation]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== About the aircraft ==&lt;br /&gt;
The '''A-6 Intruder''' is an American twin jet-engine, mid-wing attack aircraft built by Grumman Aerospace. In service between 1963 and 1997, the Intruder was designed as an all-weather replacement for the piston-engined A-1 Skyraider medium attack aircraft. A specialized electronic warfare derivative, the EA-6B Prowler, remains in service as of May 2008. As the A-6 was slated for retirement, its precision strike mission was taken over by the now retired F-14 Tomcat equipped with LANTIRN, which has subsequently passed on the role to the F/A-18E/F Super Hornet.&lt;br /&gt;
&lt;br /&gt;
An A-6E Intruder is on display at the [[National Air and Space Museum]].&lt;br /&gt;
&lt;br /&gt;
== Aircraft help ==&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
!Key&lt;br /&gt;
!Function&lt;br /&gt;
|-&lt;br /&gt;
|c&lt;br /&gt;
|Canopy open/close command&lt;br /&gt;
|-&lt;br /&gt;
|C&lt;br /&gt;
|Catapult launch command&lt;br /&gt;
|-&lt;br /&gt;
|k/j&lt;br /&gt;
|Air Brakes open/close&lt;br /&gt;
|-&lt;br /&gt;
|L&lt;br /&gt;
|Carrier Launch-bar engage&lt;br /&gt;
|-&lt;br /&gt;
|o/O&lt;br /&gt;
|Hook up/down&lt;br /&gt;
|-&lt;br /&gt;
|f/F&lt;br /&gt;
|Wing Fold up/down&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Operating Instructions ==&lt;br /&gt;
&lt;br /&gt;
=== Landing ===&lt;br /&gt;
&lt;br /&gt;
==== Carrier Landing pattern ====&lt;br /&gt;
[[File:A-6E-carrier-landing-pattern-ng.png]]&lt;br /&gt;
&lt;br /&gt;
== Development status/Issues/Todo ==&lt;br /&gt;
'''Outside:'''&lt;br /&gt;
* Fix the relatively massive &amp;quot;hiccup&amp;quot; in elevator&lt;br /&gt;
&lt;br /&gt;
== Related content ==&lt;br /&gt;
=== Related lists ===&lt;br /&gt;
* [[Aircraft]]&lt;br /&gt;
* [[Aircraft Todo]]&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
* [http://en.wikipedia.org/wiki/A-6_Intruder Wikipedia's article on the A-6 Intruder]&lt;br /&gt;
* [http://croo.murgl.org/fgfs/A-6E/A-6E-A-6E-20071101.tgz Download the development version of the A-6E (11/01/2007)]&lt;br /&gt;
* [http://www.youtube.com/watch?v=EKELqBGVsqw A-6 flight - Dynamic water effect in FlightGear] ([http://www.youtube.com/watch?v=EKELqBGVsqw&amp;amp;hd=1 720p]) - August 18, 2009&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Grumman}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft]]&lt;br /&gt;
[[Category:Military aircraft]]&lt;br /&gt;
[[Category:Aircraft TODO]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Grumman_A-6E&amp;diff=33120</id>
		<title>Grumman A-6E</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Grumman_A-6E&amp;diff=33120"/>
		<updated>2011-08-06T12:59:01Z</updated>

		<summary type="html">&lt;p&gt;Xiii: added cairrier landing instruction&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{infobox Aircraft&lt;br /&gt;
|image =A-6E.jpg&lt;br /&gt;
|caption = The &amp;quot;Intruder&amp;quot;&lt;br /&gt;
|name =Grumman A-6E Intruder&lt;br /&gt;
|type =Attack aircraft&lt;br /&gt;
|authors =Alexis Bory&lt;br /&gt;
|fdm =YASim&lt;br /&gt;
|status =Beta&lt;br /&gt;
|fgname =A-6E&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The Grumman A-6 Intruder is available for FlightGear, and is capable of air-to-air refueling and landing on the carrier in that version. It features a high-quality 3D cockpit, avionics, and exterior model.&lt;br /&gt;
&lt;br /&gt;
The FG model is modeled with [[Tactical Air Navigation]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== About the aircraft ==&lt;br /&gt;
The '''A-6 Intruder''' is an American twin jet-engine, mid-wing attack aircraft built by Grumman Aerospace. In service between 1963 and 1997, the Intruder was designed as an all-weather replacement for the piston-engined A-1 Skyraider medium attack aircraft. A specialized electronic warfare derivative, the EA-6B Prowler, remains in service as of May 2008. As the A-6 was slated for retirement, its precision strike mission was taken over by the now retired F-14 Tomcat equipped with LANTIRN, which has subsequently passed on the role to the F/A-18E/F Super Hornet.&lt;br /&gt;
&lt;br /&gt;
An A-6E Intruder is on display at the [[National Air and Space Museum]].&lt;br /&gt;
&lt;br /&gt;
== Aircraft help ==&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
!Key&lt;br /&gt;
!Function&lt;br /&gt;
|-&lt;br /&gt;
|c&lt;br /&gt;
|Canopy open/close command&lt;br /&gt;
|-&lt;br /&gt;
|C&lt;br /&gt;
|Catapult launch command&lt;br /&gt;
|-&lt;br /&gt;
|k/j&lt;br /&gt;
|Air Brakes open/close&lt;br /&gt;
|-&lt;br /&gt;
|L&lt;br /&gt;
|Carrier Launch-bar engage&lt;br /&gt;
|-&lt;br /&gt;
|o/O&lt;br /&gt;
|Hook up/down&lt;br /&gt;
|-&lt;br /&gt;
|f/F&lt;br /&gt;
|Wing Fold up/down&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Operating Instructions ==&lt;br /&gt;
&lt;br /&gt;
=== Landing ===&lt;br /&gt;
&lt;br /&gt;
==== Carrier Landing pattern ====&lt;br /&gt;
[[File:A-6E-carrier-landing-pattern-ng.png]]&lt;br /&gt;
&lt;br /&gt;
==== Carrier Landing Speed ====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Development status/Issues/Todo ==&lt;br /&gt;
'''Outside:'''&lt;br /&gt;
* Fix the relatively massive &amp;quot;hiccup&amp;quot; in elevator&lt;br /&gt;
&lt;br /&gt;
== Related content ==&lt;br /&gt;
=== Related lists ===&lt;br /&gt;
* [[Aircraft]]&lt;br /&gt;
* [[Aircraft Todo]]&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
* [http://en.wikipedia.org/wiki/A-6_Intruder Wikipedia's article on the A-6 Intruder]&lt;br /&gt;
* [http://croo.murgl.org/fgfs/A-6E/A-6E-A-6E-20071101.tgz Download the development version of the A-6E (11/01/2007)]&lt;br /&gt;
* [http://www.youtube.com/watch?v=EKELqBGVsqw A-6 flight - Dynamic water effect in FlightGear] ([http://www.youtube.com/watch?v=EKELqBGVsqw&amp;amp;hd=1 720p]) - August 18, 2009&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Grumman}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft]]&lt;br /&gt;
[[Category:Military aircraft]]&lt;br /&gt;
[[Category:Aircraft TODO]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=File:A-6E-carrier-landing-pattern-ng.png&amp;diff=33119</id>
		<title>File:A-6E-carrier-landing-pattern-ng.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=File:A-6E-carrier-landing-pattern-ng.png&amp;diff=33119"/>
		<updated>2011-08-06T12:57:07Z</updated>

		<summary type="html">&lt;p&gt;Xiii: A-6 Intruder standard carrier landing pattern&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A-6 Intruder standard carrier landing pattern&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Grumman_F-14_Tomcat&amp;diff=31530</id>
		<title>Grumman F-14 Tomcat</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Grumman_F-14_Tomcat&amp;diff=31530"/>
		<updated>2011-05-07T08:31:17Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* Weapons operation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{infobox Aircraft&lt;br /&gt;
|image =F-14.jpg&lt;br /&gt;
|name =F-14 Tomcat&lt;br /&gt;
|type =Interceptor/multi-role Fighter aircraft&lt;br /&gt;
|livery =U.S. Navy&lt;br /&gt;
|authors =Enrique Laso, Alexis Bory (cockpit)&lt;br /&gt;
|status =Production&lt;br /&gt;
|fdm =YASim&lt;br /&gt;
|3dcockpit = √&lt;br /&gt;
|carrier = √&lt;br /&gt;
|fgname = f-14b&lt;br /&gt;
}}&lt;br /&gt;
The '''Grumman F-14 Tomcat''' is a supersonic, twin-engine, two-seat, variable geometry wing [[aircraft]]. The F-14 was the United States Navy's primary maritime air superiority fighter, fleet defense interceptor and tactical reconnaissance platform from 1974 to 2006. It later performed precision strike missions once it was integrated with the Low Altitude Navigation and Targeting Infrared for Night [http://en.wikipedia.org/wiki/LANTIRN LANTIRN] system. The F-14 was developed after the collapse of the [http://en.wikipedia.org/wiki/F-111B F-111B] project, and was the first of the American teen-series fighters which were designed incorporating the experience of air combat in Vietnam against MiGs.&lt;br /&gt;
&lt;br /&gt;
It entered service in 1972 with the U.S. Navy, replacing the [[McDonnell F4 Phantom II]]. It was later exported to the former Imperial Iranian Air Force in 1976, during a time when the US still had good relations with Iran. It was retired from the active U.S. Navy fleet on 22 September 2006, having been replaced by the [[F/A-18 Hornet|F/A-18E/F Super Hornet]]. As of 2007, it remains in service only with the Islamic Republic of Iran Air Force.&lt;br /&gt;
&lt;br /&gt;
== Keyboard Controls ==&lt;br /&gt;
=== Flight Controls ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|Home&lt;br /&gt;
|Increase elevator trim&lt;br /&gt;
|-&lt;br /&gt;
|End&lt;br /&gt;
|Decrease elevator trim&lt;br /&gt;
|-&lt;br /&gt;
|] or f&lt;br /&gt;
|Lower flaps&lt;br /&gt;
|-&lt;br /&gt;
|[ or F&lt;br /&gt;
|Raise flaps&lt;br /&gt;
|-&lt;br /&gt;
|s&lt;br /&gt;
|Increase speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|S&lt;br /&gt;
|Decrease speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-b&lt;br /&gt;
|Toggle speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|k&lt;br /&gt;
|Increase speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|j&lt;br /&gt;
|Decrease speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[File:F-14_cockpit.jpg|thumb|270px|Cockpit of the F-14.]]&lt;br /&gt;
[[File:SunsetF-14.png|270px|thumb|right|A nice scene with the F-14.]]&lt;br /&gt;
&lt;br /&gt;
=== Automatic Flight Controls ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|a&lt;br /&gt;
|Toggle APC (Landing Automatic Power Control)&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-d&lt;br /&gt;
|Toggle DLC (Landing Direct Lift Control)&lt;br /&gt;
|-&lt;br /&gt;
|d&lt;br /&gt;
|DLC increase&lt;br /&gt;
|-&lt;br /&gt;
|D&lt;br /&gt;
|DLC decrease&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-t&lt;br /&gt;
|Toggle [http://en.wikipedia.org/wiki/Aircraft_flight_control_systems AFCS] (Defaut Attitude Mode)&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-a&lt;br /&gt;
|Enable AFCS Altitude Mode&lt;br /&gt;
|-&lt;br /&gt;
|*&lt;br /&gt;
|Engage AFCS Altitude Mode&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-h&lt;br /&gt;
|Enable AFCS Heading Mode&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-s&lt;br /&gt;
|Toggle ground spoilers armed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== HSD - radar and RWR ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|h&lt;br /&gt;
|Cycles through HSD modes: radar - compas - ECM (RWR)&lt;br /&gt;
|-&lt;br /&gt;
|E&lt;br /&gt;
|Decrease Radar Range&lt;br /&gt;
|-&lt;br /&gt;
|R&lt;br /&gt;
|Increase Radar Range&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-r&lt;br /&gt;
|Toggles Radar Standby Mode. In standby mode the radar doesn't emit and the &amp;quot;STAND BY&amp;quot; words are displayed on the HSD screen when in TID mode. (FIXME replaced by &amp;quot;q&amp;quot; in git)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Carrier operations ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|O   &lt;br /&gt;
|Lower the hook&lt;br /&gt;
|-&lt;br /&gt;
|o   &lt;br /&gt;
|Raise the hook&lt;br /&gt;
|-&lt;br /&gt;
|L   &lt;br /&gt;
|Engage launch bar&lt;br /&gt;
|-&lt;br /&gt;
|C   &lt;br /&gt;
|Release catapult&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
=== Weapons ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|Ctrl-w&lt;br /&gt;
|Cycle through MasterArm modes.&lt;br /&gt;
|-&lt;br /&gt;
|w&lt;br /&gt;
|Cycle Stick Weapon Mode Selector&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-m&lt;br /&gt;
|Toggle AIM-9 selection&lt;br /&gt;
|-&lt;br /&gt;
|e&lt;br /&gt;
|Trigger M61A1 Vulcan or AIM-9s&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
=== Miscellaneous ===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|c&lt;br /&gt;
|Toggle canopy and access ladder&lt;br /&gt;
|-&lt;br /&gt;
|u&lt;br /&gt;
|Toggle refuelling probe&lt;br /&gt;
|-&lt;br /&gt;
|w&lt;br /&gt;
|Cycle armament selector&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-o&lt;br /&gt;
|Toggle oversweep (on ground only, otherwise sweep is automatic)&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-v&lt;br /&gt;
|Toggle between RIO (Radar Intercept Officer) and pilot view&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Aircraft help ==&lt;br /&gt;
=== On Shore Takeoff ===&lt;br /&gt;
* With wings on over sweep position (parking position) the elevator command is inhibited... just in case...&lt;br /&gt;
* Check air brake in.&lt;br /&gt;
* Fuel level: The Flightgear F-14 has a '''10% fuel''' level and no external load '''at start up'''. This means the aircraft will be very light and have a strong tendency to raise the nose when accelerating on the runway. With less weight on the nose wheel, the nose wheel steering loose its efficiency. If the pilot use afterburners for take off, the loose of nose wheel steering efficiency is increased (afterburners are not necessary for take off). '''Set a suitable fuel level before take off.''' &lt;br /&gt;
* Flaps: Set full flaps.&lt;br /&gt;
* Elevators: The pilot will need to maintain a correct (leveled) attitude using the stick. Push the stick forward to prevent nose pitching up at the beginning of the take off run, release slightly as speed increase, pull smoothly when reaching rotation speed (150kts).&lt;br /&gt;
* Rudder: Currently the FDM use a small rudder rate of move to damp some nasty oscillations when the rudder is not moved enough smoothly. '''If not anticipated''', this delay will cause overshooting the desired rudder effect, then a strong counter action on the rudder will be applied by the pilot on the rudder with again an overshoot... That's a typical  [http://en.wikipedia.org/wiki/Pilot-induced_oscillation pilot-induced oscillation]. To avoid this set a small amount of rudder, wait for the effect, see if it's enough, then add a small amount of rudder again if needed... when doing so the pilot will prefer increasing the power smoothly. Now the aircraft will quickly gain speed while covering the runway and the rudder effect will increase, thus decreasing the needed delay and the amount of pressure on the stick to match the desired effect.&lt;br /&gt;
&lt;br /&gt;
=== Autopilot Operation ===&lt;br /&gt;
* The main mode is '''Attitude Hold Mode''', '''Ctrl-t'''. Other Modes need this main mode activated before being selected. Switching off '''Attitude Mode''' disables all other modes . When in '''Attitude Mode''', the autopilot disengages whenever a certain pressure is put on the stick, and it reengages when the stick is back in the center position . '''Attitude Hold Mode''' will hold pitch attitudes up to plus or minus 30 degrees, and bank angles up to plus or minus 60 degrees. &lt;br /&gt;
* It shall be switched off for aerobatics and inverted flight .&lt;br /&gt;
&lt;br /&gt;
==== Autopilot Altitude Mode ====&lt;br /&gt;
* Once in the Attitude Mode, you can select '''Altitude Mode''' by hitting '''Ctrl-a''', then the '''AP REF''' indicator, (left of the '''VDI''') will illuminate, when at the desired altitude using normal stick control, engage by hitting '''*''', (asterisk) . The autopilot will then maintain your altitude.&lt;br /&gt;
'''CAUTION''' - at high speeds, it is imperative to stabilize your aircraft prior to engaging Altitude Mode !&lt;br /&gt;
&lt;br /&gt;
==== Autopilot Heading Mode ====&lt;br /&gt;
* Once in the Attitude Mode, you can select '''Heading Mode''' by hitting '''Ctrl-h''' . After maneuvering the aircraft into the desired reference heading, release the control stick at a bank angle of less than 5 degrees . The autopilot will then hold the aircraft on the selected heading.&lt;br /&gt;
&lt;br /&gt;
* Autopilot needs '''SAS''' channels to be engaged, which is the default . '''SAS''' Pitch and Roll channels may be disengaged by actuating switches located on the '''AFCS''' ('''Automatic/Analog Flight Control System''') panel .[[File:F-14b-sas-switches.png|thumb|270px|SAS Panel.]]&lt;br /&gt;
&lt;br /&gt;
=== Landing Automatic Power Control, (APC) Operation ===&lt;br /&gt;
* The '''APC''' is a closed loop system that automatically regulates basic engine thrust to maintain the aircraft at an optimum approach angle of attack for landing . &lt;br /&gt;
* Prior to engage '''APC''', gear handle must be down with weight off wheels, and the throttles must be set between 98 percent rpm and 68 percent rpm, (as shown on the panel gauges). &lt;br /&gt;
* Type '''a''' to toggle the '''APC on/off'''. APC is also disengaged by setting the throttles to MIL, (98 percent rpm) or idle, (68 percent rpm) or raising the landing gear handle or when weight on the wheels . &lt;br /&gt;
* When disengaged the '''AUTO THROT''' caution light, (on the left side of the HUD) illuminates for 10 seconds .&lt;br /&gt;
&lt;br /&gt;
=== Landing Direct Lift Control, (DLC) Operation ===&lt;br /&gt;
* During landing approaches, the spoilers and horizontal stabilizers can be controlled simultaneously to provide glidepath correction without changing power setting or angle of attack.&lt;br /&gt;
&lt;br /&gt;
=== Ground Spoilers Operation ===&lt;br /&gt;
* Ground spoilers (that is [http://en.wikipedia.org/wiki/Elevon elevons] used as air-brake ) provide additional drag immediately after the touch down. Before the landing, arm the ground spoilers by hitting '''Ctrl-s''' . After the aircraft hits the runway, pull the throttle to idle, then the spoilers (elevons) get fully deployed.&lt;br /&gt;
&lt;br /&gt;
=== Weapons operation ===&lt;br /&gt;
&lt;br /&gt;
At the moment, only the gun and the AIM-9s are operational, others ordinances are displayed under the wing, their weight is correct but they aren't usable.&lt;br /&gt;
&lt;br /&gt;
You must have the latest F-14B package from [[Git]] for weapons operations.&lt;br /&gt;
&lt;br /&gt;
* '''Gun:''' At startup, the ammunition store is filled with 675 round. It's not possible to refill without quiting FG. To fire the M61A1 Vulcan:&lt;br /&gt;
** Select HUD A/A Mode on the Display panel, on pilot's right console. A multikey shortcut is also available (:AHa). Having the HUD in this mode is not mandatory though there won't be any symbolics available for the gun in other HD modes.&lt;br /&gt;
** Select Gun mode with the Stick Weapon Mode Selector (w). A pipper, the G symbol with a number showing approximately the remaining rounds x 100 and a closure rate scale are displayed in the HUD. The closure rate scale is active only if a target is locked by the radar with TWS AUTO mode (diamond on the HUD).&lt;br /&gt;
** Switch Master Arm on, the X on the G symbol means Master Arm off or in training mode. &lt;br /&gt;
** Press e to fire the gun.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Sidewinders:''' Crudely modeled on AIM-9L available data.&lt;br /&gt;
** Select a weapons set using the menu: Tomcat Controls &amp;gt; Fuel and Stores: &amp;quot;FAD light&amp;quot; has 4 sidewinders, &amp;quot;FAD&amp;quot;, &amp;quot;FAD heavy&amp;quot; and &amp;quot;Bombcat&amp;quot; have 2 of them.&lt;br /&gt;
** Select HUD A/A Mode on the Display panel, on pilot's right console. A multikey shortcut is also available (:AHa).&lt;br /&gt;
** Select SW mode with the Stick Weapon Mode Selector (w).&lt;br /&gt;
** Switch to the back seater's view (Ctrl-v).&lt;br /&gt;
** Select pylons 1 and 8, down position, on the Armament panel, on RIO's right console. A shortcut toggles these two switches so you can select or deselect all AIM-9 in one keyboard stroke (Ctrl-m) without leaving pilot's view.   &lt;br /&gt;
** Switch back to the pilot's view (Ctrl-v).&lt;br /&gt;
** Switch Master Arm on, you ear the search signal of the seeker head, a low volume buzz sound.&lt;br /&gt;
** Now prior to be fired, the AIM-9 must have a lock on a target. For the time being only Multiplayers and AI tankers can be locked. The minimal lock distance is 10 NM, the target must be aproximately inside a 80° cone centered on datum line. When locked, the signal buzz volume becomes louder. For best results try to shoot (e) at a 3 to 6 NM range and with the target centered on the aircraft velocity vector. The missile will explode at the smaller distance possible. However if this distance is above 70 meters, it will continue its trajectory without guidance.&lt;br /&gt;
&lt;br /&gt;
== Pilot's Cockpit ==&lt;br /&gt;
[[File:F-14b-pilots-display-control-panel.jpg|thumb|270px|Pilot's Display Control Panel.]]&lt;br /&gt;
=== Displays Control Panel ===&lt;br /&gt;
* The Display Control Panel is located on the right side of the pilot's main panel, under the Hook lever. The '''3 botom switches''' respectively turn the '''VDI''', '''HUD''' and '''HSD''' displays '''on/off'''. The '''HSD MODE''' switch is also available, it selects '''NAV''' or '''TID''' or '''ECM''' mode. This can also be achieved by cycling through these 3 modes with the &amp;quot;'''h'''&amp;quot; key. (''Note: the '''NAV MODE''' push buttons - '''TO''', '''CRUISE''', '''A/A''', '''A/G''', '''LDG''' - are not operational yet.'')&lt;br /&gt;
** '''VDI: Vertical Display Indicator'''. Shows the aircraft attitude in roll and pitch, with an artifitial horizon and magnetic heading.&lt;br /&gt;
** '''HUD: Head UP Display'''.&lt;br /&gt;
** '''HSD: Horizontal Situation Display'''. HSD shows either:&lt;br /&gt;
*** in '''NAV''' mode: compas with navigation indications,&lt;br /&gt;
*** in '''TID''' mode (Tactical Information Display): an horizontal representation of the tactical situation (that is information provided by the RIO from what he sees in his radar displays).&lt;br /&gt;
*** in '''ECM''' mode: a representation of radar threats around the aircraft.&lt;br /&gt;
&lt;br /&gt;
=== VHF ===&lt;br /&gt;
* Located on the RIO's left console, 3 bands: 30-88 MHz, 108-174 MHz, 225-400 MHz. Modes '''TR''' and '''TR-G''' set '''COMM1'''. Mode '''DF''' sets '''NAV1''', that is '''Direction Finder''' displayed with the single needle in both '''BDHIs''' (Bearing, Distance, Heading Indicator) . You have Comm *or* DF. Storing frequencies (up to 20 channels) '''a - PRESET'''  select the desired channel, '''b - READ''' tune the desired frequency, '''c - LOAD''' stores the frequency in the previously selected channel.&lt;br /&gt;
&lt;br /&gt;
=== UHF ===&lt;br /&gt;
* Located on the pilot's left console, 225-400 Mhz. ADF is not enabled on this radio.&lt;br /&gt;
&lt;br /&gt;
== Related content ==&lt;br /&gt;
=== Related lists ===&lt;br /&gt;
* [[Aircraft]]&lt;br /&gt;
* [[Aircraft Todo]]&lt;br /&gt;
=== Links ===&lt;br /&gt;
* http://en.wikipedia.org/wiki/F-14 - F-14 Tomcat&lt;br /&gt;
* http://www.globalsecurity.org/military/systems/aircraft/f-14.htm - F-14 Tomcat&lt;br /&gt;
* http://www.fas.org/programs/ssp/man/uswpns/air/fighter/f14.html - F-14 Tomcat &lt;br /&gt;
* http://www.anft.net/f-14/f14-specification.htm - Home of M.A.T.S.&lt;br /&gt;
* http://www.navyair.com/LSO_NATOPS_Manual.pdf - NATOPS LANDING SIGNAL OFFICER MANUAL&lt;br /&gt;
&lt;br /&gt;
{{Grumman}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft]]&lt;br /&gt;
[[Category:Aircraft TODO]]&lt;br /&gt;
[[Category:Military aircraft]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Fairchild_Republic_A-10_Thunderbolt_II&amp;diff=26749</id>
		<title>Fairchild Republic A-10 Thunderbolt II</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Fairchild_Republic_A-10_Thunderbolt_II&amp;diff=26749"/>
		<updated>2010-12-18T21:19:21Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* External links */ - removed obsolete external link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{infobox Aircraft&lt;br /&gt;
|image =A-10.jpg&lt;br /&gt;
|caption = The &amp;quot;Warthog&amp;quot;&lt;br /&gt;
|name =A-10 Thunderbolt II&lt;br /&gt;
|type =Military Aircraft&lt;br /&gt;
|authors =Lee Elliott, Alexis Bory&lt;br /&gt;
|fdm =YASim&lt;br /&gt;
|status =Beta&lt;br /&gt;
|fgname =A-10&lt;br /&gt;
|download =http://croo.murgl.org/fgfs/index.html&lt;br /&gt;
}}&lt;br /&gt;
The [[FlightGear]] '''Fairchild A-10 Thunderbolt II''' (aka '''Warthog''') offers a wide variety of features and controls. Special features include the ability to simulate ordnance use, and a detailed 3D textured cockpit. Many of the A-10's flight systems are modeled as well, such as support for [[Tactical Air Navigation]] (TACAN).&lt;br /&gt;
&lt;br /&gt;
==About the aircraft==&lt;br /&gt;
&amp;quot;This is Fairchild-Republic A-10, also named Warthog. It's a U.S. single-seat, twin-engine, very robust jet aircraft designed for ground attack.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== User's Manual ==&lt;br /&gt;
In the current version, the aircraft simulation begins with the aircraft powered down.&lt;br /&gt;
&lt;br /&gt;
The electrical power systems and the [[APU]]'s operation are simulated to a large extent.  [[Howto: Air-Air Refueling|Air to air refueling]] is also implemented.&lt;br /&gt;
&lt;br /&gt;
The navigation instruments are [[TACAN]], [[ILS]] and also a [[VHF]] so you can have homing on a [[VOR]] station.&lt;br /&gt;
&lt;br /&gt;
Several external loads are available and the [[HUD]] provides a [[CCIP]] (Continuous Computed Impact Point). &lt;br /&gt;
&lt;br /&gt;
=== Electrical power with APU starting procedure ===&lt;br /&gt;
[[Image:A-10-electrical-power-control-panel.jpg|thumb|Electrical control panel]]&lt;br /&gt;
At FlightGear startup, both electrical power and [[APU]] are shut down and there is no external power supplied.&lt;br /&gt;
&lt;br /&gt;
Everything is asleep...&lt;br /&gt;
&lt;br /&gt;
You, might see, early on, some needles spinning back on the engines gauges panel and the [[VSI]]... this is only a software initialization artifact.&lt;br /&gt;
&lt;br /&gt;
So, look at the right console, there is a panel with 6 switches, that's the Main Electrical Control Panel. Hit Ctrl-c and you will have a view of where to click...&lt;br /&gt;
&lt;br /&gt;
Let's connect the battery: switch on the battery switch. A few indicators should light up, but not all of them.  Now with the battery connected you can start the [[APU]]. &lt;br /&gt;
&lt;br /&gt;
The [[APU]] start/stop switch is located near the throttle on the left console.  Switch it on.  Now check the [[APU]]'s tachometer and EGT on the engine gauge panel.&lt;br /&gt;
&lt;br /&gt;
If the [[APU]] has started successfuly you should see the EGT (Exhaust Gas Temperature) rapidly climb to 800/900°C and then stabilize when the RPMs reach 60%.&lt;br /&gt;
&lt;br /&gt;
[[Image:A-10-throttle-engine-start.jpg|thumb|Throttle, engines operation and APU panel]]&lt;br /&gt;
&lt;br /&gt;
Now the [[APU]] has sufficient RPMs to provide electrical power through its generator. So let's turn on the [[APU]] generator. This one is on the main electrical control panel, upper left corner of the electrical control panel, right console again.&lt;br /&gt;
&lt;br /&gt;
With the [[APU]] generator powered up most of the instruments receive electrical power and now the [[AOA]] indexer lights up and the [[HSI]] (the compass) and ADI (artificial horizon) look much better.&lt;br /&gt;
&lt;br /&gt;
At 85% RPM the [[APU]] supplies enough bleed air to start the engines.&lt;br /&gt;
&lt;br /&gt;
[[Image:engine-gauges.jpg|thumb|APU running, Engines gauges at stop.]]&lt;br /&gt;
&lt;br /&gt;
=== Engines starting procedure ===&lt;br /&gt;
Now that we have minimum electrical power and bleed air supplied by the APU, starting the engines is straight forward.&lt;br /&gt;
&lt;br /&gt;
Just click on one of the throttle rails (Ctrl-c to see them), the throttle will move from stop to idle and the engine start. Wait for the starting cycle light to turn off, turn on the corresponding generator and repeat with the second engine. &lt;br /&gt;
&lt;br /&gt;
Now the complete electrical circuit is powered and you can stop the APU to save some fuel. It wont be useful anymore. (This could change with future development of engines failures...)&lt;br /&gt;
&lt;br /&gt;
=== Fuel System ===&lt;br /&gt;
FlightGear A-10 starts with all internal tanks full.&lt;br /&gt;
&lt;br /&gt;
2 wing tanks (left and right), 2 fuselage tanks: left main (aft) linked to left system and right main (forward) linked to right system, up to 3 external tanks (2 wings and 1 fuselage).&lt;br /&gt;
&lt;br /&gt;
Normally the left wing and left main tanks feed the left engine and the APU. The right wing and right main tanks feed the right engine. The two feed lines can be interconnected by opening the cross feed valve ('''E''' switch).&lt;br /&gt;
&lt;br /&gt;
The wing boost pumps ('''G''' switch) supply the respective engines until the wing tanks are empty, then the wing boost pumps automatically shut off. The main boost pumps then supply the respective engines with the remainder fuel in main tanks.&lt;br /&gt;
&lt;br /&gt;
In case of a wing tank boost pump failure, the wing tank fuel will gravity feed its respective main tank if the main tank fuel level is below 600 lbs. Check valves prevent reverse fuel flow from the main tanks to the wing tanks.&lt;br /&gt;
&lt;br /&gt;
In case of a main tank boost pump failure, the affected engine will suction-feed from the affected tank for all power setting up to an altitude of nearly 10,000 feet.&lt;br /&gt;
&lt;br /&gt;
Unequal fuel level between left (aft) main and right (forward) main tank (imbalance superior 750 lbs) will cause a longitudinal CG shift that may exceed allowable limits. In this case, opening the valve &amp;quot;tank gate&amp;quot; create a link between the two main tanks.&lt;br /&gt;
&lt;br /&gt;
Fuel from the external tanks is transfered to the wing or main tanks by pressure from the bleed air system. Wing tanks can be topped when the fuel level is below 1590 lbs.&lt;br /&gt;
Main tanks can be topped when the fuel level is below 3034 lbs.&lt;br /&gt;
The cycling is repeated until fuel is depleted from the external wing tanks first, and external fuselage tank secondly.&lt;br /&gt;
&lt;br /&gt;
For negative G flight, collector tanks will supply the engine with sufficient fuel for 10 seconds operation at MAX power.&lt;br /&gt;
&lt;br /&gt;
With fully loaded fuel tanks and a full load of armament, the A-10 is heavy--about 50,000 pounds.  At this weight the plane is quite difficult to fly.  Symptoms you would notice are difficult to take off, difficulty gaining altitude, difficult to maneuver without triggering stall warnings or actual stalls.&lt;br /&gt;
&lt;br /&gt;
To avoid these problems, if you choose to equip the plane with full armament you may wish to fill the tanks only half full or so--the plane becomes much easier to fly and half fuel is still enough for a reasonably long flight.&lt;br /&gt;
&lt;br /&gt;
[[Image:A-10-fuel-control-doc.jpg|thumb|Fuel Control panel.]]&lt;br /&gt;
&lt;br /&gt;
The '''Fuel Control panel''' is located on the forward part of left console. 1 lever, 4 push buttons and 8 switches are functional.&lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;A&amp;lt;/b&amp;gt;) Fill Disable buttons, left and right wings tanks. Here fill disabled (button up showing red stripe). Refuel disabled for the wings tanks.&lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;B&amp;lt;/b&amp;gt;) Fill Disable buttons, left and right main tanks (practically forward and aft fuselage tanks). Here fill enabled (button down hidding red stripe). Refuel enabled for the main tanks.&lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;C&amp;lt;/b&amp;gt;) Refuel Receiver Door lever.&lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;D&amp;lt;/b&amp;gt;) External Tanks switches, Wings and Fuselage. Set to OFF to un-pressurize external tanks&lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;E&amp;lt;/b&amp;gt;) Cross Feed switch, allow any operating boost pump to feed both engines.&lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;F&amp;lt;/b&amp;gt;) Tank Gate switch, open a valve linking the left (aft) and right (forward) main fuel tanks. &lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;G&amp;lt;/b&amp;gt;) . &lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;H&amp;lt;/b&amp;gt;) .&lt;br /&gt;
&lt;br /&gt;
=== HUD ===&lt;br /&gt;
[[Image:A-10-hud-control-panel.jpg|thumb|HUD Control panel]]&lt;br /&gt;
&lt;br /&gt;
The Head Up Display is turned off by default at aircraft startup. To turn it on electrical power on at least one of the three generator is needed as it isn't wired to the battery.&lt;br /&gt;
&lt;br /&gt;
The '''HUD Control panel''' is located on the upper left corner of the main instrument panel. Three knobs are functional.&lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;A&amp;lt;/b&amp;gt;) Mode Selector Switch: OFF, TEST (standard display), NAV (standard display), CCIP (standard display + Countinuous Computed Impact Point), CCRP (standard display), EXP (standard display), STBY (standard display). Actually you will mostly use NAV and CCIP as other modes are not modeled yet. See later in Weapons System about reticles use.&lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;B&amp;lt;/b&amp;gt;) INTEN knob: Adjust the HUD luminosity.&lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;C&amp;lt;/b&amp;gt;) DEPR knob: Changes the vertical position of the primary aiming reticle in the HUD, There is a digital index in the HUD showing its position, range from -1.00 to 1.00 followed by the letter &amp;quot;D&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
'''HUD Symbology:'''&lt;br /&gt;
&lt;br /&gt;
[[Image:A-10-hud-symbology.jpg|thumb|HUD Symbology]]&lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;D&amp;lt;/b&amp;gt;) Pitch ladder.&lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;E&amp;lt;/b&amp;gt;) Indicated Air Speed, Kts.&lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;F&amp;lt;/b&amp;gt;) Primary Aiming Reticle.&lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;G&amp;lt;/b&amp;gt;) Horizon Line&lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;H&amp;lt;/b&amp;gt;) Primary Aiming Reticle Digital index.&lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;I&amp;lt;/b&amp;gt;) Magnetic Heading Tape. &lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;J&amp;lt;/b&amp;gt;) Indicated Altitude in feet (ASL). &lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;K&amp;lt;/b&amp;gt;) Radar Altitude in feet (AGL) followed by letter &amp;quot;R&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;I&amp;lt;/b&amp;gt;) Aircraft Pitch in degrees, boxed.&lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;M&amp;lt;/b&amp;gt;) Total Velocity Vector indicator. &lt;br /&gt;
&lt;br /&gt;
(&amp;lt;b&amp;gt;N&amp;lt;/b&amp;gt;) Pointer showing the rudders deflection. &lt;br /&gt;
&lt;br /&gt;
=== Weapons system ===&lt;br /&gt;
[[Image:A-10-arm-1.jpg|thumb|Armament panel]]&lt;br /&gt;
Be sure to have energy before trying to use the armament panel. The gun's rounds counter (&amp;lt;b&amp;gt;A&amp;lt;/b&amp;gt;) should be lighted in blue and the HUD should be active.&lt;br /&gt;
&lt;br /&gt;
There is actually 2 AIM-9 and the gun.&lt;br /&gt;
&lt;br /&gt;
First of all push up the Master Switch to ARM (&amp;lt;b&amp;gt;B&amp;lt;/b&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
For the gun, push up the Gun Rate Switch to HI (right of the rounds counter). You should have on the left side of the main panel a red light indicating 'Gun Ready'. Press key 'e' on the keyboard to fire the gun.&lt;br /&gt;
&lt;br /&gt;
For AIM-9, turn (&amp;lt;b&amp;gt;C&amp;lt;/b&amp;gt;) the AIM-9 Mode Knob to SEL (click on the right side of the knob). Now a big circle appears on the HUD symbology, that the searching aera of the AIM-9. Now select Pylon #11, you should ear the seeker sound. This sound is audible only when an AIM-9 is available, selected and searching. Press key ',' to fire the AIM-9.&lt;br /&gt;
&lt;br /&gt;
(In Flightgear, the key ',' is usaly used for left brake, in the A-10 a nasal script intercepts the binding for weapons release, this is not a definitive solution).&lt;br /&gt;
&lt;br /&gt;
You can also choose to fly without the AIM-9s ans the ECM pod, press Tab or Ctrl-I on the keyboard to display the config menu.&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
* [http://croo.murgl.org/fgfs/AG-demo/index.html A-10 Ground bombing demo--tanks on a bombing range in Nevada]&lt;br /&gt;
* [http://brenthugh.com/flightgear/Sun_Valley_Tank_Invasion1.zip Several ground bombing scenarios suitable for the A-10, involving moving and static tank formations, explodable M1 Abrams tanks, etc.]&lt;br /&gt;
&lt;br /&gt;
== Related content ==&lt;br /&gt;
=== Related lists ===&lt;br /&gt;
* [[Aircraft]]&lt;br /&gt;
* [[Aircraft Todo]]&lt;br /&gt;
* [[FlightGear 1.0 default aircraft]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft]]&lt;br /&gt;
[[Category:Aircraft TODO]]&lt;br /&gt;
[[Category:Military aircraft]]&lt;br /&gt;
[[Fr:Fairchild A-10]]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Grumman_F-14_Tomcat&amp;diff=26613</id>
		<title>Grumman F-14 Tomcat</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Grumman_F-14_Tomcat&amp;diff=26613"/>
		<updated>2010-12-13T22:44:10Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* HSD - radar and RWR */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{infobox Aircraft&lt;br /&gt;
|image =F-14.jpg&lt;br /&gt;
|name =F-14 Tomcat&lt;br /&gt;
|type =Interceptor/multi-role Fighter aircraft&lt;br /&gt;
|livery =U.S. Navy&lt;br /&gt;
|authors =Enrique Laso, Alexis Bory (cockpit)&lt;br /&gt;
|status =Production&lt;br /&gt;
|fdm =YASim&lt;br /&gt;
|3dcockpit = &amp;amp;radic;&lt;br /&gt;
|carrier = &amp;amp;radic;&lt;br /&gt;
|fgname = f-14b&lt;br /&gt;
}}&lt;br /&gt;
The '''Grumman F-14 Tomcat''' is a supersonic, twin-engine, two-seat, variable geometry wing [[aircraft]]. The F-14 was the United States Navy's primary maritime air superiority fighter, fleet defense interceptor and tactical reconnaissance platform from 1974 to 2006. It later performed precision strike missions once it was integrated with the Low Altitude Navigation and Targeting Infrared for Night [http://en.wikipedia.org/wiki/LANTIRN LANTIRN] system. The F-14 was developed after the collapse of the [http://en.wikipedia.org/wiki/F-111B F-111B] project, and was the first of the American teen-series fighters which were designed incorporating the experience of air combat in Vietnam against MiGs.&lt;br /&gt;
&lt;br /&gt;
It entered service in 1972 with the U.S. Navy, replacing the [[McDonnell F4 Phantom II]]. It was later exported to the former Imperial Iranian Air Force in 1976, during a time when the US still had good relations with Iran. It was retired from the active U.S. Navy fleet on 22 September 2006, having been replaced by the [[F/A-18 Hornet|F/A-18E/F Super Hornet]]. As of 2007, it remains in service only with the Islamic Republic of Iran Air Force.&lt;br /&gt;
&lt;br /&gt;
==Keyboard Controls==&lt;br /&gt;
===Flight Controls===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|Home&lt;br /&gt;
|Increase elevator trim&lt;br /&gt;
|-&lt;br /&gt;
|End&lt;br /&gt;
|Decrease elevator trim&lt;br /&gt;
|-&lt;br /&gt;
|] or f&lt;br /&gt;
|Lower flaps&lt;br /&gt;
|-&lt;br /&gt;
|[ or F&lt;br /&gt;
|Raise flaps&lt;br /&gt;
|-&lt;br /&gt;
|s&lt;br /&gt;
|Increase speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|S&lt;br /&gt;
|Decrease speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-b&lt;br /&gt;
|Toggle speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|k&lt;br /&gt;
|Increase speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|j&lt;br /&gt;
|Decrease speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Image:F-14_cockpit.jpg|thumb|270px|Cockpit of the F-14.]]&lt;br /&gt;
[[File:SunsetF-14.png|270px|thumb|right|A nice scene with the F-14.]]&lt;br /&gt;
&lt;br /&gt;
===Automatic Flight Controls===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|a&lt;br /&gt;
|Toggle APC (Landing Automatic Power Control)&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-d&lt;br /&gt;
|Toggle DLC (Landing Direct Lift Control)&lt;br /&gt;
|-&lt;br /&gt;
|d&lt;br /&gt;
|DLC increase&lt;br /&gt;
|-&lt;br /&gt;
|D&lt;br /&gt;
|DLC decrease&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-t&lt;br /&gt;
|Toggle [http://en.wikipedia.org/wiki/Aircraft_flight_control_systems AFCS] (Defaut Attitude Mode)&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-a&lt;br /&gt;
|Enable AFCS Altitude Mode&lt;br /&gt;
|-&lt;br /&gt;
|*&lt;br /&gt;
|Engage AFCS Altitude Mode&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-h&lt;br /&gt;
|Enable AFCS Heading Mode&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-s&lt;br /&gt;
|Toggle ground spoilers armed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===HSD - radar and RWR===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|h&lt;br /&gt;
|Cycles through HSD modes: radar - compas - ECM (RWR)&lt;br /&gt;
|-&lt;br /&gt;
|E&lt;br /&gt;
|Decrease Radar Range&lt;br /&gt;
|-&lt;br /&gt;
|R&lt;br /&gt;
|Increase Radar Range&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-r&lt;br /&gt;
|Toggles Radar Standby Mode. In standby mode the radar doesn't emit and the &amp;quot;STAND BY&amp;quot; words are displayed on the HSD screen when in TID mode. (FIXME replaced by &amp;quot;q&amp;quot; in git)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Carrier operations===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|O   &lt;br /&gt;
|Lower the hook&lt;br /&gt;
|-&lt;br /&gt;
|o   &lt;br /&gt;
|Raise the hook&lt;br /&gt;
|-&lt;br /&gt;
|L   &lt;br /&gt;
|Engage launch bar&lt;br /&gt;
|-&lt;br /&gt;
|C   &lt;br /&gt;
|Release catapult&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
===Weapons===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|Ctrl-w&lt;br /&gt;
|Cycle through MasterArm modes.&lt;br /&gt;
|-&lt;br /&gt;
|w&lt;br /&gt;
|Cycle Stick Weapon Mode Selector&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-m&lt;br /&gt;
|Toggle AIM-9 selection&lt;br /&gt;
|-&lt;br /&gt;
|e&lt;br /&gt;
|Trigger M61A1 Vulcan or AIM-9s&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
===Miscellaneous===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|c&lt;br /&gt;
|Toggle canopy and access ladder&lt;br /&gt;
|-&lt;br /&gt;
|u&lt;br /&gt;
|Toggle refuelling probe&lt;br /&gt;
|-&lt;br /&gt;
|w&lt;br /&gt;
|Cycle armament selector&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-o&lt;br /&gt;
|Toggle oversweep (on ground only, otherwise sweep is automatic)&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-v&lt;br /&gt;
|Toggle between RIO (Radar Intercept Officer) and pilot view&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Aircraft help==&lt;br /&gt;
===On Shore Takeoff===&lt;br /&gt;
* With wings on over sweep position (parking position) the elevator command is inhibited... just in case...&lt;br /&gt;
* Check air brake in.&lt;br /&gt;
* Fuel level: The Flightgear F-14 has a '''10% fuel''' level and no external load '''at start up'''. This means the aircraft will be very light and have a strong tendency to raise the nose when accelerating on the runway. With less weight on the nose wheel, the nose wheel steering loose its efficiency. If the pilot use afterburners for take off, the loose of nose wheel steering efficiency is increased (afterburners are not necessary for take off). '''Set a suitable fuel level before take off.''' &lt;br /&gt;
* Flaps: Set full flaps.&lt;br /&gt;
* Elevators: The pilot will need to maintain a correct (leveled) attitude using the stick. Push the stick forward to prevent nose pitching up at the beginning of the take off run, release slightly as speed increase, pull smoothly when reaching rotation speed (150kts).&lt;br /&gt;
* Rudder: Currently the FDM use a small rudder rate of move to damp some nasty oscillations when the rudder is not moved enough smoothly. '''If not anticipated''', this delay will cause overshooting the desired rudder effect, then a strong counter action on the rudder will be applied by the pilot on the rudder with again an overshoot... That's a typical  [http://en.wikipedia.org/wiki/Pilot-induced_oscillation pilot-induced oscillation]. To avoid this set a small amount of rudder, wait for the effect, see if it's enough, then add a small amount of rudder again if needed... when doing so the pilot will prefer increasing the power smoothly. Now the aircraft will quickly gain speed while covering the runway and the rudder effect will increase, thus decreasing the needed delay and the amount of pressure on the stick to match the desired effect.&lt;br /&gt;
&lt;br /&gt;
===Autopilot Operation===&lt;br /&gt;
* The main mode is '''Attitude Hold Mode''', '''Ctrl-t'''. Other Modes need this main mode activated before being selected. Switching off '''Attitude Mode''' disables all other modes . When in '''Attitude Mode''', the autopilot disengages whenever a certain pressure is put on the stick, and it reengages when the stick is back in the center position . '''Attitude Hold Mode''' will hold pitch attitudes up to plus or minus 30 degrees, and bank angles up to plus or minus 60 degrees. &lt;br /&gt;
* It shall be switched off for aerobatics and inverted flight .&lt;br /&gt;
&lt;br /&gt;
====Autopilot Altitude Mode====&lt;br /&gt;
* Once in the Attitude Mode, you can select '''Altitude Mode''' by hitting '''Ctrl-a''', then the '''AP REF''' indicator, (left of the '''VDI''') will illuminate, when at the desired altitude using normal stick control, engage by hitting '''*''', (asterisk) . The autopilot will then maintain your altitude.&lt;br /&gt;
'''CAUTION''' - at high speeds, it is imperative to stabilize your aircraft prior to engaging Altitude Mode !&lt;br /&gt;
&lt;br /&gt;
====Autopilot Heading Mode====&lt;br /&gt;
* Once in the Attitude Mode, you can select '''Heading Mode''' by hitting '''Ctrl-h''' . After maneuvering the aircraft into the desired reference heading, release the control stick at a bank angle of less than 5 degrees . The autopilot will then hold the aircraft on the selected heading.&lt;br /&gt;
&lt;br /&gt;
* Autopilot needs '''SAS''' channels to be engaged, which is the default . '''SAS''' Pitch and Roll channels may be disengaged by actuating switches located on the '''AFCS''' ('''Automatic/Analog Flight Control System''') panel .[[Image:F-14b-sas-switches.png|thumb|270px|SAS Panel.]]&lt;br /&gt;
&lt;br /&gt;
===Landing Automatic Power Control, (APC) Operation===&lt;br /&gt;
* The '''APC''' is a closed loop system that automatically regulates basic engine thrust to maintain the aircraft at an optimum approach angle of attack for landing . &lt;br /&gt;
* Prior to engage '''APC''', gear handle must be down with weight off wheels, and the throttles must be set between 98 percent rpm and 68 percent rpm, (as shown on the panel gauges). &lt;br /&gt;
* Type '''a''' to toggle the '''APC on/off'''. APC is also disengaged by setting the throttles to MIL, (98 percent rpm) or idle, (68 percent rpm) or raising the landing gear handle or when weight on the wheels . &lt;br /&gt;
* When disengaged the '''AUTO THROT''' caution light, (on the left side of the HUD) illuminates for 10 seconds .&lt;br /&gt;
&lt;br /&gt;
===Landing Direct Lift Control, (DLC) Operation===&lt;br /&gt;
* During landing approaches, the spoilers and horizontal stabilizers can be controlled simultaneously to provide glidepath correction without changing power setting or angle of attack.&lt;br /&gt;
&lt;br /&gt;
===Ground Spoilers Operation===&lt;br /&gt;
* Ground spoilers (that is [http://en.wikipedia.org/wiki/Elevon elevons] used as air-brake ) provide additional drag immediately after the touch down. Before the landing, arm the ground spoilers by hitting '''Ctrl-s''' . After the aircraft hits the runway, pull the throttle to idle, then the spoilers (elevons) get fully deployed.&lt;br /&gt;
&lt;br /&gt;
===Weapons operation===&lt;br /&gt;
&lt;br /&gt;
At the moment, only the gun and the AIM-9s are operational, others ordinances are displayed under the wing, their weight is correct but they aren't usable.&lt;br /&gt;
&lt;br /&gt;
You must have the latest F-14B package from [[Git]] for weapons operations.&lt;br /&gt;
&lt;br /&gt;
* '''Gun:''' At startup, the ammunition store is filled with 675 round. It's not possible to refill without quiting FG. To fire the M61A1 Vulcan:&lt;br /&gt;
** Select HUD A/A Mode on the Display panel, on pilot's right console. A multikey shortcut is also available (:AHa). Having the HUD in this mode is not mandatory though there won't be any symbolics available for the gun in other HD modes.&lt;br /&gt;
** Select Gun mode with the Stick Weapon Mode Selector (w). A pipper, the G symbol with a number showing approximately the remaining rounds x 100 and a closure rate scale are displayed in the HUD. The closure rate scale is active only if a target is locked by the radar with TWS AUTO mode (diamond on the HUD).&lt;br /&gt;
** Switch Master Arm on, the X on the G symbol means Master Arm off or in training mode. &lt;br /&gt;
** Press e to fire the gun.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Sidewinders:''' Crudely modeled on AIM-9L available data.&lt;br /&gt;
** Select a weapons set using the menu: Tomcat Controls &amp;gt; Fuel and Stores: &amp;quot;FAD light&amp;quot; has 4 sidewinders, &amp;quot;FAD&amp;quot;, &amp;quot;FAD heavy&amp;quot; and &amp;quot;Bombcat&amp;quot; have 2 of them.&lt;br /&gt;
** Select HUD A/A Mode on the Display panel, on pilot's right console. A multikey shortcut is also available (:AHa).&lt;br /&gt;
** Select SW mode with the Stick Weapon Mode Selector (w).&lt;br /&gt;
** Switch to the back seater's view (Ctrl-v).&lt;br /&gt;
** Select pylons 1 and 8, down position, on the Armament panel, on RIO's right console. A shortcut toggles these two switches so you can select or deselect all AIM-9 in one keyboard stroke (Ctrl-m) without leaving pilot's view.   &lt;br /&gt;
** Switch back to the pilot's view (Ctrl-v).&lt;br /&gt;
** Switch Master Arm on, you ear the search signal of the seeker head, a low volume buzz sound.&lt;br /&gt;
** Now prior to be fired, the AIM-9 must have a lock on a target. For the time being only Multiplayers and AI tankers can be locked. The minimal lock distance is 10 NM, the target must be aproximately inside a 80° cone centered on datum line. When locked, the signal buzz volume becomes louder. For best results try to shoot at a 3 to 6 NM range and with the target centered on the aircraft velocity vector. The missile will explode at the smaller distance possible. However if this distance is above 70 meters, it will continue its trajectory without guidance.&lt;br /&gt;
&lt;br /&gt;
==Pilot's Cockpit==&lt;br /&gt;
[[Image:F-14b-pilots-display-control-panel.jpg|thumb|270px|Pilot's Display Control Panel.]]&lt;br /&gt;
===Displays Control Panel===&lt;br /&gt;
* The Display Control Panel is located on the right side of the pilot's main panel, under the Hook lever. The '''3 botom switches''' respectively turn the '''VDI''', '''HUD''' and '''HSD''' displays '''on/off'''. The '''HSD MODE''' switch is also available, it selects '''NAV''' or '''TID''' or '''ECM''' mode. This can also be achieved by cycling through these 3 modes with the &amp;quot;'''h'''&amp;quot; key. (''Note: the '''NAV MODE''' push buttons - '''TO''', '''CRUISE''', '''A/A''', '''A/G''', '''LDG''' - are not operational yet.'')&lt;br /&gt;
** '''VDI: Vertical Display Indicator'''. Shows the aircraft attitude in roll and pitch, with an artifitial horizon and magnetic heading.&lt;br /&gt;
** '''HUD: Head UP Display'''.&lt;br /&gt;
** '''HSD: Horizontal Situation Display'''. HSD shows either:&lt;br /&gt;
***in '''NAV''' mode: compas with navigation indications,&lt;br /&gt;
***in '''TID''' mode (Tactical Information Display): an horizontal representation of the tactical situation (that is informations provided by the RIO from what he sees in his radar displays).&lt;br /&gt;
***in '''ECM''' mode: a representation of radar threats around the aircraft.&lt;br /&gt;
&lt;br /&gt;
===VHF===&lt;br /&gt;
* Located on the RIO's left console, 3 bands: 30-88 MHz, 108-174 MHz, 225-400 MHz. Modes '''TR''' and '''TR-G''' set '''COMM1'''. Mode '''DF''' sets '''NAV1''', that is '''Direction Finder''' displayed with the single needle in both '''BDHIs''' (Bearing, Distance, Heading Indicator) . You have Comm *or* DF. Storing frequencies (up to 20 channels) '''a - PRESET'''  select the desired channel, '''b - READ''' tune the desired frequency, '''c - LOAD''' stores the frequency in the previously selected channel.&lt;br /&gt;
&lt;br /&gt;
===UHF===&lt;br /&gt;
* Located on the pilot's left console, 225-400 Mhz. ADF is not enabled on this radio.&lt;br /&gt;
&lt;br /&gt;
== Related content ==&lt;br /&gt;
=== Related lists ===&lt;br /&gt;
* [[Aircraft]]&lt;br /&gt;
* [[Aircraft Todo]]&lt;br /&gt;
=== Links ===&lt;br /&gt;
* http://en.wikipedia.org/wiki/F-14 - F-14 Tomcat&lt;br /&gt;
* http://www.globalsecurity.org/military/systems/aircraft/f-14.htm - F-14 Tomcat&lt;br /&gt;
* http://www.fas.org/programs/ssp/man/uswpns/air/fighter/f14.html - F-14 Tomcat &lt;br /&gt;
* http://www.anft.net/f-14/f14-specification.htm - Home of M.A.T.S.&lt;br /&gt;
* http://www.navyair.com/LSO_NATOPS_Manual.pdf - NATOPS LANDING SIGNAL OFFICER MANUAL&lt;br /&gt;
&lt;br /&gt;
{{Grumman}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft]]&lt;br /&gt;
[[Category:Aircraft TODO]]&lt;br /&gt;
[[Category:Military aircraft]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Dual_control&amp;diff=23675</id>
		<title>Dual control</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Dual_control&amp;diff=23675"/>
		<updated>2010-08-31T21:12:55Z</updated>

		<summary type="html">&lt;p&gt;Xiii: Replaced CVS by Git (some checks on 2.0 availability are still needed)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Dual Control''' is a system for [[FlightGear]] that adds basic support for shared control of an [[aircraft]] over the FlightGear [[Multiplayer Howto|multiplayer network]].&lt;br /&gt;
&lt;br /&gt;
'''Note:''' [[FlightGear 1.9.0]] or later is needed to use Dual Control.&lt;br /&gt;
&lt;br /&gt;
==Aircraft==&lt;br /&gt;
&lt;br /&gt;
Currently there are a small number of aircraft with dual control support:&lt;br /&gt;
* [[Zeppelin NT]], pilot and copilot (&amp;lt;tt&amp;gt;ZLT-NT&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;ZLT-NT-copilot&amp;lt;/tt&amp;gt;). Available in FlightGear 1.9.0 and later.&lt;br /&gt;
* [[Blackburn Buccaneer]], pilot and systems officer (&amp;lt;tt&amp;gt;buccaneer&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;buccaneer-obs&amp;lt;/tt&amp;gt;). Available in FlightGear 1.9.0 or later.&lt;br /&gt;
* [[Grumman_F-14_Tomcat]], pilot and RIO (&amp;lt;tt&amp;gt;f-14b&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;f-14b-bs&amp;lt;/tt&amp;gt;). Available in FlightGear 2.0 or later.&lt;br /&gt;
* [[Submarine_Scout]], pilot and observer (&amp;lt;tt&amp;gt;Submarine_Scout&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;Submarine_Scout-observer&amp;lt;/tt&amp;gt;). Available in FlightGear/Git.&lt;br /&gt;
* [[Boeing 747-400]], pilot flying and pilot monitoring (&amp;lt;tt&amp;gt;747-400&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;747-400-fo&amp;lt;/tt&amp;gt;). Available in FlightGear/Git.&lt;br /&gt;
* [[Storch|Fieseler Fi 156 Storch]], pilot and passenger (&amp;lt;tt&amp;gt;Fi-156-de&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;Fi-156-passenger&amp;lt;/tt&amp;gt;). Available in FlightGear/Git.&lt;br /&gt;
* [[ASK-13 sailplane|Schleicher ASK-13 glider]], pilot and passenger (&amp;lt;tt&amp;gt;ask13&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;ask13-passenger&amp;lt;/tt&amp;gt;). Available in FlightGear/Git.&lt;br /&gt;
* c172p Skyhawk, pilot and copilot (&amp;lt;tt&amp;gt;c172p-pilot&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;c172p-copilot&amp;lt;/tt&amp;gt;). Based on David Megginson's [[Cessna C172|c172p]] single control aircraft. Available from [http://www.gidenstam.org/FlightGear/DualControl/Aircraft the dual-control aircraft hangar]. The tar.gz archive for the aircraft should be extracted in $FG_ROOT/Aircraft/.&lt;br /&gt;
&lt;br /&gt;
To connect the pilot and copilot selects each other in the Copilot dialog (FlightGear/Git) or set properties as explained in the usage instructions below.&lt;br /&gt;
&lt;br /&gt;
Dual control enables a pilot and copilot to jointly fly the aircraft over the FlightGear multiplayer network. Depending on the aircraft the pilot and copilot have shared control over primary flight controls, throttle, mixture and so on. Exactly which controls are shared varies between the aircraft but usually include elevator trim, flaps, brakes, cockpit switches, the radio stack and some instrument settings. The copilot usually has a subset of the full instrumentation (also depending on the aircraft), usually including airspeed, altimeter, VSI, HSI, turn coordinator, engine RPM and the radio stack. Typically Nav/Comm 1 and the first VOR indicator is best controlled by the pilot, while Nav/Comm 2 and the corresponding VOR indicator is faster for the copilot.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
[[Image:ZLT-NT-dual.jpg]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
''Side-by-side presentation of the Zeppelin NT pilot's (left) and copilot's (right) views.''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Usage instruction==&lt;br /&gt;
The system consists of two &amp;quot;aircraft&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
The pilot uses a special variant of the c172p, &amp;lt;tt&amp;gt;c172p-pilot&amp;lt;/tt&amp;gt;. The pilot needs to specify the callsign of the copilot (other copilots will be ignored).&lt;br /&gt;
For the Zeppelin NT the aircraft names are &amp;lt;tt&amp;gt;ZLT-NT&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;ZLT-NT-copilot&amp;lt;/tt&amp;gt;, respectively.&lt;br /&gt;
&lt;br /&gt;
In the current version the pilot and copilot can select each other in their Co/Pilot selection dialogs available from the &amp;quot;Zeppelin NT/c172p-dual-control&amp;quot;-&amp;gt;&amp;quot;MP-(Co)Pilot&amp;quot; menus.&lt;br /&gt;
&lt;br /&gt;
Alternatively the relevant properties can be set from the command line or via the property browser.&lt;br /&gt;
&lt;br /&gt;
'''Pilot usage example:'''&lt;br /&gt;
 fgfs --aircraft=c172p-pilot --prop:/sim/remote/pilot-callsign=&amp;quot;someone&amp;quot; &lt;br /&gt;
&lt;br /&gt;
The copilot uses a special &amp;quot;aircraft&amp;quot;, c172p-copilot, which piggybacks on the designated pilot and captures the local control inputs. A current limitation is that only the cockpit views are jitter free. There is also a noticeable delay between control inputs and effect, since they are passed via the the multiplayer protocol. The severity of this delay depend on round trip time and some other factors - the delay seems significantly longer than the round trip time itself which is due to buffering in the MP protocol receiver. That said, I have flown successfully as copilot in a setup with 100-120ms round trip time between both pilot and server and copilot and server (total delay &amp;gt;500ms). Landing is a bit exciting in that case, however.&lt;br /&gt;
&lt;br /&gt;
'''Copilot usage example:'''&lt;br /&gt;
 fgfs --aircraft=c172p-copilot --prop:/sim/remote/pilot-callsign=&amp;quot;anybody&amp;quot;&lt;br /&gt;
Note: External views are jitter prone for the copilot.&lt;br /&gt;
&lt;br /&gt;
== Developer information ==&lt;br /&gt;
&lt;br /&gt;
The main part of the Dual Control system is a set of generic [[Nasal scripting language|Nasal]] modules and modified instrument files that form the core of the networked shared control functionality. See the link below for some more information.&lt;br /&gt;
&lt;br /&gt;
==External links==&lt;br /&gt;
&lt;br /&gt;
* [http://www.gidenstam.org/FlightGear/DualControl The main page for the Dual Control system.] Check here for the latest information.&lt;br /&gt;
&lt;br /&gt;
[[Category:FlightGear feature]]&lt;br /&gt;
&lt;br /&gt;
[[es:Control dual]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=FlightGear_Newsletter_August_2010&amp;diff=23667</id>
		<title>FlightGear Newsletter August 2010</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=FlightGear_Newsletter_August_2010&amp;diff=23667"/>
		<updated>2010-08-31T19:33:04Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* In the hangar */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{newsletter}}&lt;br /&gt;
{{TOC_right}}&lt;br /&gt;
''We would like to emphasize that the monthly newsletter can not live without the contributions of FlightGear users and developers. Everyone with a wiki account (free to register) can edit the newsletter and every contribution is welcome.''&lt;br /&gt;
&lt;br /&gt;
==Development news==&lt;br /&gt;
===More realistic textures on mountains===&lt;br /&gt;
Shader-artist Gral picked up a new project, after his forest and grassland improvements. This time he improves the look of our mountains a lot, thanks to some &amp;quot;elevation and slope detecting&amp;quot; shaders. They replace the vegetation with rocks above a certain elevation or on steep faces. Transition between the different terrain types are extremely smooth, especially when compared to the usual landcover-transition (eg. between land and ocean) in FlightGear.&lt;br /&gt;
&lt;br /&gt;
[http://www.flightgear.org/forums/viewtopic.php?f=5&amp;amp;t=9183 The forum] provides you with more information, screenshots and updates.&lt;br /&gt;
&lt;br /&gt;
===Major updates to the AI system===&lt;br /&gt;
This month, FlightGear's AI system has received a major update. Until recently, FlightGear contained two major AI systems, oftentimes leading to much confusion. Although one of the systems had been scheduled for deprecation for a long time, early this month the decision was made to remove this system from FlightGear altogether. The other system, known as the AIModels system, has recently also undergone a major revision. One of the weakest aspects the latter system was that aircraft never performed a reasonable approach, but basically just plummeted out of the skies, only to pretend making a reasonable landing (and usually ending up several miles short of the runway).&lt;br /&gt;
&lt;br /&gt;
The revised code generates much more realistic approach paths, and ensures that arrivals will start almost instantly after program start. In addition, the approach paths are set up in such a way that aircraft will be lined up with 90 seconds of flight time (or more) between them. During the revision, several bugs were solved, resulting in a much more stable AI system. &lt;br /&gt;
&lt;br /&gt;
==In the hangar==&lt;br /&gt;
Several [[aircraft]] that have been around in FlightGear for many years got updates this month. There is a huge number of aircraft in the FlightGear hangar (over 300!), and while new aircraft are always welcome, there are many existing aircraft that would benefit from some spit-and-polish. Creating a completely new aircraft to a high standard represents a monumental amount of work. Those wanting to contribute, but without the time available to create a truly world-class aircraft from scratch might want to consider improving a favourite aircraft from the hangar instead. The effects are more immediate, and you can improve it one piece at a time.&lt;br /&gt;
&lt;br /&gt;
===AC-130 Spectre===&lt;br /&gt;
Jack Mermod has recently begun transforming Emmanuel Barranger's [[Lockheed C-130 Hercules]] into a AC-130 'Spectre' Gunship. The gunship has been released, but will have many more updates to come. &lt;br /&gt;
&lt;br /&gt;
So far, the gunship has been equipped with the following:&lt;br /&gt;
* Two GAU-12 25mm guns&lt;br /&gt;
* One 40mm L/60 Bofors cannon&lt;br /&gt;
* Accurately modeled and functioning flares&lt;br /&gt;
* AN/ALQ-196 jammer and other electronic countermeasures&lt;br /&gt;
* a Battle Management Station, from where weapons can be armed and fired&lt;br /&gt;
* Several screens(in the Battle Management Station) which will display information, radar input, gun camera feeds, and ammunition stats in following releases&lt;br /&gt;
* MANY liveries&lt;br /&gt;
&lt;br /&gt;
You can see the AC-130 topic and download the aircraft [http://www.flightgear.org/forums/viewtopic.php?f=4&amp;amp;t=9074&amp;amp;st=0&amp;amp;sk=t&amp;amp;sd=a&amp;amp;start=75#p92617 here].&lt;br /&gt;
&lt;br /&gt;
[[File:CRJ-900.jpg|thumb|250px|The Bombardier CRJ-900 in [[Blender]].]]&lt;br /&gt;
===Bombardier CRJ-900===&lt;br /&gt;
After working on the [[Airbus A320|A320]], [[User:Skyop|Skyop]] is creating his first aircraft- the [[Bombardier CRJ-900]]- from scratch.  The basic model has been completed- tasks still to do include UV mapping the model, animating its components, and adding in other features to make the CRJ-900 suitable for [[FlightGear 2.0.0]]&lt;br /&gt;
&lt;br /&gt;
===Douglas A-4F Skyhawk===&lt;br /&gt;
On a smaller scale to Hal's improvements to the Mustang, Stuart Buchanan has been making a number of changes to the venerable [[Douglas A-4 Skyhawk|A4-F Skyhawk]], or &amp;quot;Scooter&amp;quot;. Rather than change the existing A-4F Blue Angels model, Stuart has instead modelled a normal Navy A-4F with dual drop-tanks. As well as some minor [[FDM]] tweaking, improvements include a completely new exterior and 3D [[cockpit]], and some more accurate flight control systems including auto-deploying spoilers. The A-4F is an interesting [[Aircraft carrier|carrier]]-based light attack aircraft, designed on the principle of simplicity and lightness by Edward Heinmann. In particular, by making the wings short, they didn't need to be folded for storage on carriers, which meant they didn't need complex wing folds, and hence were lighter and stronger.&lt;br /&gt;
&lt;br /&gt;
[[File:b29s-bombs.jpg|thumb|250px|B-29s dropping their load.]]&lt;br /&gt;
[[File:B-29-bomb-impact.jpg|thumb|250px|Ash plumes rise up from the bombed spot.]]&lt;br /&gt;
===B-29 Superfortress===&lt;br /&gt;
Coming soon. There is a major refurbishment of the Submodel code in the pipeline which will resurect and, hopefully, speed up some old facilities.&lt;br /&gt;
&lt;br /&gt;
The M47-A2 incendiary bombs have been linked to the wildfire system, and generate multiple fires.  Unfortunately, at present the hit on framerate is huge. So this might well not make Git. A cut-down version might be feasible.  It remains the case that the submodels are not visible over MP.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font size=4&amp;gt;STOP PRESS&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It's in GIT now! The formation is now a 4-ship diamond. The M47-A2 and the M-17 bombs both create wildfires on impact. BEWARE, the wildfires may cause an unacceptable framerate drop after a while, and FG may eventually crash. If you disable Wildfires in the dropdown menu at some point before this happens, you will get most, but not all, of the framerate back.&lt;br /&gt;
&lt;br /&gt;
===Eurofighter Typhoon===&lt;br /&gt;
Some pretty major work has been accomplished on the [[Eurofighter Typhoon|Typhoon]] by almursi - some fiddly FDM work has now made it actually behave like one of the most agile fighters in the world, its performance envelope is now roughly equivalent to its real-world counterpart, and a good deal of the missing textures have been added. Algernon has accomplished some rather more minor work, with authentic scale navigation lights added and strobes and beacon in development along with a custom electrical system to power them. Whilst there is still a lot to do, including the flight control system which prevents the aircraft from performing beyond the pilots physical limits - how about 14g turns?! - the feedback on the latest release has been really positive. Try it yourself and post some feedback in the [http://www.flightgear.org/forums/viewtopic.php?f=4&amp;amp;t=1460&amp;amp;start=90|Eurofighter Typhoon thread] on the Aircraft Development board.&lt;br /&gt;
&lt;br /&gt;
===Fokker 100===&lt;br /&gt;
Another aircraft that has been updated recently is the [[Fokker 100]]. It now has a 3D cockpit and a rudimentary equipment failure control system, as well as a much-improved FDM and Autopilot. At the moment, the Equipment Failure System can only cause engine fires and flap failure. Several new liveries have been made as well. Authors who contributed to this latest phase in development include (in no particular order) Erik Hofman, Thomas Ito-Haigh, Gary Neely, and Skyop.&lt;br /&gt;
&lt;br /&gt;
===Helijah Hangar updates===&lt;br /&gt;
Helijah updates his hangar with new aircraft (mostly WW2) very regulary and pushes them to Git. This month's list includes:&lt;br /&gt;
{| class=&amp;quot;vatop&amp;quot;&lt;br /&gt;
|width=&amp;quot;200&amp;quot; |&lt;br /&gt;
* BV-170&lt;br /&gt;
* B-35 Peacemaker&lt;br /&gt;
* CA-12&lt;br /&gt;
* Me 209V1&lt;br /&gt;
|width=&amp;quot;200&amp;quot; |&lt;br /&gt;
* Me P.1101&lt;br /&gt;
* Breguet 19&lt;br /&gt;
* Caudron GIII&lt;br /&gt;
* Caudron GIV&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===North American P-51D Mustang===&lt;br /&gt;
Hal V. Engel has made some massive improvements to the [[P-51D Mustang|P51-D]]. Using NACA (the pre-cursor to NASA) published data, he's produced a very impressive [[JSBSim]] FDM. He's also made a number of improvements to the 3D cockpit and the engine systems. Those who enjoy their WWII warbirds will be very interested indeed. Your correspondent has still to manage a take-off from the runway without at least one bounce, but can report that the landing characteristics, while not benign, are at least manageable. This is an aircraft that will really repay some effort on the part of the pilot to get to know, and almost certainly represents the most accurate warbird FDM we have available.&lt;br /&gt;
&lt;br /&gt;
===AIM-9 Sidewinders on the F-14B Tomcat===&lt;br /&gt;
&lt;br /&gt;
Guided missiles are now available for the [[Grumman F-14 Tomcat|Grumman F-14B Tomcat]] in Git. At the moment, only AIM-9s are functional.&lt;br /&gt;
They lock on the nearest MP or AI target, like in the SEAM mode (Sidewinder Expanded Acquisition Mode) and they follow a constant angle trajectory. When used with Bombable script they have a quite certain effect on the Zeros. When used against an MP aircraft, you will only see the missile explosion and a message with the hit range can be displayed trough MP. The author, Xiii, would like to add this feature to the A-10 and maybe the f16 which both use the same nasal framework. But it may take a long-long time. (And don't forget to read the f-14b README.help prior to use the Sidewinders!)&lt;br /&gt;
&lt;br /&gt;
== Scenery corner ==&lt;br /&gt;
===Animated jetways finalized===&lt;br /&gt;
An exciting new feature comes to FlightGear with the completion of [[User:Skyop|Skyop's]] [[Howto: Animated jetways|animated jetway system]]. The first airport to implement it is none other than KLAS. [[Howto: Animated jetways#Usage|A slight fix]] is required to see the jetways.&lt;br /&gt;
&lt;br /&gt;
To use the system, taxi to an animated jetway and park your aircraft with your nosegear on the &amp;quot;T&amp;quot; at the end of the marking line. Click the jetway, and if your aircraft has the appropriate values in its &amp;lt;tt&amp;gt;-set.xml&amp;lt;/tt&amp;gt; file, the jetway will extend and raise/lower itself to your door! Updated &amp;lt;tt&amp;gt;-set.xml&amp;lt;/tt&amp;gt; files for the [[Boeing 737-300]], [[Boeing 747-400]], and [[Boeing 777-200ER]] can be downloaded from [http://www.flightgear.org/forums/viewtopic.php?t=8728&amp;amp;start=90#p91826 this post] of the development thread.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, there are still a few unresolved issues with the jetways. The biggest being that they currently cannot operate independently.&lt;br /&gt;
&lt;br /&gt;
[[File:KLAS.jpg|thumb|right|250px|A Southwest Airlines [[Boeing 737-300]] parked at Concourse B at KLAS. Concourse C is visible in the background.]]&lt;br /&gt;
===Las Vegas McCarran International Airport===&lt;br /&gt;
[[User:Skyop|Skyop]] has modeled Concourse A, Concourse B, Concourse C, and the Charter International Terminal at Las Vegas McCarran International Airport (KLAS). Unfortunately, the new Concourse D could not be modeled as there was no [[GPL]]-compatible satellite imagery available. You can obtain the new terminals via [[TerraSync]].&lt;br /&gt;
&lt;br /&gt;
===Reno International Airport===&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; size=&amp;quot;5&amp;quot;&amp;gt;??&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Wiki updates ==&lt;br /&gt;
===Aerial refueling articles===&lt;br /&gt;
The [[Howto: Aerial refueling|aerial refueling howto]] has been updated and slightly cleaned up, to increase its readability. In addition to that, a developers howto has been written, to provide an easy to understand article on [[Howto: Implement aerial refueling capability|how to implement aerial capability]] on aircraft.&lt;br /&gt;
&lt;br /&gt;
[[Image:Anaglyphic2.jpg|thumb|250px|Red-Green Anaglyph OSG Render in action.]]&lt;br /&gt;
===Anaglyph: FlightGear in 3D===&lt;br /&gt;
We all know that certain cinemas show certain movies in 3D. Most of the time the spectators wear those weird looking pairs of Red-Green or Red-Cyan glasses. These glasses divide the two (colored) layers on the screen between our two eyes; thus creating the effect of 3D. Since the switch to [[OSG]], FlightGear is able to generate such images as well!&lt;br /&gt;
&lt;br /&gt;
[[Anaglyph (3D)|This new wiki article]] explains how to obtain or create a oar of 3D-glasses and how to configure FlightGear.&lt;br /&gt;
&lt;br /&gt;
===How do I commit changes to Git on Windows?===&lt;br /&gt;
Three months after our big move to [[Git]], there finally is a tutorial on how to commit changes to Git on a Windows based computer! This allows every FlightGear user/developer to get their edits up in the official FlightGear repository. Let's hope that this will stimulate more people to start developing and sharing their work with the rest of the world.&lt;br /&gt;
&lt;br /&gt;
Read the article at [[FlightGear Git on Windows#Commiting changes]].&lt;br /&gt;
&lt;br /&gt;
===Nasal articles===&lt;br /&gt;
In the aftermath of a [http://www.flightgear.org/forums/viewtopic.php?f=30&amp;amp;t=8995 forum topic], work has been started on expanding the number of [[Nasal]] related articles at the wiki. These articles should help (new) developers to understand the scripting language and eventually write their own scripts.&lt;br /&gt;
&lt;br /&gt;
All Nasal articles are collected in a [[:Category:Nasal|special category]]. More articles are welcome, as always, so feel free to share your Nasal knowledge!&lt;br /&gt;
&lt;br /&gt;
===What kind of bindings are there?===&lt;br /&gt;
FlightGear supports a large range of [[bindings]], which are actions that happen on clicking certain objects/menus. For example, when you click the gear lever in the [[Boeing 777]], a binding actually &amp;quot;transmits&amp;quot; the command to the gear. Another example that is widely used is an autopilot rotary knob (eg. for setting the heading). When you click these knobs with your mouse, bindings define what properties are changed and with what steps.&lt;br /&gt;
&lt;br /&gt;
Work has began on collecting all those bindings in a single document. Check out [[Bindings|the list]]!&lt;br /&gt;
&lt;br /&gt;
== Community news ==&lt;br /&gt;
=== FlightGear on YouTube ===&lt;br /&gt;
* A [http://www.youtube.com/watch?v=-1pI8bIOxYA wonderful example] of the possibilities and power of FlightGear, in which FlightGear is connected to some avionics equipment (including flight displays and EICAS).&lt;br /&gt;
* Chances are big that you never saw anything like what is done in [http://www.youtube.com/watch?v=ISiia1syhTM this video], before. These people connected a radio controller vehicle to their computer and visualized its movements with FlightGear's [[jeep]].&lt;br /&gt;
* Our home-director, Oscar, uploaded a [http://www.youtube.com/watch?v=a-40ocTyVGY nice video] summarising the KLM fleet in FlightGear.&lt;br /&gt;
* In case you have missed it, a [http://www.dailymotion.com/video/x5i0i0_brest_videogames video showing photorealistic scenery] in Brest.&lt;br /&gt;
* Despite the bad graphics (clouds and smoke), this [http://www.youtube.com/watch?v=t90qRgczJ-o Red Bull Air Race video] shows once again what an enormous range of different things one can do in FlightGear. A [http://www.youtube.com/watch?v=oQQDL7jaScQ second video] was uploaded as well.&lt;br /&gt;
* A new flightgear promo has been uploaded by 'TheMasterofmod'. This [http://www.youtube.com/watch?v=gwFJcu5I4is Promotional Video] focus' on Military Operations and the extensive possibilities with military craft in Flightgear.&lt;br /&gt;
&lt;br /&gt;
[http://www.youtube.com/watch?v=XkeApfVUnVk&amp;amp;feature=PlayList&amp;amp;p=3B31CCD15245D0AA&amp;amp;playnext_from=PL&amp;amp;index=0&amp;amp;playnext=1 Watch the FlightGear PlayList] for a collection of all (somewhat) quality FlightGear videos ever uploaded to YouTube.&lt;br /&gt;
&lt;br /&gt;
=== New way to contact mpserver maintainers===&lt;br /&gt;
After multiple complaints from the community about the difficulty to get in contact with FlightGear [[Howto: Multiplayer|multiplayer]] server maintainers, a mailingsystem is being set up. So far, only mpserver10 is known to be correctly set up for the new system.&lt;br /&gt;
&lt;br /&gt;
You can contact the maintainer of server10 via admin@mpserver10.flightgear.org. Other servers are expected to be set up soon.&lt;br /&gt;
&lt;br /&gt;
=== Relaunch of TransGear Airways ===&lt;br /&gt;
This month saw the first event of the resurrected [[TransGear Airways]]. The event was planned by Lukosius and Redneck. Redneck and Jomo provided [[air traffic control]] services. The event was well received and attended by registered TGA pilots and other unregistered pilots as well. Details are available on the [http://transgear.treborlogic.com official site]. The September event will be the first event scheduled using Yourgod's scheduling software which will allow pilots to plan their own routes within the event.&lt;br /&gt;
&lt;br /&gt;
=== Update on FlightProSim ===&lt;br /&gt;
Thanks in part to ''jackmermod'', the FlightGear community now has [http://flightgear.org/forums/viewtopic.php?f=3&amp;amp;t=8225&amp;amp;start=45#p90830 access] to the source code of the much-discussed [[FlightProSim]], which will allow for a better and more thorough investigation of the simulator. Browsing through the source directory structure has so far given promising results, but compiling the program itself has been problematic.&lt;br /&gt;
&lt;br /&gt;
==And finally==&lt;br /&gt;
=== Contributing ===&lt;br /&gt;
One of the regular thoughts expressed on the FlightGear forums is &amp;quot;I'd like to contribute but I don't know how to program, and I don't have the time&amp;quot;. Unfortunately, there is a common mis-conception that contributing requires programming and lots of free time. In fact, there are a huge range of ways to contribute to the project without needing to write code or spending days working on something. &lt;br /&gt;
&lt;br /&gt;
For ideas on starting to contribute to FlightGear, you may want to check out: [[Volunteer]].&lt;br /&gt;
&lt;br /&gt;
=== Reminder: Google's Summer of Code 2011 ===&lt;br /&gt;
We would like to remind all readers that the FlightGear project is planning to participate in [[GSoC]] 2011. However, doing that really requires a fair amount of work, planning and organizing. This is not something that can be done by a single person. It really needs a coordinated team effort, or otherwise FlightGear won't be able to apply/participate at all.&lt;br /&gt;
&lt;br /&gt;
So all users are invited to help us progress further with our preparations for GSoC 2011. If you have any questions or other feedback, please use the forum to [http://flightgear.org/forums/viewforum.php?f=38 get in touch].&lt;br /&gt;
&lt;br /&gt;
[[Category:FlightGear Newsletter|2010 08]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=FlightGear_Newsletter_August_2010&amp;diff=23666</id>
		<title>FlightGear Newsletter August 2010</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=FlightGear_Newsletter_August_2010&amp;diff=23666"/>
		<updated>2010-08-31T19:27:20Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* AIM-9 Sidewinders on the F-14B Tomcat */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{newsletter}}&lt;br /&gt;
{{TOC_right}}&lt;br /&gt;
''We would like to emphasize that the monthly newsletter can not live without the contributions of FlightGear users and developers. Everyone with a wiki account (free to register) can edit the newsletter and every contribution is welcome.''&lt;br /&gt;
&lt;br /&gt;
==Development news==&lt;br /&gt;
===More realistic textures on mountains===&lt;br /&gt;
Shader-artist Gral picked up a new project, after his forest and grassland improvements. This time he improves the look of our mountains a lot, thanks to some &amp;quot;elevation and slope detecting&amp;quot; shaders. They replace the vegetation with rocks above a certain elevation or on steep faces. Transition between the different terrain types are extremely smooth, especially when compared to the usual landcover-transition (eg. between land and ocean) in FlightGear.&lt;br /&gt;
&lt;br /&gt;
[http://www.flightgear.org/forums/viewtopic.php?f=5&amp;amp;t=9183 The forum] provides you with more information, screenshots and updates.&lt;br /&gt;
&lt;br /&gt;
===Major updates to the AI system===&lt;br /&gt;
This month, FlightGear's AI system has received a major update. Until recently, FlightGear contained two major AI systems, oftentimes leading to much confusion. Although one of the systems had been scheduled for deprecation for a long time, early this month the decision was made to remove this system from FlightGear altogether. The other system, known as the AIModels system, has recently also undergone a major revision. One of the weakest aspects the latter system was that aircraft never performed a reasonable approach, but basically just plummeted out of the skies, only to pretend making a reasonable landing (and usually ending up several miles short of the runway).&lt;br /&gt;
&lt;br /&gt;
The revised code generates much more realistic approach paths, and ensures that arrivals will start almost instantly after program start. In addition, the approach paths are set up in such a way that aircraft will be lined up with 90 seconds of flight time (or more) between them. During the revision, several bugs were solved, resulting in a much more stable AI system. &lt;br /&gt;
&lt;br /&gt;
==In the hangar==&lt;br /&gt;
Several [[aircraft]] that have been around in FlightGear for many years got updates this month. There is a huge number of aircraft in the FlightGear hangar (over 300!), and while new aircraft are always welcome, there are many existing aircraft that would benefit from some spit-and-polish. Creating a completely new aircraft to a high standard represents a monumental amount of work. Those wanting to contribute, but without the time available to create a truly world-class aircraft from scratch might want to consider improving a favourite aircraft from the hangar instead. The effects are more immediate, and you can improve it one piece at a time.&lt;br /&gt;
&lt;br /&gt;
===AC-130 Spectre===&lt;br /&gt;
Jack Mermod has recently begun transforming Emmanuel Barranger's [[Lockheed C-130 Hercules]] into a AC-130 'Spectre' Gunship. The gunship has been released, but will have many more updates to come. &lt;br /&gt;
&lt;br /&gt;
So far, the gunship has been equipped with the following:&lt;br /&gt;
* Two GAU-12 25mm guns&lt;br /&gt;
* One 40mm L/60 Bofors cannon&lt;br /&gt;
* Accurately modeled and functioning flares&lt;br /&gt;
* AN/ALQ-196 jammer and other electronic countermeasures&lt;br /&gt;
* a Battle Management Station, from where weapons can be armed and fired&lt;br /&gt;
* Several screens(in the Battle Management Station) which will display information, radar input, gun camera feeds, and ammunition stats in following releases&lt;br /&gt;
* MANY liveries&lt;br /&gt;
&lt;br /&gt;
You can see the AC-130 topic and download the aircraft [http://www.flightgear.org/forums/viewtopic.php?f=4&amp;amp;t=9074&amp;amp;st=0&amp;amp;sk=t&amp;amp;sd=a&amp;amp;start=75#p92617 here].&lt;br /&gt;
&lt;br /&gt;
[[File:CRJ-900.jpg|thumb|250px|The Bombardier CRJ-900 in [[Blender]].]]&lt;br /&gt;
===Bombardier CRJ-900===&lt;br /&gt;
After working on the [[Airbus A320|A320]], [[User:Skyop|Skyop]] is creating his first aircraft- the [[Bombardier CRJ-900]]- from scratch.  The basic model has been completed- tasks still to do include UV mapping the model, animating its components, and adding in other features to make the CRJ-900 suitable for [[FlightGear 2.0.0]]&lt;br /&gt;
&lt;br /&gt;
===Douglas A-4F Skyhawk===&lt;br /&gt;
On a smaller scale to Hal's improvements to the Mustang, Stuart Buchanan has been making a number of changes to the venerable [[Douglas A-4 Skyhawk|A4-F Skyhawk]], or &amp;quot;Scooter&amp;quot;. Rather than change the existing A-4F Blue Angels model, Stuart has instead modelled a normal Navy A-4F with dual drop-tanks. As well as some minor [[FDM]] tweaking, improvements include a completely new exterior and 3D [[cockpit]], and some more accurate flight control systems including auto-deploying spoilers. The A-4F is an interesting [[Aircraft carrier|carrier]]-based light attack aircraft, designed on the principle of simplicity and lightness by Edward Heinmann. In particular, by making the wings short, they didn't need to be folded for storage on carriers, which meant they didn't need complex wing folds, and hence were lighter and stronger.&lt;br /&gt;
&lt;br /&gt;
[[File:b29s-bombs.jpg|thumb|250px|B-29s dropping their load.]]&lt;br /&gt;
[[File:B-29-bomb-impact.jpg|thumb|250px|Ash plumes rise up from the bombed spot.]]&lt;br /&gt;
===B-29 Superfortress===&lt;br /&gt;
Coming soon. There is a major refurbishment of the Submodel code in the pipeline which will resurect and, hopefully, speed up some old facilities.&lt;br /&gt;
&lt;br /&gt;
The M47-A2 incendiary bombs have been linked to the wildfire system, and generate multiple fires.  Unfortunately, at present the hit on framerate is huge. So this might well not make Git. A cut-down version might be feasible.  It remains the case that the submodels are not visible over MP.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font size=4&amp;gt;STOP PRESS&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It's in GIT now! The formation is now a 4-ship diamond. The M47-A2 and the M-17 bombs both create wildfires on impact. BEWARE, the wildfires may cause an unacceptable framerate drop after a while, and FG may eventually crash. If you disable Wildfires in the dropdown menu at some point before this happens, you will get most, but not all, of the framerate back.&lt;br /&gt;
&lt;br /&gt;
===Eurofighter Typhoon===&lt;br /&gt;
Some pretty major work has been accomplished on the [[Eurofighter Typhoon|Typhoon]] by almursi - some fiddly FDM work has now made it actually behave like one of the most agile fighters in the world, its performance envelope is now roughly equivalent to its real-world counterpart, and a good deal of the missing textures have been added. Algernon has accomplished some rather more minor work, with authentic scale navigation lights added and strobes and beacon in development along with a custom electrical system to power them. Whilst there is still a lot to do, including the flight control system which prevents the aircraft from performing beyond the pilots physical limits - how about 14g turns?! - the feedback on the latest release has been really positive. Try it yourself and post some feedback in the [http://www.flightgear.org/forums/viewtopic.php?f=4&amp;amp;t=1460&amp;amp;start=90|Eurofighter Typhoon thread] on the Aircraft Development board.&lt;br /&gt;
&lt;br /&gt;
===Fokker 100===&lt;br /&gt;
Another aircraft that has been updated recently is the [[Fokker 100]]. It now has a 3D cockpit and a rudimentary equipment failure control system, as well as a much-improved FDM and Autopilot. At the moment, the Equipment Failure System can only cause engine fires and flap failure. Several new liveries have been made as well. Authors who contributed to this latest phase in development include (in no particular order) Erik Hofman, Thomas Ito-Haigh, Gary Neely, and Skyop.&lt;br /&gt;
&lt;br /&gt;
===Helijah Hangar updates===&lt;br /&gt;
Helijah updates his hangar with new aircraft (mostly WW2) very regulary and pushes them to Git. This month's list includes:&lt;br /&gt;
{| class=&amp;quot;vatop&amp;quot;&lt;br /&gt;
|width=&amp;quot;200&amp;quot; |&lt;br /&gt;
* BV-170&lt;br /&gt;
* B-35 Peacemaker&lt;br /&gt;
* CA-12&lt;br /&gt;
* Me 209V1&lt;br /&gt;
|width=&amp;quot;200&amp;quot; |&lt;br /&gt;
* Me P.1101&lt;br /&gt;
* Breguet 19&lt;br /&gt;
* Caudron GIII&lt;br /&gt;
* Caudron GIV&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===North American P-51D Mustang===&lt;br /&gt;
Hal V. Engel has made some massive improvements to the [[P-51D Mustang|P51-D]]. Using NACA (the pre-cursor to NASA) published data, he's produced a very impressive [[JSBSim]] FDM. He's also made a number of improvements to the 3D cockpit and the engine systems. Those who enjoy their WWII warbirds will be very interested indeed. Your correspondent has still to manage a take-off from the runway without at least one bounce, but can report that the landing characteristics, while not benign, are at least manageable. This is an aircraft that will really repay some effort on the part of the pilot to get to know, and almost certainly represents the most accurate warbird FDM we have available.&lt;br /&gt;
&lt;br /&gt;
===AIM-9 Sidewinders on the F-14B Tomcat===&lt;br /&gt;
&lt;br /&gt;
Guided missiles are now available for the Tomcat in Git. At the moment, only AIM-9s are functional.&lt;br /&gt;
They lock on the nearest MP or AI target, like in the SEAM mode (Sidewinder Expanded Acquisition Mode) and they follow a constant angle trajectory. When used with Bombable script they have a quite certain effect on the Zeros. When used against an MP aircraft, you will only see the missile explosion and a message with the hit range can be displayed trough MP. The author, Xiii, would like to add this feature to the A-10 and maybe the f16 which both use the same nasal framework. But it may take a long-long time. (And don't forget to read the f-14b README.help prior to use the Sidewinders!)&lt;br /&gt;
&lt;br /&gt;
== Scenery corner ==&lt;br /&gt;
===Animated jetways finalized===&lt;br /&gt;
An exciting new feature comes to FlightGear with the completion of [[User:Skyop|Skyop's]] [[Howto: Animated jetways|animated jetway system]]. The first airport to implement it is none other than KLAS. [[Howto: Animated jetways#Usage|A slight fix]] is required to see the jetways.&lt;br /&gt;
&lt;br /&gt;
To use the system, taxi to an animated jetway and park your aircraft with your nosegear on the &amp;quot;T&amp;quot; at the end of the marking line. Click the jetway, and if your aircraft has the appropriate values in its &amp;lt;tt&amp;gt;-set.xml&amp;lt;/tt&amp;gt; file, the jetway will extend and raise/lower itself to your door! Updated &amp;lt;tt&amp;gt;-set.xml&amp;lt;/tt&amp;gt; files for the [[Boeing 737-300]], [[Boeing 747-400]], and [[Boeing 777-200ER]] can be downloaded from [http://www.flightgear.org/forums/viewtopic.php?t=8728&amp;amp;start=90#p91826 this post] of the development thread.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, there are still a few unresolved issues with the jetways. The biggest being that they currently cannot operate independently.&lt;br /&gt;
&lt;br /&gt;
[[File:KLAS.jpg|thumb|right|250px|A Southwest Airlines [[Boeing 737-300]] parked at Concourse B at KLAS. Concourse C is visible in the background.]]&lt;br /&gt;
===Las Vegas McCarran International Airport===&lt;br /&gt;
[[User:Skyop|Skyop]] has modeled Concourse A, Concourse B, Concourse C, and the Charter International Terminal at Las Vegas McCarran International Airport (KLAS). Unfortunately, the new Concourse D could not be modeled as there was no [[GPL]]-compatible satellite imagery available. You can obtain the new terminals via [[TerraSync]].&lt;br /&gt;
&lt;br /&gt;
===Reno International Airport===&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; size=&amp;quot;5&amp;quot;&amp;gt;??&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Wiki updates ==&lt;br /&gt;
===Aerial refueling articles===&lt;br /&gt;
The [[Howto: Aerial refueling|aerial refueling howto]] has been updated and slightly cleaned up, to increase its readability. In addition to that, a developers howto has been written, to provide an easy to understand article on [[Howto: Implement aerial refueling capability|how to implement aerial capability]] on aircraft.&lt;br /&gt;
&lt;br /&gt;
[[Image:Anaglyphic2.jpg|thumb|250px|Red-Green Anaglyph OSG Render in action.]]&lt;br /&gt;
===Anaglyph: FlightGear in 3D===&lt;br /&gt;
We all know that certain cinemas show certain movies in 3D. Most of the time the spectators wear those weird looking pairs of Red-Green or Red-Cyan glasses. These glasses divide the two (colored) layers on the screen between our two eyes; thus creating the effect of 3D. Since the switch to [[OSG]], FlightGear is able to generate such images as well!&lt;br /&gt;
&lt;br /&gt;
[[Anaglyph (3D)|This new wiki article]] explains how to obtain or create a oar of 3D-glasses and how to configure FlightGear.&lt;br /&gt;
&lt;br /&gt;
===How do I commit changes to Git on Windows?===&lt;br /&gt;
Three months after our big move to [[Git]], there finally is a tutorial on how to commit changes to Git on a Windows based computer! This allows every FlightGear user/developer to get their edits up in the official FlightGear repository. Let's hope that this will stimulate more people to start developing and sharing their work with the rest of the world.&lt;br /&gt;
&lt;br /&gt;
Read the article at [[FlightGear Git on Windows#Commiting changes]].&lt;br /&gt;
&lt;br /&gt;
===Nasal articles===&lt;br /&gt;
In the aftermath of a [http://www.flightgear.org/forums/viewtopic.php?f=30&amp;amp;t=8995 forum topic], work has been started on expanding the number of [[Nasal]] related articles at the wiki. These articles should help (new) developers to understand the scripting language and eventually write their own scripts.&lt;br /&gt;
&lt;br /&gt;
All Nasal articles are collected in a [[:Category:Nasal|special category]]. More articles are welcome, as always, so feel free to share your Nasal knowledge!&lt;br /&gt;
&lt;br /&gt;
===What kind of bindings are there?===&lt;br /&gt;
FlightGear supports a large range of [[bindings]], which are actions that happen on clicking certain objects/menus. For example, when you click the gear lever in the [[Boeing 777]], a binding actually &amp;quot;transmits&amp;quot; the command to the gear. Another example that is widely used is an autopilot rotary knob (eg. for setting the heading). When you click these knobs with your mouse, bindings define what properties are changed and with what steps.&lt;br /&gt;
&lt;br /&gt;
Work has began on collecting all those bindings in a single document. Check out [[Bindings|the list]]!&lt;br /&gt;
&lt;br /&gt;
== Community news ==&lt;br /&gt;
=== FlightGear on YouTube ===&lt;br /&gt;
* A [http://www.youtube.com/watch?v=-1pI8bIOxYA wonderful example] of the possibilities and power of FlightGear, in which FlightGear is connected to some avionics equipment (including flight displays and EICAS).&lt;br /&gt;
* Chances are big that you never saw anything like what is done in [http://www.youtube.com/watch?v=ISiia1syhTM this video], before. These people connected a radio controller vehicle to their computer and visualized its movements with FlightGear's [[jeep]].&lt;br /&gt;
* Our home-director, Oscar, uploaded a [http://www.youtube.com/watch?v=a-40ocTyVGY nice video] summarising the KLM fleet in FlightGear.&lt;br /&gt;
* In case you have missed it, a [http://www.dailymotion.com/video/x5i0i0_brest_videogames video showing photorealistic scenery] in Brest.&lt;br /&gt;
* Despite the bad graphics (clouds and smoke), this [http://www.youtube.com/watch?v=t90qRgczJ-o Red Bull Air Race video] shows once again what an enormous range of different things one can do in FlightGear. A [http://www.youtube.com/watch?v=oQQDL7jaScQ second video] was uploaded as well.&lt;br /&gt;
* A new flightgear promo has been uploaded by 'TheMasterofmod'. This [http://www.youtube.com/watch?v=gwFJcu5I4is Promotional Video] focus' on Military Operations and the extensive possibilities with military craft in Flightgear.&lt;br /&gt;
&lt;br /&gt;
[http://www.youtube.com/watch?v=XkeApfVUnVk&amp;amp;feature=PlayList&amp;amp;p=3B31CCD15245D0AA&amp;amp;playnext_from=PL&amp;amp;index=0&amp;amp;playnext=1 Watch the FlightGear PlayList] for a collection of all (somewhat) quality FlightGear videos ever uploaded to YouTube.&lt;br /&gt;
&lt;br /&gt;
=== New way to contact mpserver maintainers===&lt;br /&gt;
After multiple complaints from the community about the difficulty to get in contact with FlightGear [[Howto: Multiplayer|multiplayer]] server maintainers, a mailingsystem is being set up. So far, only mpserver10 is known to be correctly set up for the new system.&lt;br /&gt;
&lt;br /&gt;
You can contact the maintainer of server10 via admin@mpserver10.flightgear.org. Other servers are expected to be set up soon.&lt;br /&gt;
&lt;br /&gt;
=== Relaunch of TransGear Airways ===&lt;br /&gt;
This month saw the first event of the resurrected [[TransGear Airways]]. The event was planned by Lukosius and Redneck. Redneck and Jomo provided [[air traffic control]] services. The event was well received and attended by registered TGA pilots and other unregistered pilots as well. Details are available on the [http://transgear.treborlogic.com official site]. The September event will be the first event scheduled using Yourgod's scheduling software which will allow pilots to plan their own routes within the event.&lt;br /&gt;
&lt;br /&gt;
=== Update on FlightProSim ===&lt;br /&gt;
Thanks in part to ''jackmermod'', the FlightGear community now has [http://flightgear.org/forums/viewtopic.php?f=3&amp;amp;t=8225&amp;amp;start=45#p90830 access] to the source code of the much-discussed [[FlightProSim]], which will allow for a better and more thorough investigation of the simulator. Browsing through the source directory structure has so far given promising results, but compiling the program itself has been problematic.&lt;br /&gt;
&lt;br /&gt;
==And finally==&lt;br /&gt;
=== Contributing ===&lt;br /&gt;
One of the regular thoughts expressed on the FlightGear forums is &amp;quot;I'd like to contribute but I don't know how to program, and I don't have the time&amp;quot;. Unfortunately, there is a common mis-conception that contributing requires programming and lots of free time. In fact, there are a huge range of ways to contribute to the project without needing to write code or spending days working on something. &lt;br /&gt;
&lt;br /&gt;
For ideas on starting to contribute to FlightGear, you may want to check out: [[Volunteer]].&lt;br /&gt;
&lt;br /&gt;
=== Reminder: Google's Summer of Code 2011 ===&lt;br /&gt;
We would like to remind all readers that the FlightGear project is planning to participate in [[GSoC]] 2011. However, doing that really requires a fair amount of work, planning and organizing. This is not something that can be done by a single person. It really needs a coordinated team effort, or otherwise FlightGear won't be able to apply/participate at all.&lt;br /&gt;
&lt;br /&gt;
So all users are invited to help us progress further with our preparations for GSoC 2011. If you have any questions or other feedback, please use the forum to [http://flightgear.org/forums/viewforum.php?f=38 get in touch].&lt;br /&gt;
&lt;br /&gt;
[[Category:FlightGear Newsletter|2010 08]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=FlightGear_Newsletter_August_2010&amp;diff=23665</id>
		<title>FlightGear Newsletter August 2010</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=FlightGear_Newsletter_August_2010&amp;diff=23665"/>
		<updated>2010-08-31T19:23:38Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* In the hangar */  F-14B AIM-9 missiles&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{newsletter}}&lt;br /&gt;
{{TOC_right}}&lt;br /&gt;
''We would like to emphasize that the monthly newsletter can not live without the contributions of FlightGear users and developers. Everyone with a wiki account (free to register) can edit the newsletter and every contribution is welcome.''&lt;br /&gt;
&lt;br /&gt;
==Development news==&lt;br /&gt;
===More realistic textures on mountains===&lt;br /&gt;
Shader-artist Gral picked up a new project, after his forest and grassland improvements. This time he improves the look of our mountains a lot, thanks to some &amp;quot;elevation and slope detecting&amp;quot; shaders. They replace the vegetation with rocks above a certain elevation or on steep faces. Transition between the different terrain types are extremely smooth, especially when compared to the usual landcover-transition (eg. between land and ocean) in FlightGear.&lt;br /&gt;
&lt;br /&gt;
[http://www.flightgear.org/forums/viewtopic.php?f=5&amp;amp;t=9183 The forum] provides you with more information, screenshots and updates.&lt;br /&gt;
&lt;br /&gt;
===Major updates to the AI system===&lt;br /&gt;
This month, FlightGear's AI system has received a major update. Until recently, FlightGear contained two major AI systems, oftentimes leading to much confusion. Although one of the systems had been scheduled for deprecation for a long time, early this month the decision was made to remove this system from FlightGear altogether. The other system, known as the AIModels system, has recently also undergone a major revision. One of the weakest aspects the latter system was that aircraft never performed a reasonable approach, but basically just plummeted out of the skies, only to pretend making a reasonable landing (and usually ending up several miles short of the runway).&lt;br /&gt;
&lt;br /&gt;
The revised code generates much more realistic approach paths, and ensures that arrivals will start almost instantly after program start. In addition, the approach paths are set up in such a way that aircraft will be lined up with 90 seconds of flight time (or more) between them. During the revision, several bugs were solved, resulting in a much more stable AI system. &lt;br /&gt;
&lt;br /&gt;
==In the hangar==&lt;br /&gt;
Several [[aircraft]] that have been around in FlightGear for many years got updates this month. There is a huge number of aircraft in the FlightGear hangar (over 300!), and while new aircraft are always welcome, there are many existing aircraft that would benefit from some spit-and-polish. Creating a completely new aircraft to a high standard represents a monumental amount of work. Those wanting to contribute, but without the time available to create a truly world-class aircraft from scratch might want to consider improving a favourite aircraft from the hangar instead. The effects are more immediate, and you can improve it one piece at a time.&lt;br /&gt;
&lt;br /&gt;
===AC-130 Spectre===&lt;br /&gt;
Jack Mermod has recently begun transforming Emmanuel Barranger's [[Lockheed C-130 Hercules]] into a AC-130 'Spectre' Gunship. The gunship has been released, but will have many more updates to come. &lt;br /&gt;
&lt;br /&gt;
So far, the gunship has been equipped with the following:&lt;br /&gt;
* Two GAU-12 25mm guns&lt;br /&gt;
* One 40mm L/60 Bofors cannon&lt;br /&gt;
* Accurately modeled and functioning flares&lt;br /&gt;
* AN/ALQ-196 jammer and other electronic countermeasures&lt;br /&gt;
* a Battle Management Station, from where weapons can be armed and fired&lt;br /&gt;
* Several screens(in the Battle Management Station) which will display information, radar input, gun camera feeds, and ammunition stats in following releases&lt;br /&gt;
* MANY liveries&lt;br /&gt;
&lt;br /&gt;
You can see the AC-130 topic and download the aircraft [http://www.flightgear.org/forums/viewtopic.php?f=4&amp;amp;t=9074&amp;amp;st=0&amp;amp;sk=t&amp;amp;sd=a&amp;amp;start=75#p92617 here].&lt;br /&gt;
&lt;br /&gt;
[[File:CRJ-900.jpg|thumb|250px|The Bombardier CRJ-900 in [[Blender]].]]&lt;br /&gt;
===Bombardier CRJ-900===&lt;br /&gt;
After working on the [[Airbus A320|A320]], [[User:Skyop|Skyop]] is creating his first aircraft- the [[Bombardier CRJ-900]]- from scratch.  The basic model has been completed- tasks still to do include UV mapping the model, animating its components, and adding in other features to make the CRJ-900 suitable for [[FlightGear 2.0.0]]&lt;br /&gt;
&lt;br /&gt;
===Douglas A-4F Skyhawk===&lt;br /&gt;
On a smaller scale to Hal's improvements to the Mustang, Stuart Buchanan has been making a number of changes to the venerable [[Douglas A-4 Skyhawk|A4-F Skyhawk]], or &amp;quot;Scooter&amp;quot;. Rather than change the existing A-4F Blue Angels model, Stuart has instead modelled a normal Navy A-4F with dual drop-tanks. As well as some minor [[FDM]] tweaking, improvements include a completely new exterior and 3D [[cockpit]], and some more accurate flight control systems including auto-deploying spoilers. The A-4F is an interesting [[Aircraft carrier|carrier]]-based light attack aircraft, designed on the principle of simplicity and lightness by Edward Heinmann. In particular, by making the wings short, they didn't need to be folded for storage on carriers, which meant they didn't need complex wing folds, and hence were lighter and stronger.&lt;br /&gt;
&lt;br /&gt;
[[File:b29s-bombs.jpg|thumb|250px|B-29s dropping their load.]]&lt;br /&gt;
[[File:B-29-bomb-impact.jpg|thumb|250px|Ash plumes rise up from the bombed spot.]]&lt;br /&gt;
===B-29 Superfortress===&lt;br /&gt;
Coming soon. There is a major refurbishment of the Submodel code in the pipeline which will resurect and, hopefully, speed up some old facilities.&lt;br /&gt;
&lt;br /&gt;
The M47-A2 incendiary bombs have been linked to the wildfire system, and generate multiple fires.  Unfortunately, at present the hit on framerate is huge. So this might well not make Git. A cut-down version might be feasible.  It remains the case that the submodels are not visible over MP.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font size=4&amp;gt;STOP PRESS&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It's in GIT now! The formation is now a 4-ship diamond. The M47-A2 and the M-17 bombs both create wildfires on impact. BEWARE, the wildfires may cause an unacceptable framerate drop after a while, and FG may eventually crash. If you disable Wildfires in the dropdown menu at some point before this happens, you will get most, but not all, of the framerate back.&lt;br /&gt;
&lt;br /&gt;
===Eurofighter Typhoon===&lt;br /&gt;
Some pretty major work has been accomplished on the [[Eurofighter Typhoon|Typhoon]] by almursi - some fiddly FDM work has now made it actually behave like one of the most agile fighters in the world, its performance envelope is now roughly equivalent to its real-world counterpart, and a good deal of the missing textures have been added. Algernon has accomplished some rather more minor work, with authentic scale navigation lights added and strobes and beacon in development along with a custom electrical system to power them. Whilst there is still a lot to do, including the flight control system which prevents the aircraft from performing beyond the pilots physical limits - how about 14g turns?! - the feedback on the latest release has been really positive. Try it yourself and post some feedback in the [http://www.flightgear.org/forums/viewtopic.php?f=4&amp;amp;t=1460&amp;amp;start=90|Eurofighter Typhoon thread] on the Aircraft Development board.&lt;br /&gt;
&lt;br /&gt;
===Fokker 100===&lt;br /&gt;
Another aircraft that has been updated recently is the [[Fokker 100]]. It now has a 3D cockpit and a rudimentary equipment failure control system, as well as a much-improved FDM and Autopilot. At the moment, the Equipment Failure System can only cause engine fires and flap failure. Several new liveries have been made as well. Authors who contributed to this latest phase in development include (in no particular order) Erik Hofman, Thomas Ito-Haigh, Gary Neely, and Skyop.&lt;br /&gt;
&lt;br /&gt;
===Helijah Hangar updates===&lt;br /&gt;
Helijah updates his hangar with new aircraft (mostly WW2) very regulary and pushes them to Git. This month's list includes:&lt;br /&gt;
{| class=&amp;quot;vatop&amp;quot;&lt;br /&gt;
|width=&amp;quot;200&amp;quot; |&lt;br /&gt;
* BV-170&lt;br /&gt;
* B-35 Peacemaker&lt;br /&gt;
* CA-12&lt;br /&gt;
* Me 209V1&lt;br /&gt;
|width=&amp;quot;200&amp;quot; |&lt;br /&gt;
* Me P.1101&lt;br /&gt;
* Breguet 19&lt;br /&gt;
* Caudron GIII&lt;br /&gt;
* Caudron GIV&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===North American P-51D Mustang===&lt;br /&gt;
Hal V. Engel has made some massive improvements to the [[P-51D Mustang|P51-D]]. Using NACA (the pre-cursor to NASA) published data, he's produced a very impressive [[JSBSim]] FDM. He's also made a number of improvements to the 3D cockpit and the engine systems. Those who enjoy their WWII warbirds will be very interested indeed. Your correspondent has still to manage a take-off from the runway without at least one bounce, but can report that the landing characteristics, while not benign, are at least manageable. This is an aircraft that will really repay some effort on the part of the pilot to get to know, and almost certainly represents the most accurate warbird FDM we have available.&lt;br /&gt;
&lt;br /&gt;
===AIM-9 Sidewinders on the F-14B Tomcat===&lt;br /&gt;
&lt;br /&gt;
Guided missiles are now available for the Tomcat in Git. At the moment, only AIM-9s are fonctionnal.&lt;br /&gt;
They lock on the nearest MP or AI target, like in the SEAM mode (Sidewinder Expanded Acquisition Mode) and they follow a constant angle trajectory. When used with Bombable script they have a quite certain effect on the Zeros. When used against an MP aircraft, you will only see the missile explosion and a message whith the hit range can be displayed trough MP. The author, Xiii, would like to add this feature to the A-10 and maybe the f16 which both use the same nasal framework. But it may take a long-long time. (And don't forget to read the f-14b README.help prior to use the Sidewinders!)&lt;br /&gt;
&lt;br /&gt;
== Scenery corner ==&lt;br /&gt;
===Animated jetways finalized===&lt;br /&gt;
An exciting new feature comes to FlightGear with the completion of [[User:Skyop|Skyop's]] [[Howto: Animated jetways|animated jetway system]]. The first airport to implement it is none other than KLAS. [[Howto: Animated jetways#Usage|A slight fix]] is required to see the jetways.&lt;br /&gt;
&lt;br /&gt;
To use the system, taxi to an animated jetway and park your aircraft with your nosegear on the &amp;quot;T&amp;quot; at the end of the marking line. Click the jetway, and if your aircraft has the appropriate values in its &amp;lt;tt&amp;gt;-set.xml&amp;lt;/tt&amp;gt; file, the jetway will extend and raise/lower itself to your door! Updated &amp;lt;tt&amp;gt;-set.xml&amp;lt;/tt&amp;gt; files for the [[Boeing 737-300]], [[Boeing 747-400]], and [[Boeing 777-200ER]] can be downloaded from [http://www.flightgear.org/forums/viewtopic.php?t=8728&amp;amp;start=90#p91826 this post] of the development thread.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, there are still a few unresolved issues with the jetways. The biggest being that they currently cannot operate independently.&lt;br /&gt;
&lt;br /&gt;
[[File:KLAS.jpg|thumb|right|250px|A Southwest Airlines [[Boeing 737-300]] parked at Concourse B at KLAS. Concourse C is visible in the background.]]&lt;br /&gt;
===Las Vegas McCarran International Airport===&lt;br /&gt;
[[User:Skyop|Skyop]] has modeled Concourse A, Concourse B, Concourse C, and the Charter International Terminal at Las Vegas McCarran International Airport (KLAS). Unfortunately, the new Concourse D could not be modeled as there was no [[GPL]]-compatible satellite imagery available. You can obtain the new terminals via [[TerraSync]].&lt;br /&gt;
&lt;br /&gt;
===Reno International Airport===&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; size=&amp;quot;5&amp;quot;&amp;gt;??&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Wiki updates ==&lt;br /&gt;
===Aerial refueling articles===&lt;br /&gt;
The [[Howto: Aerial refueling|aerial refueling howto]] has been updated and slightly cleaned up, to increase its readability. In addition to that, a developers howto has been written, to provide an easy to understand article on [[Howto: Implement aerial refueling capability|how to implement aerial capability]] on aircraft.&lt;br /&gt;
&lt;br /&gt;
[[Image:Anaglyphic2.jpg|thumb|250px|Red-Green Anaglyph OSG Render in action.]]&lt;br /&gt;
===Anaglyph: FlightGear in 3D===&lt;br /&gt;
We all know that certain cinemas show certain movies in 3D. Most of the time the spectators wear those weird looking pairs of Red-Green or Red-Cyan glasses. These glasses divide the two (colored) layers on the screen between our two eyes; thus creating the effect of 3D. Since the switch to [[OSG]], FlightGear is able to generate such images as well!&lt;br /&gt;
&lt;br /&gt;
[[Anaglyph (3D)|This new wiki article]] explains how to obtain or create a oar of 3D-glasses and how to configure FlightGear.&lt;br /&gt;
&lt;br /&gt;
===How do I commit changes to Git on Windows?===&lt;br /&gt;
Three months after our big move to [[Git]], there finally is a tutorial on how to commit changes to Git on a Windows based computer! This allows every FlightGear user/developer to get their edits up in the official FlightGear repository. Let's hope that this will stimulate more people to start developing and sharing their work with the rest of the world.&lt;br /&gt;
&lt;br /&gt;
Read the article at [[FlightGear Git on Windows#Commiting changes]].&lt;br /&gt;
&lt;br /&gt;
===Nasal articles===&lt;br /&gt;
In the aftermath of a [http://www.flightgear.org/forums/viewtopic.php?f=30&amp;amp;t=8995 forum topic], work has been started on expanding the number of [[Nasal]] related articles at the wiki. These articles should help (new) developers to understand the scripting language and eventually write their own scripts.&lt;br /&gt;
&lt;br /&gt;
All Nasal articles are collected in a [[:Category:Nasal|special category]]. More articles are welcome, as always, so feel free to share your Nasal knowledge!&lt;br /&gt;
&lt;br /&gt;
===What kind of bindings are there?===&lt;br /&gt;
FlightGear supports a large range of [[bindings]], which are actions that happen on clicking certain objects/menus. For example, when you click the gear lever in the [[Boeing 777]], a binding actually &amp;quot;transmits&amp;quot; the command to the gear. Another example that is widely used is an autopilot rotary knob (eg. for setting the heading). When you click these knobs with your mouse, bindings define what properties are changed and with what steps.&lt;br /&gt;
&lt;br /&gt;
Work has began on collecting all those bindings in a single document. Check out [[Bindings|the list]]!&lt;br /&gt;
&lt;br /&gt;
== Community news ==&lt;br /&gt;
=== FlightGear on YouTube ===&lt;br /&gt;
* A [http://www.youtube.com/watch?v=-1pI8bIOxYA wonderful example] of the possibilities and power of FlightGear, in which FlightGear is connected to some avionics equipment (including flight displays and EICAS).&lt;br /&gt;
* Chances are big that you never saw anything like what is done in [http://www.youtube.com/watch?v=ISiia1syhTM this video], before. These people connected a radio controller vehicle to their computer and visualized its movements with FlightGear's [[jeep]].&lt;br /&gt;
* Our home-director, Oscar, uploaded a [http://www.youtube.com/watch?v=a-40ocTyVGY nice video] summarising the KLM fleet in FlightGear.&lt;br /&gt;
* In case you have missed it, a [http://www.dailymotion.com/video/x5i0i0_brest_videogames video showing photorealistic scenery] in Brest.&lt;br /&gt;
* Despite the bad graphics (clouds and smoke), this [http://www.youtube.com/watch?v=t90qRgczJ-o Red Bull Air Race video] shows once again what an enormous range of different things one can do in FlightGear. A [http://www.youtube.com/watch?v=oQQDL7jaScQ second video] was uploaded as well.&lt;br /&gt;
* A new flightgear promo has been uploaded by 'TheMasterofmod'. This [http://www.youtube.com/watch?v=gwFJcu5I4is Promotional Video] focus' on Military Operations and the extensive possibilities with military craft in Flightgear.&lt;br /&gt;
&lt;br /&gt;
[http://www.youtube.com/watch?v=XkeApfVUnVk&amp;amp;feature=PlayList&amp;amp;p=3B31CCD15245D0AA&amp;amp;playnext_from=PL&amp;amp;index=0&amp;amp;playnext=1 Watch the FlightGear PlayList] for a collection of all (somewhat) quality FlightGear videos ever uploaded to YouTube.&lt;br /&gt;
&lt;br /&gt;
=== New way to contact mpserver maintainers===&lt;br /&gt;
After multiple complaints from the community about the difficulty to get in contact with FlightGear [[Howto: Multiplayer|multiplayer]] server maintainers, a mailingsystem is being set up. So far, only mpserver10 is known to be correctly set up for the new system.&lt;br /&gt;
&lt;br /&gt;
You can contact the maintainer of server10 via admin@mpserver10.flightgear.org. Other servers are expected to be set up soon.&lt;br /&gt;
&lt;br /&gt;
=== Relaunch of TransGear Airways ===&lt;br /&gt;
This month saw the first event of the resurrected [[TransGear Airways]]. The event was planned by Lukosius and Redneck. Redneck and Jomo provided [[air traffic control]] services. The event was well received and attended by registered TGA pilots and other unregistered pilots as well. Details are available on the [http://transgear.treborlogic.com official site]. The September event will be the first event scheduled using Yourgod's scheduling software which will allow pilots to plan their own routes within the event.&lt;br /&gt;
&lt;br /&gt;
=== Update on FlightProSim ===&lt;br /&gt;
Thanks in part to ''jackmermod'', the FlightGear community now has [http://flightgear.org/forums/viewtopic.php?f=3&amp;amp;t=8225&amp;amp;start=45#p90830 access] to the source code of the much-discussed [[FlightProSim]], which will allow for a better and more thorough investigation of the simulator. Browsing through the source directory structure has so far given promising results, but compiling the program itself has been problematic.&lt;br /&gt;
&lt;br /&gt;
==And finally==&lt;br /&gt;
=== Contributing ===&lt;br /&gt;
One of the regular thoughts expressed on the FlightGear forums is &amp;quot;I'd like to contribute but I don't know how to program, and I don't have the time&amp;quot;. Unfortunately, there is a common mis-conception that contributing requires programming and lots of free time. In fact, there are a huge range of ways to contribute to the project without needing to write code or spending days working on something. &lt;br /&gt;
&lt;br /&gt;
For ideas on starting to contribute to FlightGear, you may want to check out: [[Volunteer]].&lt;br /&gt;
&lt;br /&gt;
=== Reminder: Google's Summer of Code 2011 ===&lt;br /&gt;
We would like to remind all readers that the FlightGear project is planning to participate in [[GSoC]] 2011. However, doing that really requires a fair amount of work, planning and organizing. This is not something that can be done by a single person. It really needs a coordinated team effort, or otherwise FlightGear won't be able to apply/participate at all.&lt;br /&gt;
&lt;br /&gt;
So all users are invited to help us progress further with our preparations for GSoC 2011. If you have any questions or other feedback, please use the forum to [http://flightgear.org/forums/viewforum.php?f=38 get in touch].&lt;br /&gt;
&lt;br /&gt;
[[Category:FlightGear Newsletter|2010 08]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Fr/Accueil&amp;diff=22417</id>
		<title>Fr/Accueil</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Fr/Accueil&amp;diff=22417"/>
		<updated>2010-06-19T17:43:51Z</updated>

		<summary type="html">&lt;p&gt;Xiii: cosmetics&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;!--------------------------------Banner across top of page------------------------------&amp;gt;&lt;br /&gt;
{| style=&amp;quot;width:100%; background:#efefef; margin-top:1.2em; border:1px solid #d9e2e2;&amp;quot;&lt;br /&gt;
|style=&amp;quot;width:100%; color:#000&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-------------&amp;quot;Welcome to FlightGear&amp;quot; and article count----------&amp;gt;&lt;br /&gt;
{| style=&amp;quot;width:100%; border:solid 0px; background:none;&amp;quot;&lt;br /&gt;
|style=&amp;quot;width:100%; text-align:center; white-space:nowrap; color:#000;&amp;quot;|&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:162%; border:none; margin:0; padding:.1em; color:#000;&amp;quot;&amp;gt;Bienvenue sur le Wiki de FlightGear !&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;articlecount&amp;quot; style=&amp;quot;width:100%; text-align:center; font-size:85%;&amp;quot;&amp;gt;nous en sommes actuellement à [[Special:Statistics|{{NUMBEROFARTICLES}}]] articles&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:de.gif|link=:de:Hauptseite]]&lt;br /&gt;
[[file:en.gif|link=:en:Main Page]]&lt;br /&gt;
[[file:es.gif|link=:es:Portada]]&lt;br /&gt;
[[file:fi.gif|link=:fi:Etusivu]]&lt;br /&gt;
[[file:fr.gif|link=:fr:Accueil]]&lt;br /&gt;
[[file:nl.gif|link=:nl:Hoofdpagina]]&lt;br /&gt;
[[file:pl.gif|link=:pl:Strona główna]]&lt;br /&gt;
[[file:pt.gif|link=:pt:Página principal]]&lt;br /&gt;
[[file:zh.gif|link=:zh:Main Page]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--------------Portal list on righthand side----------&amp;gt;&lt;br /&gt;
|style=&amp;quot;width:11%; font-size:95%; color:#000;&amp;quot;|&lt;br /&gt;
|}&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
[[----------Strapline immediately below banner----------&amp;gt;&lt;br /&gt;
{|style=&amp;quot;width:100%; background:none; margin:-.8em 0 -.7em 0;&amp;quot;&lt;br /&gt;
|style=&amp;quot;font-size:95%; padding:10px 0; margin:0px; text-align:left; white-space:nowrap; color:#000;&amp;quot;| [[Help:Tutorial|Modifier]]&amp;amp;nbsp;'''·''' [[Help:Contents|Aide]]&lt;br /&gt;
|style=&amp;quot;font-size:95%; padding:10px 0; margin:0px; text-align: right; white-space:nowrap; color:#000;&amp;quot;| [[Special:Allpages|Toutes les pages]]&amp;amp;nbsp;'''·''' [[Special:Search|Chercher&lt;br /&gt;
]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;border-spacing:8px; margin:0px -8px;&amp;quot;&lt;br /&gt;
|class=&amp;quot;MainPageBG&amp;quot; style=&amp;quot;width:100%; border:1px solid #d9e2e2; background:#efefef; vertical-align:top; color:#000;&amp;quot;|&lt;br /&gt;
{|width=&amp;quot;100%&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top; background:#efefef;&amp;quot;&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;FlightGear Flight Simulator&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
[[Image:FGlogo.jpg|left]] '''[[FlightGear]] Flight Simulator''' est un simulateur de vol open-source sophistiqué et fonctionnel, créé et maintenu entièrement par des volontaires. Le code source complet est accessible par [[Git]], sous une licence libre [[GNU General Public License]]. La  [[FlightGear 1.9.1|version 1.9.1]] de FlightGear date du 25 janvier 2009.&lt;br /&gt;
&lt;br /&gt;
Le projet [[FlightGear]] propose un environnement de développement de simulateur de vol sophistiqué, pour une utilisation académique ou a des fins de recherche, il permet le développement d'autres idées intéressantes en simulation de vol, et est aussi accessible à l'utilisateur lambda. Toute personne intéressée peut [[Volunteer|contribuer]] à l'ajout de fonctionnalités ou à l'amélioration de FlightGear. Il existe de plus de nombreux [[FlightGear related projects|projets connexes]] ([http://www.flightgear.org/links.html projects]).&lt;br /&gt;
&lt;br /&gt;
FlightGear est doté d'une documentation illustrée, parmi laquelle &amp;quot;Le Manuel&amp;quot;, disponible en [http://mapserver.flightgear.org/getstart.pdf PDF] et [http://www.flightgear.org/Docs/getstart/getstart.html HTML]. Ce Wiki à été lancé en 2006, et couvre actuellement une bonne partie des sujets liés à FlightGear. La fonctionnalité multi-langue est plus récente (été 2009) et pour le moment seulement une petite partie est traduite.&lt;br /&gt;
&lt;br /&gt;
'''Veuillez sélectionner un portail :'''&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;background:none;&amp;quot;&lt;br /&gt;
|style=&amp;quot;font-size:95%; padding-left:10px; padding-right:20px; margin:0px; vertical-align: top; text-align:left; white-space:nowrap; color:#000;&amp;quot;| &lt;br /&gt;
* [[Portal:Developer|Développeur]]&lt;br /&gt;
** [[Portal:Developer/3D Modelers|Modélisation 3D]]&lt;br /&gt;
** [[Portal:Developer/Aircraft|Aéronef]]&lt;br /&gt;
** [[Portal:Developer/Scenery|Paysage]]&lt;br /&gt;
|style=&amp;quot;font-size:95%; padding-left:20px; margin:0px; vertical-align: top; text-align: left; border-left: 2px solid #d9e2e2; white-space:nowrap; color:#000;&amp;quot;| &lt;br /&gt;
* [[fr/Portal:Utilisateur|Utilisateur]]&lt;br /&gt;
* [[Portal:Pilot|Pilote]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== '''Si vous êtes nouveau ici, jetez un oeil sur le [[Help:Contents|manuel]] avant de créer ou d'éditer un article!''' =====&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!---------------------------Today's featured article, Did you know------------------------&amp;gt;&lt;br /&gt;
{|style=&amp;quot;border-spacing:8px; margin:0px -8px;&amp;quot;&lt;br /&gt;
|class=&amp;quot;MainPageBG&amp;quot; style=&amp;quot;width:50%; border:1px solid #d9e2e2; background:#efefef; vertical-align:top; color:#000;&amp;quot;|&lt;br /&gt;
{|width=&amp;quot;100%&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top; background:#efefef;&amp;quot;&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Pour commencer&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
* [[:fr:Foire aux questions|FAQ]]&lt;br /&gt;
* [[:fr:Howto: Débarrassez-vous des erreurs les plus fréquentes|Messages d'erreur communs]]&lt;br /&gt;
* [[:fr:Howto: Multijoueur|Multijoueur]]&lt;br /&gt;
* [[:fr:Nouveau sur flightgear|Introduction à FlightGear]]&lt;br /&gt;
* [[Troubleshooting Problems|Dépannage]]&lt;br /&gt;
|-&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Utilisation de FlightGear&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
* [[:fr:Avions|Aéronefs]]&lt;br /&gt;
* [[:fr:Piloter l'hélicoptère|Piloter l'hélicoptère]]&lt;br /&gt;
* [[:fr:Table des modèles|Liste des modèles]]&lt;br /&gt;
'''[[Portal:User|Plus...]]'''&lt;br /&gt;
|-&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Développement de FlightGear&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
* [[:fr:Compiler FlightGear sous GNU/Linux|Compiler FlightGear]]&lt;br /&gt;
* [[Building_terragear-cs_in_Ubuntu_64|Compiler Terragear sous Ubuntu 64 bits]]&lt;br /&gt;
* [[FlightGear Package Manager]]&lt;br /&gt;
'''[[Portal:Developer|Plus...]]'''&lt;br /&gt;
|-&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Nouvelles&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
* [[FlightGear Newsletter {{MONTHNAME|{{LASTMONTHNAME}}}} {{CURRENTYEAR}}|Bulletin d'information de {{MONTHNAME|{{LASTMONTHNAME}}}} {{CURRENTYEAR}}]] ([[:Category:FlightGear Newsletter|archives]])&lt;br /&gt;
&lt;br /&gt;
* '''January 25 2009:''' [[FlightGear 1.9.1]]&lt;br /&gt;
* '''December 22 2008:''' [[FlightGear 1.9.0]]&lt;br /&gt;
* '''October 27th 2008:''' [[World Scenery 1.01]]&lt;br /&gt;
|-&lt;br /&gt;
|}&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
--------------------------------In the news, On this day-------------------------------&amp;gt;&lt;br /&gt;
|class=&amp;quot;MainPageBG&amp;quot; style=&amp;quot;width:50%; border:1px solid #d9e2e2; background:#efefef; vertical-align:top&amp;quot;|&lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top; background:#efefef;&amp;quot;&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Image de la semaine&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
{{POTW/{{CURRENTYEAR}}-{{CURRENTWEEK}}}}&lt;br /&gt;
|-   &lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Le saviez-vous...&amp;lt;/h2&amp;gt;   &lt;br /&gt;
|-   &lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;|  &lt;br /&gt;
{{Did you know}}&lt;br /&gt;
|-&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Promotion de FlightGear&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;|&lt;br /&gt;
* [[FlightGear Reviews|Évaluations de FlightGear]]&lt;br /&gt;
* [[FlightGear Videos|Vidéos de FlightGear]]&lt;br /&gt;
 &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
__NOEDITSECTION__&lt;br /&gt;
&lt;br /&gt;
[[de:Hauptseite]]&lt;br /&gt;
[[en:Main Page]]&lt;br /&gt;
[[es:Portada]]&lt;br /&gt;
[[fi:Etusivu]]&lt;br /&gt;
[[nl:Hoofdpagina]]&lt;br /&gt;
[[pt:Página principal]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Fr/Nouveau_sur_flightgear&amp;diff=22416</id>
		<title>Fr/Nouveau sur flightgear</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Fr/Nouveau_sur_flightgear&amp;diff=22416"/>
		<updated>2010-06-19T17:37:31Z</updated>

		<summary type="html">&lt;p&gt;Xiii: Remove CVS references&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''Certaines parties de cet article n'ont pas été mise à jours depuis 2008''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Pour commencer ==&lt;br /&gt;
=== Configuration matériel ===&lt;br /&gt;
Pour que Flightgear tourne de façon fluide, il vous faut une carde graphique supportant les drivers OpenGL. OpenGL 2,0 ou plus récent est requis pour faire tourner FG 2,0 et les versions ultérieures. La plupart des ordinateurs modernes supportent OpenGL, mais si vous avez des problèmes avec un taux d'image par seconde trop bas, allez voir [[Hardware Recommendations]] pour plus d'informations.&lt;br /&gt;
&lt;br /&gt;
=== Obtenir FlightGear ===&lt;br /&gt;
You may download the latest files from [http://www.flightgear.org/Downloads/ FlightGear Downloads] page. Choose the source or binary files appropriate for your particular system. Or, depending on level technical expertise you may choose the [[Git]] version if you wish to work with a development version of FlightGear. The Git version typically has more features and can be required by the some the latest developmental aircraft, but can be unstable and is more complicated to acquire and install.&lt;br /&gt;
&lt;br /&gt;
=== Installer sur Windows ===&lt;br /&gt;
After installing FlightGear on Windows a dialog box appears to define file locations.&lt;br /&gt;
&lt;br /&gt;
The first line asks for FlightGear Executable. Use the browse button to navigate to the location of fgfs.exe (in the default setup that is &amp;lt;tt&amp;gt;C:\Program Files\FlightGear\bin\win32\fgfs.exe&amp;lt;/tt&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
The second line asks for [[$FG_ROOT|FlightGear Root]]. Use the browse button to navigate to the &amp;lt;tt&amp;gt;data/&amp;lt;/tt&amp;gt; directory or enter the location of the 'data' directory (in the defualt setup that is &amp;lt;tt&amp;gt;C:\Program Files\FlightGear\data&amp;lt;/tt&amp;gt;). This will populate the scenery box as well.&lt;br /&gt;
&lt;br /&gt;
Once you have defined these default settings, continue the installation as explained below.&lt;br /&gt;
&lt;br /&gt;
==== Installer sur Mac OS X ===&lt;br /&gt;
Installing [[FlightGear Mac OS X|FlightGear on Mac OS X]] is very simple. Just drag and drop the FlightGear icon to the &amp;lt;tt&amp;gt;/Applications&amp;lt;/tt&amp;gt; folder. That's it. The first time you launch FlightGear, its icon on the Dock bounces for several seconds while loading aircraft and airport info. When the GUI launcher appears, select an aircraft and and airport by clicking the &amp;quot;Gear&amp;quot; buttons at the right of the names. Pressing &amp;quot;Start flight&amp;quot; will launch the simulator. You can configure more options using the GUI launcher. see http://macflightgear.sourceforge.net/home/documents/users-guide/ for more details.&lt;br /&gt;
&lt;br /&gt;
If you want to launch flightgear using command-line, launch &amp;lt;tt&amp;gt;/Applications/Utilities/Terminal.app&amp;lt;/tt&amp;gt; and type the following.&lt;br /&gt;
&lt;br /&gt;
 cd /Applications/FlightGear.app/Contents/Resources&lt;br /&gt;
 ./fgfs --options..... &lt;br /&gt;
&lt;br /&gt;
The [[$FG_ROOT]] and [[$FG_SCENERY]] are not set on Mac OS X. If you want to specify these variables yourself for command-line use, run the followings on Terminal.app:&lt;br /&gt;
&lt;br /&gt;
 FG_ROOT=/Applications/FlightGear.app/Contents/Resources/data&lt;br /&gt;
 FG_SCENERY=$FG_ROOT/Scenery&lt;br /&gt;
&lt;br /&gt;
After launching the GUI launcher, you will have the alias to [[$FG_ROOT]] at $HOME/Documents/Flightgear/&amp;lt;version&amp;gt; so you can browse the data folder using Finder.&lt;br /&gt;
&lt;br /&gt;
=== Configurer OpenGL ===&lt;br /&gt;
FlightGear runs best with current [[OpenGL]] video drivers.  If you are having trouble running FlightGear smoothly, see [[Configuring OpenGL]] for more information.&lt;br /&gt;
&lt;br /&gt;
=== Télécharger des scènes ===&lt;br /&gt;
A limited set of [[scenery]] comes installed with FlightGear, which consists of the area surrounding [[San Francisco International Airport|KSFO]].&lt;br /&gt;
&lt;br /&gt;
In FlightGear, scenery is divided into two kinds of data: Objects and Terrain. Objects are the buildings, bridges and radio towers, etc. that represent three-dimensional structures. Terrain represents the contours, elevations and type of ground you fly over.&lt;br /&gt;
&lt;br /&gt;
All object data goes in an Objects directory and all terrain data goes in a Terrain directory. The location of the scenery and its sub-directories depends on your particular installation.&lt;br /&gt;
&lt;br /&gt;
To download Objects and Terrain for FlightGear, go to the FlightGear website and navigate to the [http://www.flightgear.org/Downloads/ Downloads] page. On this page follow the link to download scenery from the map. Choose a block from the map where you will by flying. Once the package has downloaded, extract into your FlightGear scenery directory.&lt;br /&gt;
&lt;br /&gt;
The scenery packages available from the FlightGear website contain both Objects and Terrain for the locations.&lt;br /&gt;
&lt;br /&gt;
You may obtain additional and more up to date scenery Objects as they become available through the [http://scenemodels.flightgear.org/ FlightGear Scenery Database].&lt;br /&gt;
&lt;br /&gt;
Information beyond this brief overview is available in [[Installing Scenery]] and [[Downloading New Flightgear Scenery for Windows XP]]&lt;br /&gt;
&lt;br /&gt;
=== Télécharger des avions ===&lt;br /&gt;
To download additional [[aircraft]] for FlightGear individually, go to the FlightGear website and navigate to the [http://www.flightgear.org/Downloads/ Downloads] page, then choose [Aircraft Downloads http://flightgear.org/Downloads/aircraft-2.0.0/].&lt;br /&gt;
&lt;br /&gt;
Once the aircraft package has downloaded, decompress and extract the archived files onto your computer. You may extract to a temporary directory and move them, or extract directly into the Aircraft directory in FlightGear. This is typically &amp;lt;tt&amp;gt;[[$FG_ROOT]]/data/Aircraft&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
See also [[Installing Aircraft]] for more documentation.&lt;br /&gt;
&lt;br /&gt;
=== Starting FlightGear ===&lt;br /&gt;
Many users choose to start FlightGear from the command line (&amp;quot;console&amp;quot; or &amp;quot;shell&amp;quot; as it is known to Unix users). Alternatively some use graphical interfaces such as [[FlightGear Launch Control|Fgrun]] (FlightGear Launch Control). &lt;br /&gt;
&lt;br /&gt;
To start FlightGear type on the command line:&lt;br /&gt;
&lt;br /&gt;
 fgfs&lt;br /&gt;
&lt;br /&gt;
and hit enter. This will start FlightGear.&lt;br /&gt;
&lt;br /&gt;
If FlightGear fails to start, it is likely the compiled FlightGear binary software is not in your path. If you know Unix, you may add the location of the binary to your path and try starting again. Otherwise, you may find the location of the 'fgfs' binary and enter an absolute path to it like&lt;br /&gt;
&lt;br /&gt;
 /usr/games/fgfs&lt;br /&gt;
&lt;br /&gt;
The location depends on your particular system and choices you made during compile and installation.&lt;br /&gt;
&lt;br /&gt;
It is important to understand when not using a graphical interface to start FlightGear, your interaction will be entirely from the command line. To see available aircraft, you specify an option on the command line. To specify an aircraft, an airport, multiplayer server, etc. you add an option to the command line when starting FlightGear. Please consult the list of [[ Command Line Parameters ]]. The parameters are also useful to those starting FlightGear from [[ FlightGear Launch Control ]] graphical interface, as it allows you to specify parameters. If you are using FlightGear 1.0.0 this list may be useful [[FlightGear 1.0 aircraft names for command line]].&lt;br /&gt;
&lt;br /&gt;
=== Montrer les avons disponibles ===&lt;br /&gt;
From the command line:&lt;br /&gt;
&lt;br /&gt;
 fgfs --show-aircraft&lt;br /&gt;
&lt;br /&gt;
displays a list of available (installed) aircraft.&lt;br /&gt;
&lt;br /&gt;
=== Choisir un avion ===&lt;br /&gt;
From the command line:&lt;br /&gt;
&lt;br /&gt;
 fgfs --aircraft=foo&lt;br /&gt;
&lt;br /&gt;
where foo is the name of the folder the aircraft files live in. See also [[Command Line Parameters]].&lt;br /&gt;
&lt;br /&gt;
=== Voler en multijoueur via internet ===&lt;br /&gt;
{{Main article|Howto: Multiplayer}}&lt;br /&gt;
&lt;br /&gt;
=== Utiliser le clavier et la souris ===&lt;br /&gt;
Users with limited access to a [[joystick]] or other controllers sometimes use the keyboard or mouse to control their aircraft. Using the keyboard to fly can be difficult and the mouse is recommended over the keyboard. Other adjustments may be made with the keyboard.&lt;br /&gt;
&lt;br /&gt;
To get help with keyboard commands, with FlightGear running, go to the Help [[Menubar|menu]], look under Basic Keys (for simulator related commands) and Common Aircraft Keys (for commands universal to all aircraft) and Aircraft Help for key commands specific to your aircraft. A chart displaying what each key does will display.&lt;br /&gt;
&lt;br /&gt;
To use the mouse to fly the aircraft, right click and move the mouse to direct the aircraft, right click again to look around, click again to return to normal.&lt;br /&gt;
&lt;br /&gt;
=== La première fois dans le cockpit ===&lt;br /&gt;
Finding your way around the cockpit can be daunting the first time.&lt;br /&gt;
&lt;br /&gt;
Where is the 'virtual cockpit?' Not all FlightGear aircraft come with an interior, including a virtual cockpit. (Due to FlightGear being used by various research projects, some aircraft may not even come with an exterior model. Remember, FlightGear is very flexible.) A 2D panel may display over the 3d cockpit if one exists. You may turn this off using the View menu. Otherwise, you should be sitting in the virtual cockpit when FlightGear starts, as long as the Cockpit View is selected.&lt;br /&gt;
&lt;br /&gt;
You may find it difficult to read some of the displays, dials and gauges on the instrument panel. Use the Zoom keys to zoom in on an instrument. The 'x' and Shift-X keys control eyepoint zoom in the Cockpit View. Use the joystick hat (or other controller assigned to this function) to pan the eyepoint to the instrument you wish to read. Then zoom in.&lt;br /&gt;
&lt;br /&gt;
Alternate Method: Click the right mouse button until you get a cursor with two arrows (like this &amp;lt;=&amp;gt;). You can now move your view around the cockpit. Press 'x' and Shift-X to zoom in and out.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' Some functions, such as starter or magneto, may be difficult to use or lack &amp;quot;hotspots&amp;quot; to control with your mouse. Especially when flying an aircraft model that is still undergoing development. In this case, look for equivalent controls on a 2D panel or resort to the keyboard. The keyboard controls always work according to the assignments listed on the Help Menu (unless reassigned by an aircraft or configuration). Go to the main window menu, click Help, then click Basic Keys or Common Aircraft Keys.&lt;br /&gt;
&lt;br /&gt;
One of the first steps I take on entering an unfamiliar cockpit is to press Ctrl-C to highlight all the &amp;quot;hotspots&amp;quot; on the 3d cockpit instrument panel. This enables you to easily see where to place the mouse to operate an instrument's controls, buttons, knobs, etc.&lt;br /&gt;
&lt;br /&gt;
Many aircraft offer a help menu specific to that aircraft on the Aircraft Help menu (go to Help, then Aircraft Help.&lt;br /&gt;
[[File:[[File:Exemple.jpg]]]]&lt;br /&gt;
&lt;br /&gt;
== Faire son premier vol ==&lt;br /&gt;
One of the most frequent questions novice pilots ask about any flight sim, but more so to FlightGear, is &amp;quot;why is my aircraft turning left all the time?&amp;quot; Although it could be due to wind gusts crossing the runway, it is more likely due to the increased realism FlightGear provides. In a certain other flight simulator, some settings are turned down to make the aircraft easier to fly. This reduces effects such as propeller torque and p-factor, which may be the cause of the tendency to turn to the left (to figure out which effect, you may read more in [[Understanding Propeller Torque and P-Factor ]]).&lt;br /&gt;
&lt;br /&gt;
Despite marketing slogans to the contrary, some flight simulators are aimed at a casual game player market, and ship with their &amp;quot;realism&amp;quot; turned down. The realism is always turned up in FlightGear.&lt;br /&gt;
&lt;br /&gt;
FlightGear offers a great deal of realism, which may be confusing to first time pilots.&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Left Turning Syndrome&amp;quot; for the previously mentioned reasons.&lt;br /&gt;
* Compass Turning Error: A compass, when subjected to the forces of flight, tends to turn in the opposite direction for a brief period before settling on the correct heading. This is not a malfunction.&lt;br /&gt;
* The Vertical Speed Indicator is also subject to error.&lt;br /&gt;
* The Horizontal Situation Indicator is driven by a gyroscope (that is why it's sometimes called a Directional Gyroscope), which is subject to a phenomenon called gyro drift. For a number of reasons, the gyro will drift from its current heading and must be periodically (about every 15 minutes) calibrated to agree with the magnetic compass heading.&lt;br /&gt;
&lt;br /&gt;
Many forces act on an aircraft in flight as well as on the instruments and systems used for control and navigation, and may be counter-intuitive. Pilots must learn to recognize these phenomena and compensate for their effects. FlightGear models instrument errors that exist in the real world.&lt;br /&gt;
&lt;br /&gt;
=== Voler en utilisant l'aide électronique et le pilote automatique ===&lt;br /&gt;
To make this very clear for new users: Some aircraft require you to use the autopilot available from the Autopilot menu, which is the original FlightGear autopilot. This is a '''generic''' autopilot and as such, many aircraft come with their own '''specific''' autopilot, frequently a model of the real life one. '''For aircraft that provide their own autopilot in the cockpit, you must use the autopilot controls available in the virtual cockpit'''. This means clicking on the instrument panel in the virtual cockpit. The Autopilot menu will be grayed out and unavailable when the aircraft supplies its own autopilot (generally).&lt;br /&gt;
&lt;br /&gt;
FlightGear, as of version 0.9.9, comes with a &amp;quot;built-in&amp;quot; autopilot. The Autopilot dialog accessible from the FlightGear toolbar in the main FlightGear window _does not work with all aircraft_. It only works with aircraft that a) do not specify an autopilot, or b) aircraft that use the default autopilot. When an aircraft does not specify an autopilot, the default is used.&lt;br /&gt;
&lt;br /&gt;
For aircraft that supply their own autopilot, you must use the autopilot controls in the 2D or virtual cockpit. The Cessna comes with a KAP140 autopilot in its virtual cockpit. You _cannot use_ the Autopilot dialog with this aircraft. It has no effect. You must use the autopilot device in the panel.&lt;br /&gt;
&lt;br /&gt;
For help with navigation see [[Understanding Navigation]]&lt;br /&gt;
&lt;br /&gt;
=== Navigation et aéroports ===&lt;br /&gt;
When you first start FlightGear, whether from the command line or the graphical interface, you may wonder how to determine what airports are available. Fgrun displays a list of airports, but you will not see details such as Tower or ILS frequencies. You will not find a map showing VORs and their frequencies. Short of finding an actual sectional map for the area you wish to fly, what can you do?&lt;br /&gt;
&lt;br /&gt;
[http://maps.google.com Google Maps] and the [[MPMap|FlightGear Online Map for multiplayers]] are both good resources as well as the FlightGear [http://fgfs.i-net.hu/modules/fgplanner/ Community Flight Planner].&lt;br /&gt;
&lt;br /&gt;
== Obtenir de l'aide ==&lt;br /&gt;
&lt;br /&gt;
=== Chat ===&lt;br /&gt;
The quickest way to get help with FlightGear is to join in the chat room [[FlightGear IRC channel]].&lt;br /&gt;
&lt;br /&gt;
=== Groupe de discussion via courriel ===&lt;br /&gt;
The documentation for FlightGear is sketchy and undergoing constant change as new features are developed. This makes chat the best place to find answers to problems getting FlightGear to run.&lt;br /&gt;
&lt;br /&gt;
=== Documents ===&lt;br /&gt;
The ways for users to get help with FlightGear are:&lt;br /&gt;
&lt;br /&gt;
* Documents bundled with the release package.&lt;br /&gt;
* [http://flightgear.org/forums FlightGear Forum]&lt;br /&gt;
* [[FlightGear IRC channel]]&lt;br /&gt;
* [[Malinglists|FlightGear users mailing list]].&lt;br /&gt;
&lt;br /&gt;
== Pour en savoir plus ==&lt;br /&gt;
This page is designed to give the user the essential things they need to know about using FG for the first time.&lt;br /&gt;
&lt;br /&gt;
You now know enough to get started with FlightGear. To learn more, you may wish to start at the main page of this wiki and read the more detailed Getting Started section, or Using FlightGear section or study the Flying Resources to learn more about flight instruments and how to navigate and fly your aircraft.&lt;br /&gt;
&lt;br /&gt;
Also, note that those using the Git version of FlightGear may choose to update their aircraft files through the Git system.&lt;br /&gt;
&lt;br /&gt;
The following are some issues raised by new users of FlightGear. More detailed troubleshooting and answers can be found in [[Troubleshooting Problems]] and the [[FAQ]].&lt;br /&gt;
&lt;br /&gt;
=== Je ne veux pas compresser flightgear que dois-je faire? ===&lt;br /&gt;
[http://www.flightgear.org/Downloads/ Our website] offers precompiled binaries for download and install on a variety of systems. Current platforms are Windows, Linux, Solaris, SGI, Mac OSX and FreeBSD. These are offered as a convienence and availablility may vary at times.&lt;br /&gt;
&lt;br /&gt;
Note: FlightGear is highly configurable through editable [[XML]] files. You are free, and encouraged to, make changes to aircraft flight models and any other feature you wish to change for your personal satisfaction or to share with other FlightGear users. The flight model is not defined in a binary file. It is easy to modify (given enough knowledge). Although the install is binary, most of FlightGear's system is open to configuration through XML files and [[NASAL scripting]].&lt;br /&gt;
&lt;br /&gt;
=== Est-ce qu'il y a un manuel a imprimé? ===&lt;br /&gt;
You are invited to read &amp;quot;[[The Manual]]&amp;quot; online as [http://www.flightgear.org/Docs/getstart/getstart.html HTML]&lt;br /&gt;
or download a [http://mapserver.flightgear.org/getstart.pdf PDF] for viewing with Acrobar Reader or printing.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;The Manual&amp;quot; is not always up to date with recent developments but provides a good start for beginners.&lt;br /&gt;
&lt;br /&gt;
== Voulez-vous nous aider ? ==&lt;br /&gt;
{{Main article|Volunteer}}&lt;br /&gt;
&lt;br /&gt;
=== Testeur ===&lt;br /&gt;
* [[Building Flightgear|Build]] the latest GIT code or download snapshots (link)&lt;br /&gt;
* File Bug Reports&lt;br /&gt;
&lt;br /&gt;
=== Debugging &amp;amp; Profiling ===&lt;br /&gt;
* Running FlightGear via valgrind to track down memory leaks&lt;br /&gt;
&lt;br /&gt;
=== Aider facilement la communauté === &lt;br /&gt;
* Help new users with downloading, compiling, installing and running FlightGear (http://www.flightgear.org/forums or on IRC)&lt;br /&gt;
* Provide Ideas &amp;amp; Suggestions, see: [[Feature Requests / Proposals / Ideas]]&lt;br /&gt;
* Help clean up this wiki&lt;br /&gt;
* Help provide new contents for missing wiki pages&lt;br /&gt;
&lt;br /&gt;
=== Développement ===&lt;br /&gt;
* Writing documentation! Everyone is welcome to contribute to &amp;quot;The Manual&amp;quot;; having at least a little experience with LaTeX makes the task easier. Please contact the authors of The Manual if you would like to add corrections or whole chapters, you may also simply use this wiki to contribute fixes, modifications and new contents.&lt;br /&gt;
* C/C++ Coding:&lt;br /&gt;
** provide source code cleanups (i.e. help in the process of migrating over to a primarily smart pointer-based memory management approach using SGSharedPtr)&lt;br /&gt;
** provide bug fixes [[Bugs]]&lt;br /&gt;
** provide enhanced features [[Feature Requests / Proposals / Ideas]]&lt;br /&gt;
** provide new features &lt;br /&gt;
** get involved in any of the other FlightGear-affiliated projects &lt;br /&gt;
* Aircraft development (3D modelling, textures, FDMs, scripting)&lt;br /&gt;
* Scenery development&lt;br /&gt;
&lt;br /&gt;
[[de:Neu bei FlightGear]]&lt;br /&gt;
[[es:Nuevo para FlightGear]]&lt;br /&gt;
[[fr:Nouveau sur flightgear]]&lt;br /&gt;
[[en:New to FlightGear]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Fr/Accueil&amp;diff=22413</id>
		<title>Fr/Accueil</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Fr/Accueil&amp;diff=22413"/>
		<updated>2010-06-19T16:49:30Z</updated>

		<summary type="html">&lt;p&gt;Xiii: remove CVS reference&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;!--------------------------------Banner across top of page------------------------------&amp;gt;&lt;br /&gt;
{| style=&amp;quot;width:100%; background:#efefef; margin-top:1.2em; border:1px solid #d9e2e2;&amp;quot;&lt;br /&gt;
|style=&amp;quot;width:100%; color:#000&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-------------&amp;quot;Welcome to FlightGear&amp;quot; and article count----------&amp;gt;&lt;br /&gt;
{| style=&amp;quot;width:100%; border:solid 0px; background:none;&amp;quot;&lt;br /&gt;
|style=&amp;quot;width:100%; text-align:center; white-space:nowrap; color:#000;&amp;quot;|&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:162%; border:none; margin:0; padding:.1em; color:#000;&amp;quot;&amp;gt;Bienvenue sur le Wiki de FlightGear !&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;articlecount&amp;quot; style=&amp;quot;width:100%; text-align:center; font-size:85%;&amp;quot;&amp;gt;nous en sommes actuellement à [[Special:Statistics|{{NUMBEROFARTICLES}}]] articles&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[file:de.gif|link=:de:Hauptseite]]&lt;br /&gt;
[[file:en.gif|link=:en:Main Page]]&lt;br /&gt;
[[file:es.gif|link=:es:Portada]]&lt;br /&gt;
[[file:fi.gif|link=:fi:Etusivu]]&lt;br /&gt;
[[file:fr.gif|link=:fr:Accueil]]&lt;br /&gt;
[[file:nl.gif|link=:nl:Hoofdpagina]]&lt;br /&gt;
[[file:pl.gif|link=:pl:Strona główna]]&lt;br /&gt;
[[file:pt.gif|link=:pt:Página principal]]&lt;br /&gt;
[[file:zh.gif|link=:zh:Main Page]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--------------Portal list on righthand side----------&amp;gt;&lt;br /&gt;
|style=&amp;quot;width:11%; font-size:95%; color:#000;&amp;quot;|&lt;br /&gt;
|}&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
[[----------Strapline immediately below banner----------&amp;gt;&lt;br /&gt;
{|style=&amp;quot;width:100%; background:none; margin:-.8em 0 -.7em 0;&amp;quot;&lt;br /&gt;
|style=&amp;quot;font-size:95%; padding:10px 0; margin:0px; text-align:left; white-space:nowrap; color:#000;&amp;quot;| [[Help:Tutorial|Modifier]]&amp;amp;nbsp;'''·''' [[Help:Contents|Aide]]&lt;br /&gt;
|style=&amp;quot;font-size:95%; padding:10px 0; margin:0px; text-align: right; white-space:nowrap; color:#000;&amp;quot;| [[Special:Allpages|Toutes les pages]]&amp;amp;nbsp;'''·''' [[Special:Search|Chercher&lt;br /&gt;
]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;border-spacing:8px; margin:0px -8px;&amp;quot;&lt;br /&gt;
|class=&amp;quot;MainPageBG&amp;quot; style=&amp;quot;width:100%; border:1px solid #d9e2e2; background:#efefef; vertical-align:top; color:#000;&amp;quot;|&lt;br /&gt;
{|width=&amp;quot;100%&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top; background:#efefef;&amp;quot;&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;FlightGear Flight Simulator&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
[[Image:FGlogo.jpg|left]] '''[[FlightGear]] Flight Simulator''' est un simulateur de vol open-source sophistiqué et fonctionnel, créé et maintenu entièrement par des volontaires. Le code source complet est accessible par [[GIT]], sous une licence libre [[GNU General Public License]]. La  [[FlightGear 1.9.1|version 1.9.1]] de FlightGear date du 25 janvier 2009.&lt;br /&gt;
&lt;br /&gt;
Le projet [[FlightGear]] propose un environnement de développement de simulateur de vol sophistiqué, pour une utilisation académique ou a des fins de recherche, il permet le développement d'autres idées intéressantes en simulation de vol, et est aussi accessible à l'utilisateur lambda. Toute personne intéressée peut [[Volunteer|contribuer]] à l'ajout de fonctionnalités ou à l'amélioration de FlightGear. Il existe de plus de nombreux [[FlightGear related projects|projets connexes]] ([http://www.flightgear.org/links.html projects]).&lt;br /&gt;
&lt;br /&gt;
FlightGear est doté d'une documentation illustrée, parmi laquelle &amp;quot;Le Manuel&amp;quot;, disponible en [http://mapserver.flightgear.org/getstart.pdf PDF] et [http://www.flightgear.org/Docs/getstart/getstart.html HTML]. Ce Wiki à été lancé en 2006, et couvre actuellement une bonne partie des sujets liés à FlightGear. La fonctionnalité multi-langue est plus récente (été 2009) et pour le moment seulement une petite partie est traduite.&lt;br /&gt;
&lt;br /&gt;
'''Veuillez sélectionner un portail :'''&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;background:none;&amp;quot;&lt;br /&gt;
|style=&amp;quot;font-size:95%; padding-left:10px; padding-right:20px; margin:0px; vertical-align: top; text-align:left; white-space:nowrap; color:#000;&amp;quot;| &lt;br /&gt;
* [[Portal:Developer|Développeur]]&lt;br /&gt;
** [[Portal:Developer/3D Modelers|Modélisation 3D]]&lt;br /&gt;
** [[Portal:Developer/Aircraft|Aéronef]]&lt;br /&gt;
** [[Portal:Developer/Scenery|Paysage]]&lt;br /&gt;
|style=&amp;quot;font-size:95%; padding-left:20px; margin:0px; vertical-align: top; text-align: left; border-left: 2px solid #d9e2e2; white-space:nowrap; color:#000;&amp;quot;| &lt;br /&gt;
* [[fr/Portal:Utilisateur|Utilisateur]]&lt;br /&gt;
* [[Portal:Pilot|Pilote]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== '''Si vous êtes nouveau ici, jetez un oeil sur le [[Help:Contents|manuel]] avant de créer ou d'éditer un article!''' =====&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!---------------------------Today's featured article, Did you know------------------------&amp;gt;&lt;br /&gt;
{|style=&amp;quot;border-spacing:8px; margin:0px -8px;&amp;quot;&lt;br /&gt;
|class=&amp;quot;MainPageBG&amp;quot; style=&amp;quot;width:50%; border:1px solid #d9e2e2; background:#efefef; vertical-align:top; color:#000;&amp;quot;|&lt;br /&gt;
{|width=&amp;quot;100%&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top; background:#efefef;&amp;quot;&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Pour commencer&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
* [[:fr:Foire aux questions|FAQ]]&lt;br /&gt;
* [[:fr:Howto: Débarrassez-vous des erreurs les plus fréquentes|Messages d'erreur communs]]&lt;br /&gt;
* [[:fr:Howto: Multijoueur|Multijoueur]]&lt;br /&gt;
* [[:fr:Nouveau sur flightgear|Introduction à FlightGear]]&lt;br /&gt;
* [[Troubleshooting Problems|Dépannage]]&lt;br /&gt;
|-&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Utilisation de FlightGear&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
* [[:fr:Avions|Aéronefs]]&lt;br /&gt;
* [[:fr:Piloter l'hélicoptère|Piloter l'hélicoptère]]&lt;br /&gt;
* [[:fr:Table des modèles|Liste des modèles]]&lt;br /&gt;
'''[[Portal:User|Plus...]]'''&lt;br /&gt;
|-&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Développement de FlightGear&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
* [[:fr:Compiler FlightGear sous GNU/Linux|Compiler FlightGear]]&lt;br /&gt;
* [[Building_terragear-cs_in_Ubuntu_64|Compiler Terragear sous Ubuntu 64 bits]]&lt;br /&gt;
* [[FlightGear Package Manager]]&lt;br /&gt;
'''[[Portal:Developer|Plus...]]'''&lt;br /&gt;
|-&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Nouvelles&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
* [[FlightGear Newsletter {{MONTHNAME|{{LASTMONTHNAME}}}} {{CURRENTYEAR}}|Bulletin d'information de {{MONTHNAME|{{LASTMONTHNAME}}}} {{CURRENTYEAR}}]] ([[:Category:FlightGear Newsletter|archives]])&lt;br /&gt;
&lt;br /&gt;
* '''January 25 2009:''' [[FlightGear 1.9.1]]&lt;br /&gt;
* '''December 22 2008:''' [[FlightGear 1.9.0]]&lt;br /&gt;
* '''October 27th 2008:''' [[World Scenery 1.01]]&lt;br /&gt;
|-&lt;br /&gt;
|}&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
--------------------------------In the news, On this day-------------------------------&amp;gt;&lt;br /&gt;
|class=&amp;quot;MainPageBG&amp;quot; style=&amp;quot;width:50%; border:1px solid #d9e2e2; background:#efefef; vertical-align:top&amp;quot;|&lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top; background:#efefef;&amp;quot;&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Image de la semaine&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
{{POTW/{{CURRENTYEAR}}-{{CURRENTWEEK}}}}&lt;br /&gt;
|-   &lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Le saviez-vous...&amp;lt;/h2&amp;gt;   &lt;br /&gt;
|-   &lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;|  &lt;br /&gt;
{{Did you know}}&lt;br /&gt;
|-&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Promotion de FlightGear&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;|&lt;br /&gt;
* [[FlightGear Reviews|Évaluations de FlightGear]]&lt;br /&gt;
* [[FlightGear Videos|Vidéos de FlightGear]]&lt;br /&gt;
 &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
__NOEDITSECTION__&lt;br /&gt;
&lt;br /&gt;
[[de:Hauptseite]]&lt;br /&gt;
[[en:Main Page]]&lt;br /&gt;
[[es:Portada]]&lt;br /&gt;
[[fi:Etusivu]]&lt;br /&gt;
[[nl:Hoofdpagina]]&lt;br /&gt;
[[pt:Página principal]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Livery_over_MP&amp;diff=22412</id>
		<title>Livery over MP</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Livery_over_MP&amp;diff=22412"/>
		<updated>2010-06-19T16:45:38Z</updated>

		<summary type="html">&lt;p&gt;Xiii: remove CVS reference&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:Livery_selection_dialog.jpg|thumb|270px|The livery selection dialog of the [[Sikorsky S76C]].]]&lt;br /&gt;
&lt;br /&gt;
On this page we describe how you make use of a script to get a '''livery selection dialog''' for a [[Aircraft|plane]] in [[FlightGear]]. To get new liveries, you need to have them available with this script.&lt;br /&gt;
&lt;br /&gt;
'''If you want to add a new livery to a plane that already makes use of the livery select system, you'll only have to follow the steps under [[#Models/Liveries|Models/Liveries]].'''&lt;br /&gt;
&lt;br /&gt;
==Files==&lt;br /&gt;
There are a few files we need to make (or edit), namely:&lt;br /&gt;
* &amp;lt;tt&amp;gt;dr400-set.xml&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;Models/dr400.xml&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;Nasal/liveries.nas&amp;lt;/tt&amp;gt;&lt;br /&gt;
We also have to make a new directory to store our liveries in. Let's make it &amp;lt;tt&amp;gt;Aircraft/DR400/Models/Liveries&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Models/Liveries===&lt;br /&gt;
For every livery we need to make a file. Let's say we got a Rescue livery, we then need to make a file called Rescue.xml in our &amp;lt;tt&amp;gt;Models/Liveries&amp;lt;/tt&amp;gt; directory. When a particular livery gets selected, its XML file is copied to the aircraft's property tree. On the pilot's side this is the main property tree &amp;lt;tt&amp;gt;/&amp;lt;/tt&amp;gt;, and on all remote machines on the MP network it's one of the multiplayer branches in &amp;lt;tt&amp;gt;/ai/models/multiplayer[]&amp;lt;/tt&amp;gt;. The structure of livery XML files is completely free. There just has to be a property containing a name for the selection dialog, and &amp;lt;tt&amp;gt;aircraft.livery.init()&amp;lt;/tt&amp;gt; must be told which it is. By default it is &amp;lt;tt&amp;gt;sim/model/livery/name&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;PropertyList&amp;gt;&lt;br /&gt;
  &amp;lt;sim&amp;gt;&lt;br /&gt;
   &amp;lt;model&amp;gt;&lt;br /&gt;
    &amp;lt;livery&amp;gt;&lt;br /&gt;
     &amp;lt;name type=&amp;quot;string&amp;quot;&amp;gt;Default&amp;lt;/name&amp;gt;&lt;br /&gt;
     &amp;lt;texture&amp;gt;texture.rgb&amp;lt;/texture&amp;gt;&lt;br /&gt;
    &amp;lt;/livery&amp;gt;&lt;br /&gt;
   &amp;lt;/model&amp;gt;&lt;br /&gt;
  &amp;lt;/sim&amp;gt;&lt;br /&gt;
 &amp;lt;/PropertyList&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Models/dr400.xml===&lt;br /&gt;
The first part is related to the nasal script. &amp;lt;tt&amp;gt;(&amp;quot;Aircraft/DR400/Models/Liveries&amp;quot;);&amp;lt;/tt&amp;gt; points FlightGear to the directory where we store our liveries. This is a different directory for every plane, but there should be only one folder for one plane, containing all the liveries for that plane. Add the following code to your models .xml file:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nasal&amp;gt;&lt;br /&gt;
  &amp;lt;load&amp;gt;&lt;br /&gt;
   var livery_update = aircraft.livery_update.new(&amp;quot;Aircraft/DR400/Models/Liveries&amp;quot;);&lt;br /&gt;
  &amp;lt;/load&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
  &amp;lt;unload&amp;gt;&lt;br /&gt;
   livery_update.stop();&lt;br /&gt;
  &amp;lt;/unload&amp;gt;&lt;br /&gt;
 &amp;lt;/nasal&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The second part is very important and probably the hardest of all. We need to set which parts of the model should change when you select a new livery. To find the object-names, you could make use of software like [[Blender]] or [[AC3D]]. The &amp;lt;tt&amp;gt;&amp;lt;texture&amp;gt;S76livery.rgb&amp;lt;/texture&amp;gt;&amp;lt;/tt&amp;gt; part points FlightGear to the livery that should be shown on startup.&lt;br /&gt;
&lt;br /&gt;
'''Warning: be sure you don't have a slash (/) in front of sim/model/livery in the &amp;lt;property-base&amp;gt; tag! Otherwise, all planes will get the same livery!'''&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;animation&amp;gt;&lt;br /&gt;
  &amp;lt;type&amp;gt;material&amp;lt;/type&amp;gt;&lt;br /&gt;
   &amp;lt;object-name&amp;gt;LHgeardoor&amp;lt;/object-name&amp;gt;&lt;br /&gt;
   &amp;lt;object-name&amp;gt;RHgeardoor&amp;lt;/object-name&amp;gt;&lt;br /&gt;
   &amp;lt;object-name&amp;gt;S76C&amp;lt;/object-name&amp;gt;&lt;br /&gt;
   &amp;lt;object-name&amp;gt;RF.door&amp;lt;/object-name&amp;gt;&lt;br /&gt;
   &amp;lt;object-name&amp;gt;LF.door&amp;lt;/object-name&amp;gt;&lt;br /&gt;
   &amp;lt;object-name&amp;gt;Rr.Door&amp;lt;/object-name&amp;gt;&lt;br /&gt;
   &amp;lt;object-name&amp;gt;Lr.Door&amp;lt;/object-name&amp;gt;&lt;br /&gt;
   &amp;lt;object-name&amp;gt;RHbaggage&amp;lt;/object-name&amp;gt;&lt;br /&gt;
   &amp;lt;object-name&amp;gt;LHbaggage&amp;lt;/object-name&amp;gt;&lt;br /&gt;
   &amp;lt;object-name&amp;gt;RHfrtgeardoor&amp;lt;/object-name&amp;gt;&lt;br /&gt;
   &amp;lt;object-name&amp;gt;LHfrtgeardoor&amp;lt;/object-name&amp;gt;&lt;br /&gt;
   &amp;lt;property-base&amp;gt;sim/model/livery&amp;lt;/property-base&amp;gt;&lt;br /&gt;
   &amp;lt;texture-prop&amp;gt;texture&amp;lt;/texture-prop&amp;gt;&lt;br /&gt;
   &amp;lt;texture&amp;gt;texture.rgb&amp;lt;/texture&amp;gt;&lt;br /&gt;
 &amp;lt;/animation&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Nasal/liveries.nas===&lt;br /&gt;
The only thing you might change in the nasal file is the directory of the liveries. If you don't have the livery name in &amp;lt;tt&amp;gt;sim/model/livery/name&amp;lt;/tt&amp;gt;, then you have to add this as second function argument.&lt;br /&gt;
&lt;br /&gt;
 aircraft.livery.init(&amp;quot;Aircraft/DR400/Models/Liveries&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
===dr400-set.xml===&lt;br /&gt;
The follow part is really important. If this is not included, the livery changes will not be visible over MP!&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;model&amp;gt;&lt;br /&gt;
  &amp;lt;path&amp;gt;Aircraft/DR400/models/dr400.xml&amp;lt;/path&amp;gt;&lt;br /&gt;
  &amp;lt;livery&amp;gt;&lt;br /&gt;
   &amp;lt;file type=&amp;quot;string&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;/livery&amp;gt;&lt;br /&gt;
 &amp;lt;/model&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want the default livery be something else than the first in the list, replace the file type part with the following, containing the Models/Liveries/....xml file name of the approperiate livery.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;file type=&amp;quot;string&amp;quot;&amp;gt;ANA&amp;lt;/file&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To make a nice button in the [[menubar]] we need to add the following code, just above the &amp;lt;tt&amp;gt;&amp;lt;/sim&amp;gt;&amp;lt;/tt&amp;gt; tag.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;menubar&amp;gt;&lt;br /&gt;
  &amp;lt;default&amp;gt;&lt;br /&gt;
   &amp;lt;menu n=&amp;quot;100&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label&amp;gt;Robin DR 400&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;enabled type=&amp;quot;bool&amp;quot;&amp;gt;true&amp;lt;/enabled&amp;gt;&lt;br /&gt;
    &amp;lt;item&amp;gt;&lt;br /&gt;
     &amp;lt;label&amp;gt;Select Livery&amp;lt;/label&amp;gt;&lt;br /&gt;
     &amp;lt;binding&amp;gt;&lt;br /&gt;
      &amp;lt;command&amp;gt;nasal&amp;lt;/command&amp;gt;&lt;br /&gt;
      &amp;lt;script&amp;gt;aircraft.livery.dialog.open()&amp;lt;/script&amp;gt;&lt;br /&gt;
     &amp;lt;/binding&amp;gt;&lt;br /&gt;
    &amp;lt;/item&amp;gt;&lt;br /&gt;
   &amp;lt;/menu&amp;gt;&lt;br /&gt;
  &amp;lt;/default&amp;gt;&lt;br /&gt;
 &amp;lt;/menubar&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Multiple texture files per livery==&lt;br /&gt;
Some models use multiple textures file (eg. seperate files for wings and fuselage). Every texture needs it own property. You can add as many textures as you like. &lt;br /&gt;
&lt;br /&gt;
The given examples are based on the [[Boeing 787]].&lt;br /&gt;
&lt;br /&gt;
===Models/Liveries===&lt;br /&gt;
Instead of just one texture we have to deal with multiple ones now. &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;PropertyList&amp;gt;&lt;br /&gt;
  &amp;lt;sim&amp;gt;&lt;br /&gt;
   &amp;lt;model&amp;gt;&lt;br /&gt;
    &amp;lt;livery&amp;gt;&lt;br /&gt;
     &amp;lt;name type=&amp;quot;string&amp;quot;&amp;gt;All Nippon Airways&amp;lt;/name&amp;gt;&lt;br /&gt;
     &amp;lt;texture&amp;gt;ANA-Livery.rgb&amp;lt;/texture&amp;gt;&lt;br /&gt;
    &amp;lt;/livery&amp;gt;&lt;br /&gt;
    &amp;lt;lights&amp;gt;&lt;br /&gt;
     &amp;lt;texture&amp;gt;ANA-Lights.rgb&amp;lt;/texture&amp;gt;&lt;br /&gt;
    &amp;lt;/lights&amp;gt;&lt;br /&gt;
   &amp;lt;/model&amp;gt;&lt;br /&gt;
  &amp;lt;/sim&amp;gt;&lt;br /&gt;
 &amp;lt;/PropertyList&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Remember the names (&amp;lt;livery&amp;gt; and &amp;lt;lights&amp;gt;), as you will need them in the model file in the next step.&lt;br /&gt;
&lt;br /&gt;
===Models/787.xml===&lt;br /&gt;
    &amp;lt;animation&amp;gt;&lt;br /&gt;
        &amp;lt;type&amp;gt;material&amp;lt;/type&amp;gt;&lt;br /&gt;
        &amp;lt;object-name&amp;gt;wipers&amp;lt;/object-name&amp;gt;&lt;br /&gt;
        &amp;lt;property-base&amp;gt;sim/model/livery&amp;lt;/property-base&amp;gt;&lt;br /&gt;
        &amp;lt;texture-prop&amp;gt;texture&amp;lt;/texture-prop&amp;gt;&lt;br /&gt;
        &amp;lt;texture&amp;gt;ANA-Livery.rgb&amp;lt;/texture&amp;gt;&lt;br /&gt;
    &amp;lt;/animation&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;animation&amp;gt;&lt;br /&gt;
        &amp;lt;type&amp;gt;material&amp;lt;/type&amp;gt;&lt;br /&gt;
        &amp;lt;object-name&amp;gt;lightedfin_0&amp;lt;/object-name&amp;gt;&lt;br /&gt;
        &amp;lt;property-base&amp;gt;sim/model/lights&amp;lt;/property-base&amp;gt;&lt;br /&gt;
        &amp;lt;texture-prop&amp;gt;texture&amp;lt;/texture-prop&amp;gt;&lt;br /&gt;
        &amp;lt;texture&amp;gt;ANA-Lights.rgb&amp;lt;/texture&amp;gt;&lt;br /&gt;
    &amp;lt;/animation&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Performance Improvements===&lt;br /&gt;
For livery changing it seems to be  important to parent all objects with the same texture. In Blender select all objects and press &amp;quot;ctr-p&amp;quot; to make it parent to the last selected. E.g.: fuselage and doors with the same texture: select at first the doors and then at last the fuselage and press &amp;quot;ctr-p&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
Also prevent transparency where possible- it will prevent lags during switching the views. See also the f14b as an very good example!&lt;br /&gt;
&lt;br /&gt;
==Testing==&lt;br /&gt;
To ensure that your livery setup works correctly over MP, start two instances of FlightGear locally, one with&lt;br /&gt;
&lt;br /&gt;
 fgfs --multiplay=out,10,localhost,5702 --multiplay=in,10,localhost,5701&lt;br /&gt;
&lt;br /&gt;
and one with&lt;br /&gt;
&lt;br /&gt;
 fgfs --multiplay=out,10,localhost,5701 --multiplay=in,10,localhost,5702&lt;br /&gt;
&lt;br /&gt;
==Sharing your liveries==&lt;br /&gt;
Ofcourse you want other people to use and enjoy your liveries as much as you do. Therefore, other users should be able to download them.&lt;br /&gt;
&lt;br /&gt;
We have some FlightGear hosts, where you can upload your liveries to:&lt;br /&gt;
* [http://liveries.flightgear.org FlightGear Liveries] largest FG repository with (almost) all available liveries, based on real aircraft.&lt;br /&gt;
* [http://unitedfreeworld.com UnitedFreeWorld] repository with lots of liveries (and scenery/aircraft), both realistic and fictional.&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft enhancement]]&lt;br /&gt;
[[Category:Modeling]]&lt;br /&gt;
[[Category:Menubar]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Howto:Carrier&amp;diff=22411</id>
		<title>Howto:Carrier</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Howto:Carrier&amp;diff=22411"/>
		<updated>2010-06-19T16:42:42Z</updated>

		<summary type="html">&lt;p&gt;Xiii: typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Features==&lt;br /&gt;
[[Image:Carrier3.jpg|thumb|300px|The Nimitz carrier in the San Fransisco bay]]&lt;br /&gt;
&lt;br /&gt;
* Start FG with your chosen aircraft placed on the aircraft carrier &amp;quot;Nimitz&amp;quot; or &amp;quot;Eisenhower&amp;quot;&lt;br /&gt;
* Engage the launchbar in the steam catapult&lt;br /&gt;
* Have the carrier set course into the prevailing wind direction and attempt to get wind speed over the deck at a suitable value for launch&lt;br /&gt;
* Launch from the deck when ready&lt;br /&gt;
* Set the TACAN reciever in the aircraft to Nimitz's channel (029Y) and have the heading and range to the carrier displayed on the cockpit instruments&lt;br /&gt;
* Land on the deck and be halted by the arrestor cables&lt;br /&gt;
* Taxi onto the deck elevators, operate them and park on the hangar deck (0.9.10 and later)&lt;br /&gt;
&lt;br /&gt;
You can start FlightGear with the command line or GUI. To position your [[aircraft]] on the carrier at startup, use the following [[Command Line Parameters|command line options]]. Note the upper-case &amp;quot;N&amp;quot; in Nimitz and the fact that the scenario comes in front of carrier! You can copy-paste this (he slash will make it look like one line):&lt;br /&gt;
 fgfs  \&lt;br /&gt;
 --ai-scenario=nimitz_demo&lt;br /&gt;
 --carrier=Nimitz \&lt;br /&gt;
 --aircraft=seahawk \&lt;br /&gt;
&lt;br /&gt;
Note that several FG aircraft are carrier capable, but the [[Hawker Seahawk|Seahawk]] is possibly the easiest to fly to begin with.&lt;br /&gt;
&lt;br /&gt;
If you are using the Windows or OSX launcher to run FG, you should find a text entry box in the gui that allows you to specify command line options, add the above options there. Linux or Cygwin users can just add them to their usual startup command; ``fgfs --carrier=Nimitz --aircraft=seahawk'. Please note the uppercase ``N' in ``Nimitz'.&lt;br /&gt;
&lt;br /&gt;
In the [[FlightGear Wizard]]: go to Advanced... &amp;gt; Properties and make a new property with &lt;br /&gt;
 sim/ai/scenario[0]=nimitz_demo --carrier=Nimitz&lt;br /&gt;
&lt;br /&gt;
With version 1.0.0 there comes a special box for the carriers on the Airport selection page of the Wizard.&lt;br /&gt;
&lt;br /&gt;
==Takeoff==&lt;br /&gt;
[[Image:Carrier1.jpg|thumb|300px|The [[Hawker Seahawk|Seahawk]] aircraft ready for takeoff]]&lt;br /&gt;
Once FlightGear has started, you should ensure that the parking brakes are off, ease the plane a little way down the catapult pressing ``L' to engage the launchbar (this might be best done from an external view initially.) You should notice the aircraft being pulled into alignment with the catapult and see the strops appear and hold down the aircraft.  This will only happen if your aircraft is close enough to the correct spot on the catapult; as a rough guide, for the default parking position the seahawk's nose should be rougly level with the deck observation bubble.&lt;br /&gt;
&lt;br /&gt;
To get the carrier into as good a position as possible for launch, select the ``ATC/AI' menu, then check the ``Turn into wind' box under the ``AI Carrier' section.&lt;br /&gt;
&lt;br /&gt;
You should now notice the carrier begin to pick up speed and turn into the wind, and naturally the deck may tilt somewhat as it turns. You should wait for this maneuver to finish and the deck to return to level before moving on to the next stage.&lt;br /&gt;
[[Image:Carrier6.jpg|thumb|300px|'''1:''' The takeoff part of the carrier with the catapults &lt;br /&gt;
'''2:''' The land part of the carrier with the wires]]&lt;br /&gt;
Being engaged to the catapult, you should spool up the engines to full power, ensure the brakes are off and that all flight controls are in a suitable position for launch. When ready, press ``C' to release the catapult. Your aircraft will be hurled forward off the deck, and you should be able to raise the undercarriage and climb slowly away, being careful to avoid stalling.&lt;br /&gt;
&lt;br /&gt;
==Land==&lt;br /&gt;
Actually finding the carrier in a vast expanse of open water can be very difficult, especially if visibility is poor. To assist with this task, the carriers are equipped with [[TACAN]], which allows a suitably-equipped aircraft (Seahawk at present) to obtain a range and bearing to the carrier. First, you must set the appropriate TACAN channel, 029Y in this case, in the radios dialogue (ctrl-r or choose Equipment/Radio Settings from the FG [[menubar]]). You should, if within range, notice the DME instrument show your distance from the carrier, and the ADF instrument (next to the DME in the seahawk) should indicate a bearing to the carrier. Turn to the indicated heading and you should see the DME dial indicate your closing in on the carrier.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
! Carrier || Scenario || TACAN&lt;br /&gt;
|-&lt;br /&gt;
| Nimitz || nimitz_demo || 029Y&lt;br /&gt;
|-&lt;br /&gt;
| Eisenhower || nimitz_demo || 030Y&lt;br /&gt;
|-&lt;br /&gt;
| Clemenceau || clemenceau_demo || 026Y&lt;br /&gt;
|-&lt;br /&gt;
| Foch || foch_demo || 026X&lt;br /&gt;
|-&lt;br /&gt;
| Akagi || akagi || N/A&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
This is the most difficult part of the operation, as in real life. You might well find Andy Ross' [[A-4F Skyhawk Operations Manual]] useful here.  Basically, though, you should use the TACAN to locate the carrier, and line up with the rear of the deck. As this part of the deck is at an angle to the course of the vessel, you may need to correct your alignment often. Ensure that the aircraft is in the correct configuration for approach (the Help/Aircraft Help menu should contain useful data for your aircraft) and that the gear and the arrestor hook are down.&lt;br /&gt;
[[Image:Carrier5.jpg|thumb|300px|The Fresnel Lens Optical landing System]]&lt;br /&gt;
As you approach you should see, on the left hand side of the deck, a set of brightly coloured lights - called the Fresnel Lens Optical landing System (FLOLS). This indicates your position on the landing glideslope. You will see a horizontal row of green lights, and when approximately on the glideslope, an orange light ( known in some circles as the ``meatball') approximately in line with the green lights. When approaching correctly, the meatball appears in line with the green lights. If you are high it is above, and when low it is below. If you are very low the meatball turns red. If you fly to keep the meatball aligned you should catch number 3 wire.&lt;br /&gt;
&lt;br /&gt;
Carrier landings are often described as ``controlled crashes' and you shouldn't waste your time attempting to flare and place the aircraft gently on the deck like you would with a conventional landing - ensuring that you catch the wires is the main thing.&lt;br /&gt;
&lt;br /&gt;
Immediately your wheels touch the deck, you should open the throttles to full power, in case you have missed the wires and need to ``go around' again; the wires will hold the aircraft if you have caught them, even at full power.&lt;br /&gt;
&lt;br /&gt;
If you wish, you can then (with 0.9.10 and later) raise the elevators from the ATC/AI menu,  taxy onto one of the elevators, lower it (uncheck the box on the menu and don't worry, they are VERY slow...) and taxy off into the hangar.&lt;br /&gt;
&lt;br /&gt;
Don't be discouraged if you don't succeed at first with carrier landings - it's not an easy maneouver to master. If after a little practice you find the Seahawk too easy, you could move on to the Seafire for more of a challenge!&lt;br /&gt;
&lt;br /&gt;
==Related content==&lt;br /&gt;
* [[Carrier over MP]] to find out how you could control the carrier and/or use the carrier over the multiplayer network.&lt;br /&gt;
&lt;br /&gt;
[[Category:Howto|Carrier]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Howto:Carrier&amp;diff=22410</id>
		<title>Howto:Carrier</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Howto:Carrier&amp;diff=22410"/>
		<updated>2010-06-19T16:41:28Z</updated>

		<summary type="html">&lt;p&gt;Xiii: Remove old status statement, kill CVS references, anonymify :-) well, put an A-6E on the deck and AJ comes back.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Features==&lt;br /&gt;
[[Image:Carrier3.jpg|thumb|300px|The Nimitz carrier in the San Fransisco bay]]&lt;br /&gt;
&lt;br /&gt;
* start FG with your chosen aircraft placed on the aircraft carrier &amp;quot;Nimitz&amp;quot; or &amp;quot;Eisenhower&amp;quot;&lt;br /&gt;
* Engage the launchbar in the steam catapult&lt;br /&gt;
* Have the carrier set course into the prevailing wind direction and attempt to get wind speed over the deck at a suitable value for launch&lt;br /&gt;
* Launch from the deck when ready&lt;br /&gt;
* Set the TACAN reciever in the aircraft to Nimitz's channel (029Y) and have the heading and range to the carrier displayed on the cockpit instruments&lt;br /&gt;
* Land on the deck and be halted by the arrestor cables&lt;br /&gt;
* Taxi onto the deck elevators, operate them and park on the hangar deck (0.9.10 and later)&lt;br /&gt;
&lt;br /&gt;
You can start FlightGear with the command line or GUI. To position your [[aircraft]] on the carrier at startup, use the following [[Command Line Parameters|command line options]]. Note the upper-case &amp;quot;N&amp;quot; in Nimitz and the fact that the scenario comes in front of carrier! You can copy-paste this (he slash will make it look like one line):&lt;br /&gt;
 fgfs  \&lt;br /&gt;
 --ai-scenario=nimitz_demo&lt;br /&gt;
 --carrier=Nimitz \&lt;br /&gt;
 --aircraft=seahawk \&lt;br /&gt;
&lt;br /&gt;
Note that several FG aircraft are carrier capable, but the [[Hawker Seahawk|Seahawk]] is possibly the easiest to fly to begin with.&lt;br /&gt;
&lt;br /&gt;
If you are using the Windows or OSX launcher to run FG, you should find a text entry box in the gui that allows you to specify command line options, add the above options there. Linux or Cygwin users can just add them to their usual startup command; ``fgfs --carrier=Nimitz --aircraft=seahawk'. Please note the uppercase ``N' in ``Nimitz'.&lt;br /&gt;
&lt;br /&gt;
In the [[FlightGear Wizard]]: go to Advanced... &amp;gt; Properties and make a new property with &lt;br /&gt;
 sim/ai/scenario[0]=nimitz_demo --carrier=Nimitz&lt;br /&gt;
&lt;br /&gt;
With version 1.0.0 there comes a special box for the carriers on the Airport selection page of the Wizard.&lt;br /&gt;
&lt;br /&gt;
==Takeoff==&lt;br /&gt;
[[Image:Carrier1.jpg|thumb|300px|The [[Hawker Seahawk|Seahawk]] aircraft ready for takeoff]]&lt;br /&gt;
Once FlightGear has started, you should ensure that the parking brakes are off, ease the plane a little way down the catapult pressing ``L' to engage the launchbar (this might be best done from an external view initially.) You should notice the aircraft being pulled into alignment with the catapult and see the strops appear and hold down the aircraft.  This will only happen if your aircraft is close enough to the correct spot on the catapult; as a rough guide, for the default parking position the seahawk's nose should be rougly level with the deck observation bubble.&lt;br /&gt;
&lt;br /&gt;
To get the carrier into as good a position as possible for launch, select the ``ATC/AI' menu, then check the ``Turn into wind' box under the ``AI Carrier' section.&lt;br /&gt;
&lt;br /&gt;
You should now notice the carrier begin to pick up speed and turn into the wind, and naturally the deck may tilt somewhat as it turns. You should wait for this maneuver to finish and the deck to return to level before moving on to the next stage.&lt;br /&gt;
[[Image:Carrier6.jpg|thumb|300px|'''1:''' The takeoff part of the carrier with the catapults &lt;br /&gt;
'''2:''' The land part of the carrier with the wires]]&lt;br /&gt;
Being engaged to the catapult, you should spool up the engines to full power, ensure the brakes are off and that all flight controls are in a suitable position for launch. When ready, press ``C' to release the catapult. Your aircraft will be hurled forward off the deck, and you should be able to raise the undercarriage and climb slowly away, being careful to avoid stalling.&lt;br /&gt;
&lt;br /&gt;
==Land==&lt;br /&gt;
Actually finding the carrier in a vast expanse of open water can be very difficult, especially if visibility is poor. To assist with this task, the carriers are equipped with [[TACAN]], which allows a suitably-equipped aircraft (Seahawk at present) to obtain a range and bearing to the carrier. First, you must set the appropriate TACAN channel, 029Y in this case, in the radios dialogue (ctrl-r or choose Equipment/Radio Settings from the FG [[menubar]]). You should, if within range, notice the DME instrument show your distance from the carrier, and the ADF instrument (next to the DME in the seahawk) should indicate a bearing to the carrier. Turn to the indicated heading and you should see the DME dial indicate your closing in on the carrier.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
! Carrier || Scenario || TACAN&lt;br /&gt;
|-&lt;br /&gt;
| Nimitz || nimitz_demo || 029Y&lt;br /&gt;
|-&lt;br /&gt;
| Eisenhower || nimitz_demo || 030Y&lt;br /&gt;
|-&lt;br /&gt;
| Clemenceau || clemenceau_demo || 026Y&lt;br /&gt;
|-&lt;br /&gt;
| Foch || foch_demo || 026X&lt;br /&gt;
|-&lt;br /&gt;
| Akagi || akagi || N/A&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
This is the most difficult part of the operation, as in real life. You might well find Andy Ross' [[A-4F Skyhawk Operations Manual]] useful here.  Basically, though, you should use the TACAN to locate the carrier, and line up with the rear of the deck. As this part of the deck is at an angle to the course of the vessel, you may need to correct your alignment often. Ensure that the aircraft is in the correct configuration for approach (the Help/Aircraft Help menu should contain useful data for your aircraft) and that the gear and the arrestor hook are down.&lt;br /&gt;
[[Image:Carrier5.jpg|thumb|300px|The Fresnel Lens Optical landing System]]&lt;br /&gt;
As you approach you should see, on the left hand side of the deck, a set of brightly coloured lights - called the Fresnel Lens Optical landing System (FLOLS). This indicates your position on the landing glideslope. You will see a horizontal row of green lights, and when approximately on the glideslope, an orange light ( known in some circles as the ``meatball') approximately in line with the green lights. When approaching correctly, the meatball appears in line with the green lights. If you are high it is above, and when low it is below. If you are very low the meatball turns red. If you fly to keep the meatball aligned you should catch number 3 wire.&lt;br /&gt;
&lt;br /&gt;
Carrier landings are often described as ``controlled crashes' and you shouldn't waste your time attempting to flare and place the aircraft gently on the deck like you would with a conventional landing - ensuring that you catch the wires is the main thing.&lt;br /&gt;
&lt;br /&gt;
Immediately your wheels touch the deck, you should open the throttles to full power, in case you have missed the wires and need to ``go around' again; the wires will hold the aircraft if you have caught them, even at full power.&lt;br /&gt;
&lt;br /&gt;
If you wish, you can then (with 0.9.10 and later) raise the elevators from the ATC/AI menu,  taxy onto one of the elevators, lower it (uncheck the box on the menu and don't worry, they are VERY slow...) and taxy off into the hangar.&lt;br /&gt;
&lt;br /&gt;
Don't be discouraged if you don't succeed at first with carrier landings - it's not an easy maneouver to master. If after a little practice you find the Seahawk too easy, you could move on to the Seafire for more of a challenge!&lt;br /&gt;
&lt;br /&gt;
==Related content==&lt;br /&gt;
* [[Carrier over MP]] to find out how you could control the carrier and/or use the carrier over the multiplayer network.&lt;br /&gt;
&lt;br /&gt;
[[Category:Howto|Carrier]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Grumman_F-14_Tomcat&amp;diff=22409</id>
		<title>Grumman F-14 Tomcat</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Grumman_F-14_Tomcat&amp;diff=22409"/>
		<updated>2010-06-19T16:34:58Z</updated>

		<summary type="html">&lt;p&gt;Xiii: kill CVS definitively&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{infobox Aircraft&lt;br /&gt;
|image =F-14.jpg&lt;br /&gt;
|name =F-14 Tomcat&lt;br /&gt;
|type =Interceptor/multi-role Fighter aircraft&lt;br /&gt;
|livery =U.S. Navy&lt;br /&gt;
|authors =Enrique Laso, Alexis Bory (cockpit)&lt;br /&gt;
|status =Production&lt;br /&gt;
|fdm =YASim&lt;br /&gt;
|3dcockpit = &amp;amp;radic;&lt;br /&gt;
|carrier = &amp;amp;radic;&lt;br /&gt;
|fgname = f-14b&lt;br /&gt;
}}&lt;br /&gt;
The '''Grumman F-14 Tomcat''' is a supersonic, twin-engine, two-seat, variable geometry wing [[aircraft]]. The F-14 was the United States Navy's primary maritime air superiority fighter, fleet defense interceptor and tactical reconnaissance platform from 1974 to 2006. It later performed precision strike missions once it was integrated with the Low Altitude Navigation and Targeting Infrared for Night [http://en.wikipedia.org/wiki/LANTIRN LANTIRN] system. The F-14 was developed after the collapse of the [http://en.wikipedia.org/wiki/F-111B F-111B] project, and was the first of the American teen-series fighters which were designed incorporating the experience of air combat in Vietnam against MiGs.&lt;br /&gt;
&lt;br /&gt;
It entered service in 1972 with the U.S. Navy, replacing the [[McDonnell F4 Phantom II]]. It was later exported to the former Imperial Iranian Air Force in 1976, during a time when the US still had good relations with Iran. It was retired from the active U.S. Navy fleet on 22 September 2006, having been replaced by the [[F/A-18 Hornet|F/A-18E/F Super Hornet]]. As of 2007, it remains in service only with the Islamic Republic of Iran Air Force.&lt;br /&gt;
&lt;br /&gt;
==Keyboard Controls==&lt;br /&gt;
===Flight Controls===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|Home&lt;br /&gt;
|Increase elevator trim&lt;br /&gt;
|-&lt;br /&gt;
|End&lt;br /&gt;
|Decrease elevator trim&lt;br /&gt;
|-&lt;br /&gt;
|] or f&lt;br /&gt;
|Lower flaps&lt;br /&gt;
|-&lt;br /&gt;
|[ or F&lt;br /&gt;
|Raise flaps&lt;br /&gt;
|-&lt;br /&gt;
|s&lt;br /&gt;
|Increase speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|S&lt;br /&gt;
|Decrease speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-b&lt;br /&gt;
|Toggle speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|k&lt;br /&gt;
|Increase speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|j&lt;br /&gt;
|Decrease speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Image:F-14_cockpit.jpg|thumb|270px|Cockpit of the F-14.]]&lt;br /&gt;
[[File:SunsetF-14.png|270px|thumb|right|A nice scene with the F-14.]]&lt;br /&gt;
&lt;br /&gt;
===Automatic Flight Controls===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|a&lt;br /&gt;
|Toggle APC (Landing Automatic Power Control)&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-d&lt;br /&gt;
|Toggle DLC (Landing Direct Lift Control)&lt;br /&gt;
|-&lt;br /&gt;
|d&lt;br /&gt;
|DLC increase&lt;br /&gt;
|-&lt;br /&gt;
|D&lt;br /&gt;
|DLC decrease&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-t&lt;br /&gt;
|Toggle [http://en.wikipedia.org/wiki/Aircraft_flight_control_systems AFCS] (Defaut Attitude Mode)&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-a&lt;br /&gt;
|Enable AFCS Altitude Mode&lt;br /&gt;
|-&lt;br /&gt;
|*&lt;br /&gt;
|Engage AFCS Altitude Mode&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-h&lt;br /&gt;
|Enable AFCS Heading Mode&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-s&lt;br /&gt;
|Toggle ground spoilers armed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===HSD - radar and RWR===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|h&lt;br /&gt;
|Cycles through HSD modes: radar - compas - ECM (RWR)&lt;br /&gt;
|-&lt;br /&gt;
|E&lt;br /&gt;
|Decrease Radar Range&lt;br /&gt;
|-&lt;br /&gt;
|R&lt;br /&gt;
|Increase Radar Range&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-r&lt;br /&gt;
|Toggles Radar Standby Mode. In standby mode the radar doesn't emit and the &amp;quot;STAND BY&amp;quot; words are displayed on the HSD screen when in TID mode.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Carrier operations===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|O   &lt;br /&gt;
|Lower the hook&lt;br /&gt;
|-&lt;br /&gt;
|o   &lt;br /&gt;
|Raise the hook&lt;br /&gt;
|-&lt;br /&gt;
|L   &lt;br /&gt;
|Engage launch bar&lt;br /&gt;
|-&lt;br /&gt;
|C   &lt;br /&gt;
|Release catapult&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Miscellaneous===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|e&lt;br /&gt;
|Toggle canopy and access ladder&lt;br /&gt;
|-&lt;br /&gt;
|u&lt;br /&gt;
|Toggle refuelling probe&lt;br /&gt;
|-&lt;br /&gt;
|w&lt;br /&gt;
|Cycle armament selector&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-o&lt;br /&gt;
|Toggle oversweep (on ground only, otherwise sweep is automatic)&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-v&lt;br /&gt;
|Toggle between RIO (Radar Intercept Officer) and pilot view&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Aircraft help==&lt;br /&gt;
===On Shore Takeoff===&lt;br /&gt;
* With wings on over sweep position (parking position) the elevator command is inhibited... just in case...&lt;br /&gt;
* Check air brake in.&lt;br /&gt;
* Fuel level: The Flightgear F-14 has a '''10% fuel''' level and no external load '''at start up'''. This means the aircraft will be very light and have a strong tendency to raise the nose when accelerating on the runway. With less weight on the nose wheel, the nose wheel steering loose its efficiency. If the pilot use afterburners for take off, the loose of nose wheel steering efficiency is increased (afterburners are not necessary for take off). '''Set a suitable fuel level before take off.''' &lt;br /&gt;
* Flaps: Set full flaps.&lt;br /&gt;
* Elevators: The pilot will need to maintain a correct (leveled) attitude using the stick. Push the stick forward to prevent nose pitching up at the beginning of the take off run, release slightly as speed increase, pull smoothly when reaching rotation speed (150kts).&lt;br /&gt;
* Rudder: Currently the FDM use a small rudder rate of move to damp some nasty oscillations when the rudder is not moved enough smoothly. '''If not anticipated''', this delay will cause overshooting the desired rudder effect, then a strong counter action on the rudder will be applied by the pilot on the rudder with again an overshoot... That's a typical  [http://en.wikipedia.org/wiki/Pilot-induced_oscillation pilot-induced oscillation]. To avoid this set a small amount of rudder, wait for the effect, see if it's enough, then add a small amount of rudder again if needed... when doing so the pilot will prefer increasing the power smoothly. Now the aircraft will quickly gain speed while covering the runway and the rudder effect will increase, thus decreasing the needed delay and the amount of pressure on the stick to match the desired effect.&lt;br /&gt;
&lt;br /&gt;
===Autopilot Operation===&lt;br /&gt;
* The main mode is '''Attitude Hold Mode''', '''Ctrl-t'''. Other Modes need this main mode activated before being selected. Switching off '''Attitude Mode''' disables all other modes . When in '''Attitude Mode''', the autopilot disengages whenever a certain pressure is put on the stick, and it reengages when the stick is back in the center position . '''Attitude Hold Mode''' will hold pitch attitudes up to plus or minus 30 degrees, and bank angles up to plus or minus 60 degrees. &lt;br /&gt;
* It shall be switched off for aerobatics and inverted flight .&lt;br /&gt;
&lt;br /&gt;
====Autopilot Altitude Mode====&lt;br /&gt;
* Once in the Attitude Mode, you can select '''Altitude Mode''' by hitting '''Ctrl-a''', then the '''AP REF''' indicator, (left of the '''VDI''') will illuminate, when at the desired altitude using normal stick control, engage by hitting '''*''', (asterisk) . The autopilot will then maintain your altitude.&lt;br /&gt;
'''CAUTION''' - at high speeds, it is imperative to stabilize your aircraft prior to engaging Altitude Mode !&lt;br /&gt;
&lt;br /&gt;
====Autopilot Heading Mode====&lt;br /&gt;
* Once in the Attitude Mode, you can select '''Heading Mode''' by hitting '''Ctrl-h''' . After maneuvering the aircraft into the desired reference heading, release the control stick at a bank angle of less than 5 degrees . The autopilot will then hold the aircraft on the selected heading.&lt;br /&gt;
&lt;br /&gt;
* Autopilot needs '''SAS''' channels to be engaged, which is the default . '''SAS''' Pitch and Roll channels may be disengaged by actuating switches located on the '''AFCS''' ('''Automatic/Analog Flight Control System''') panel .[[Image:F-14b-sas-switches.png|thumb|270px|SAS Panel.]]&lt;br /&gt;
&lt;br /&gt;
===Landing Automatic Power Control, (APC) Operation===&lt;br /&gt;
* The '''APC''' is a closed loop system that automatically regulates basic engine thrust to maintain the aircraft at an optimum approach angle of attack for landing . &lt;br /&gt;
* Prior to engage '''APC''', gear handle must be down with weight off wheels, and the throttles must be set between 98 percent rpm and 68 percent rpm, (as shown on the panel gauges). &lt;br /&gt;
* Type '''a''' to toggle the '''APC on/off'''. APC is also disengaged by setting the throttles to MIL, (98 percent rpm) or idle, (68 percent rpm) or raising the landing gear handle or when weight on the wheels . &lt;br /&gt;
* When disengaged the '''AUTO THROT''' caution light, (on the left side of the HUD) illuminates for 10 seconds .&lt;br /&gt;
&lt;br /&gt;
===Landing Direct Lift Control, (DLC) Operation===&lt;br /&gt;
* During landing approaches, the spoilers and horizontal stabilizers can be controlled simultaneously to provide glidepath correction without changing power setting or angle of attack.&lt;br /&gt;
&lt;br /&gt;
===Ground Spoilers Operation===&lt;br /&gt;
* Ground spoilers (that is [http://en.wikipedia.org/wiki/Elevon elevons] used as air-brake ) provide additional drag immediately after the touch down. Before the landing, arm the ground spoilers by hitting '''Ctrl-s''' . After the aircraft hits the runway, pull the throttle to idle, then the spoilers (elevons) get fully deployed.&lt;br /&gt;
&lt;br /&gt;
==Pilot's Cockpit==&lt;br /&gt;
[[Image:F-14b-pilots-display-control-panel.jpg|thumb|270px|Pilot's Display Control Panel.]]&lt;br /&gt;
===Displays Control Panel===&lt;br /&gt;
* The Display Control Panel is located on the right side of the pilot's main panel, under the Hook lever. The '''3 botom switches''' respectively turn the '''VDI''', '''HUD''' and '''HSD''' displays '''on/off'''. The '''HSD MODE''' switch is also available, it selects '''NAV''' or '''TID''' or '''ECM''' mode. This can also be achieved by cycling through these 3 modes with the &amp;quot;'''h'''&amp;quot; key. (''Note: the '''NAV MODE''' push buttons - '''TO''', '''CRUISE''', '''A/A''', '''A/G''', '''LDG''' - are not operational yet.'')&lt;br /&gt;
** '''VDI: Vertical Display Indicator'''. Shows the aircraft attitude in roll and pitch, with an artifitial horizon and magnetic heading.&lt;br /&gt;
** '''HUD: Head UP Display'''.&lt;br /&gt;
** '''HSD: Horizontal Situation Display'''. HSD shows either:&lt;br /&gt;
***in '''NAV''' mode: compas with navigation indications,&lt;br /&gt;
***in '''TID''' mode (Tactical Information Display): an horizontal representation of the tactical situation (that is informations provided by the RIO from what he sees in his radar displays).&lt;br /&gt;
***in '''ECM''' mode: a representation of radar threats around the aircraft.&lt;br /&gt;
&lt;br /&gt;
===VHF===&lt;br /&gt;
* Located on the RIO's left console, 3 bands: 30-88 MHz, 108-174 MHz, 225-400 MHz. Modes '''TR''' and '''TR-G''' set '''COMM1'''. Mode '''DF''' sets '''NAV1''', that is '''Direction Finder''' displayed with the single needle in both '''BDHIs''' (Bearing, Distance, Heading Indicator) . You have Comm *or* DF. Storing frequencies (up to 20 channels) '''a - PRESET'''  select the desired channel, '''b - READ''' tune the desired frequency, '''c - LOAD''' stores the frequency in the previously selected channel.&lt;br /&gt;
&lt;br /&gt;
===UHF===&lt;br /&gt;
* Located on the pilot's left console, 225-400 Mhz. ADF is not enabled on this radio.&lt;br /&gt;
&lt;br /&gt;
== Related content ==&lt;br /&gt;
=== Related lists ===&lt;br /&gt;
* [[Aircraft]]&lt;br /&gt;
* [[Aircraft Todo]]&lt;br /&gt;
=== Links ===&lt;br /&gt;
* http://en.wikipedia.org/wiki/F-14 - F-14 Tomcat&lt;br /&gt;
* http://www.globalsecurity.org/military/systems/aircraft/f-14.htm - F-14 Tomcat&lt;br /&gt;
* http://www.fas.org/programs/ssp/man/uswpns/air/fighter/f14.html - F-14 Tomcat &lt;br /&gt;
* http://www.anft.net/f-14/f14-specification.htm - Home of M.A.T.S.&lt;br /&gt;
* http://www.navyair.com/LSO_NATOPS_Manual.pdf - NATOPS LANDING SIGNAL OFFICER MANUAL&lt;br /&gt;
&lt;br /&gt;
{{Grumman}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft]]&lt;br /&gt;
[[Category:Aircraft TODO]]&lt;br /&gt;
[[Category:Military aircraft]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=AI_Systems&amp;diff=20635</id>
		<title>AI Systems</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=AI_Systems&amp;diff=20635"/>
		<updated>2010-04-03T19:55:52Z</updated>

		<summary type="html">&lt;p&gt;Xiii: typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Out of date}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Read the latest document at http://cvs.flightgear.org/viewvc/data/Docs/AI_doc.html?view=markup&lt;br /&gt;
&lt;br /&gt;
== AI Systems in FlightGear ==&lt;br /&gt;
[[FlightGear]] has a number of more or less independently operating systems for simulating semi- intelligent interaction with the environment. Because there oftentimes exists some confusion regarding to which system does what, one should take notice of the differences between them: The major distinction is that between an older ATC/AI system, and a newer AIModels system. The AIModels system can, in turn, be controlled in at least three different ways; directly, using a script, through the multiplayer system, and through a subsystem known as the traffic manager. &lt;br /&gt;
&lt;br /&gt;
  To enable/disable the ATC/AI system: use --prop:/sim/ai-traffic/enabled=[1|0]&lt;br /&gt;
  To enable/disable the AIModels system: use --prop:/sim/ai/enabled=[1|0]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== ATC/AI ==&lt;br /&gt;
The  [[ATC|Air Traffic Control]] system simulates interaction between the user and a number of AI controlled cessna  and piper aircraft. This system can be controlled using the GUI from within FlightGear. The ATC/AI system is no longer maintained and marked for deprecation. Recent reports have indicated that the ATC/AI system may be causing numerical computation problems in some cases, resulting in a flurry of NaN warning messages on the FlightGear console. If you experience this, you might consider shutting down the ATC/AI system &lt;br /&gt;
&lt;br /&gt;
For airports with a tower frequency, if that frequency is tuned in to your radio, you may contact ATC.&lt;br /&gt;
&lt;br /&gt;
To obtain the tower frequencies for an airport within range of ATC, go to the ATC/AI menu, choose Frequencies to display the dialog. If there are any airports within 40nm range, a button with the airport designation will appear. Click see the frequencies. Tune the tower frequency in on the COM1 radio and then hit the single quote key to open the ATC window.&lt;br /&gt;
&lt;br /&gt;
Points:&lt;br /&gt;
* Untowered airports are not supported in any way by ATC.&lt;br /&gt;
* You must be within 40 nautical miles of an ATC facility (towered airport with tower frequencies) to contact ATC.&lt;br /&gt;
&lt;br /&gt;
== AI Models ==&lt;br /&gt;
Starting with FlightGear version 0.9.4 you can place AI objects in the &amp;quot;FlightGear world&amp;quot;. In version 0.9.4 the AI objects can be defined in the preferences.xml file, or in an airplane's *-set.xml file. In later versions they are defined in a &amp;quot;scenario file&amp;quot; only. The types of AI objects you can have are airplanes, ships, thunderstorms, thermals/sinks, static and ballistic objects. AI objects have some things in common: The have a location in the &amp;quot;FlightGear world&amp;quot;, they can have an associated exterior 3D model, and they can move according to an internal [[FDM]] (flight dynamics model). As of now, these objects are created at simulator start-up by adding some XML code to a scenario file. The scenario file must be in the data/AI directory. You select which scenario files you want to use by naming it in the preferences.xml file. The preferences.xml file has an entry that looks like this (FlightGear versions newer than 0.9.4, including CVS): &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ai&amp;gt;&lt;br /&gt;
  &amp;lt;enabled type=&amp;quot;bool&amp;quot;&amp;gt;true&amp;lt;/enabled&amp;gt;&lt;br /&gt;
  &amp;lt;scenario&amp;gt;aircraft_demo&amp;lt;/scenario&amp;gt;&lt;br /&gt;
 &amp;lt;/ai&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The above bit of XML enables the AI system and selects a scenario file called aircraft_demo.xml.&lt;br /&gt;
&lt;br /&gt;
''Notes: &lt;br /&gt;
*XML tags are &amp;lt;i&amp;gt;case-sensitive&amp;lt;/i&amp;gt;.&lt;br /&gt;
*Introducing certain characters into the XML file, even as part of a comment, will cause the file to choke.  These include &amp;amp;, &amp;lt;, and --.''&lt;br /&gt;
&lt;br /&gt;
The scenario file contains one entry for each AI object. The entry specifies what kind of object to create, what its initial conditions will be, and optionally (for aircraft and ships) a flight plan. The entry for a sailboat could look like this:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;entry&amp;gt;&lt;br /&gt;
  &amp;lt;type&amp;gt;ship&amp;lt;/type&amp;gt;&lt;br /&gt;
  &amp;lt;model&amp;gt;models/geometry/sailboat.xml&amp;lt;/model&amp;gt; &lt;br /&gt;
  &amp;lt;speed-ktas type=&amp;quot;double&amp;quot;&amp;gt;12.0&amp;lt;/speed-ktas&amp;gt; &lt;br /&gt;
  &amp;lt;altitude-ft type=&amp;quot;double&amp;quot;&amp;gt;0.0&amp;lt;/altitude-ft&amp;gt;    &lt;br /&gt;
  &amp;lt;longitude type=&amp;quot;double&amp;quot;&amp;gt;-122.33333&amp;lt;/longitude&amp;gt; &lt;br /&gt;
  &amp;lt;latitude type=&amp;quot;double&amp;quot;&amp;gt;37.61667&amp;lt;/latitude&amp;gt;&lt;br /&gt;
  &amp;lt;heading type=&amp;quot;double&amp;quot;&amp;gt;20.0&amp;lt;/heading&amp;gt;&lt;br /&gt;
 &amp;lt;/entry&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Most of the parameters are self-explanitory. The &amp;quot;type&amp;quot; of object can be one of &amp;quot;aircraft&amp;quot;, &amp;quot;ship&amp;quot;, &amp;quot;carrier&amp;quot;, &amp;quot;thunderstorm&amp;quot;, &amp;quot;thermal&amp;quot;, &amp;quot;ballistic&amp;quot; or &amp;quot;static&amp;quot;. The rest of the items give the AI object a model, a starting location, and a starting speed and direction. You use the &amp;lt;MODEL&amp;gt; item to give the object any valid exterior model. You can even make the ship look like an airplane if you want! Note that the speed of the AI object is true airspeed, and since AI aircraft and ships don't feel wind or current then this also the ground speed. The &amp;quot;ship&amp;quot; type can also have a &amp;lt;RUDDER&amp;gt; value specified, which will cause the ship to move in a circle (HINT: use small values, five degrees or less, and right rudder is positive). Here is an example of how to create an aircraft AI object:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;!-- puts an A-4 north of KSFO, orbiting at 7000 ft --&amp;gt;  &lt;br /&gt;
 &amp;lt;entry&amp;gt;&lt;br /&gt;
  &amp;lt;type&amp;gt;aircraft&amp;lt;/type&amp;gt;&lt;br /&gt;
  &amp;lt;class&amp;gt;light&amp;lt;/class&amp;gt; &lt;br /&gt;
  &amp;lt;model&amp;gt;Aircraft/a4/Models/a4-blue.xml&amp;lt;/model&amp;gt; &lt;br /&gt;
  &amp;lt;speed-ktas type=&amp;quot;double&amp;quot;&amp;gt;320.0&amp;lt;/speed-ktas&amp;gt; &lt;br /&gt;
  &amp;lt;altitude-ft type=&amp;quot;double&amp;quot;&amp;gt;7000.0&amp;lt;/altitude-ft&amp;gt; &lt;br /&gt;
  &amp;lt;longitude type=&amp;quot;double&amp;quot;&amp;gt;-122.6&amp;lt;/longitude&amp;gt; &lt;br /&gt;
  &amp;lt;latitude type=&amp;quot;double&amp;quot;&amp;gt;37.9&amp;lt;/latitude&amp;gt;&lt;br /&gt;
  &amp;lt;heading type=&amp;quot;double&amp;quot;&amp;gt;210.0&amp;lt;/heading&amp;gt; &lt;br /&gt;
  &amp;lt;bank type=&amp;quot;double&amp;quot;&amp;gt;-15.0&amp;lt;/bank&amp;gt;&lt;br /&gt;
 &amp;lt;/entry&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It looks much the same as the ship AI code. There are two differences, the &amp;lt;class&amp;gt; item and the &amp;lt;bank&amp;gt; item. If the class is set to &amp;quot;tanker&amp;quot; the airplane will allow you to refuel if you can get close behind it.  The bank is of course similar to the ship's rudder. In the above example the A-4 will be orbiting to the left at 15 degrees of bank. You can also create a ship or airplane with a flight plan. In this case the object will follow the flight plan, and then delete itself when it reaches the end. The flight plans are kept in data/Data/AI/FlightPlans. To create an airplane with a flightplan do this:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;entry&amp;gt;&lt;br /&gt;
  &amp;lt;type&amp;gt;aircraft&amp;lt;/type&amp;gt; &lt;br /&gt;
  &amp;lt;class&amp;gt;jet-transport&amp;lt;/class&amp;gt;&lt;br /&gt;
  &amp;lt;model&amp;gt;Aircraft/737/Models/737.xml&amp;lt;/model&amp;gt;&lt;br /&gt;
  &amp;lt;flightplan&amp;gt;ksfo_ils28l.xml&amp;lt;/flightplan&amp;gt; &lt;br /&gt;
 &amp;lt;/entry&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To make a thunderstorm, use this:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;!-- puts a thunderstorm overhead OSI (Woodside VOR) --&amp;gt;&lt;br /&gt;
 &amp;lt;entry&amp;gt;&lt;br /&gt;
   &amp;lt;type&amp;gt;storm&amp;lt;/type&amp;gt;&lt;br /&gt;
   &amp;lt;model&amp;gt;Models/Geometry/thunderstorm.xml&amp;lt;/model&amp;gt; &lt;br /&gt;
   &amp;lt;speed-ktas type=&amp;quot;double&amp;quot;&amp;gt;20.0&amp;lt;/speed-ktas&amp;gt; &lt;br /&gt;
   &amp;lt;altitude-ft type=&amp;quot;double&amp;quot;&amp;gt;4000.0&amp;lt;/altitude-ft&amp;gt;&lt;br /&gt;
   &amp;lt;latitude type=&amp;quot;double&amp;quot;&amp;gt;37.3917&amp;lt;/latitude&amp;gt; &lt;br /&gt;
   &amp;lt;longitude type=&amp;quot;double&amp;quot;&amp;gt;-122.2817&amp;lt;/longitude&amp;gt; &lt;br /&gt;
   &amp;lt;heading type=&amp;quot;double&amp;quot;&amp;gt;90&amp;lt;/heading&amp;gt;&lt;br /&gt;
 &amp;lt;/entry&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There's not much to it. No, they don't turn :) To create a thermal, use this:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;entry&amp;gt;&lt;br /&gt;
  &amp;lt;type&amp;gt;thermal&amp;lt;/type&amp;gt;&lt;br /&gt;
  &amp;lt;latitude type=&amp;quot;double&amp;quot;&amp;gt;37.61633&amp;lt;/latitude&amp;gt; &lt;br /&gt;
  &amp;lt;longitude type=&amp;quot;double&amp;quot;&amp;gt;-122.38334&amp;lt;/longitude&amp;gt; &lt;br /&gt;
  &amp;lt;strength-fps type=&amp;quot;double&amp;quot;&amp;gt;8.33&amp;lt;/strength-fps&amp;gt; &lt;br /&gt;
  &amp;lt;diameter-ft type=&amp;quot;double&amp;quot;&amp;gt;4000&amp;lt;/diameter-ft&amp;gt; &lt;br /&gt;
  &amp;lt;height-msl&amp;gt;6000&amp;lt;/height-msl&amp;gt;&lt;br /&gt;
  &amp;lt;model&amp;gt;Models/Geometry/thermalcap.xml&amp;lt;/model&amp;gt;&lt;br /&gt;
 &amp;lt;/entry&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The AI thermals don't move, they are invisible, and they don't &amp;quot;lean&amp;quot; downwind. The &amp;lt;strength-fps&amp;gt; defines the maximum vertical velocity of the airmass at the center of the thermal. The strength decreases to zero at the thermal's edge.  A&lt;br /&gt;
model can be assigned to the thermal, and usually this will be a small cloud to mark the thermal's location.  To create a sink, just give a &amp;quot;thermal&amp;quot; a negative strength, and give it a null model.  Please see the demo scenario (thermal_demo.xml) for examples.  &lt;br /&gt;
&lt;br /&gt;
A ballistic AI object starts with an initial azimuth, elevation and speed, then follows a ballistic path from there (with air resistance and wind included). Try this:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;entry&amp;gt;&lt;br /&gt;
  &amp;lt;type&amp;gt;ballistic&amp;lt;/type&amp;gt; &lt;br /&gt;
  &amp;lt;model&amp;gt;Models/Geometry/rocket.xml&amp;lt;/model&amp;gt;&lt;br /&gt;
  &amp;lt;speed-fps type=&amp;quot;double&amp;quot;&amp;gt;500.0&amp;lt;/speed-fps&amp;gt; &lt;br /&gt;
  &amp;lt;altitude-ft type=&amp;quot;double&amp;quot;&amp;gt;50.0&amp;lt;/altitude-ft&amp;gt; &lt;br /&gt;
  &amp;lt;longitude type=&amp;quot;double&amp;quot;&amp;gt;-122.39&amp;lt;/longitude&amp;gt; &lt;br /&gt;
  &amp;lt;latitude type=&amp;quot;double&amp;quot;&amp;gt;37.62&amp;lt;/latitude&amp;gt; &lt;br /&gt;
  &amp;lt;heading type=&amp;quot;double&amp;quot;&amp;gt;200.0&amp;lt;/heading&amp;gt;&lt;br /&gt;
  &amp;lt;azimuth type=&amp;quot;double&amp;quot;&amp;gt;70.0&amp;lt;/azimuth&amp;gt; &lt;br /&gt;
  &amp;lt;elevation type=&amp;quot;double&amp;quot;&amp;gt;45.0&amp;lt;/elevation&amp;gt; &lt;br /&gt;
 &amp;lt;/entry&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note that the speed is now in feet per second.&lt;br /&gt;
&lt;br /&gt;
The AI storm objects can be displayed on weather radar. See the Aircraft/Instruments/wxradar.xml file for details. The AI aircraft objects can be displayed on radar. See the Aircraft/Instruments/radar.xml file for details. &lt;br /&gt;
&lt;br /&gt;
You can make your own AI scenario file, called say my_scenario.xml, and cut/paste entries from the other scenario files to build an AI scenario as complicated as you like.&lt;br /&gt;
&lt;br /&gt;
The following how-to shows you how to animate a tail-dragger airplane so that its pitch attitude looks proper for the AI aircraft's airpeed.  This is not needed for aircraft with tricycle landing gear.&lt;br /&gt;
&lt;br /&gt;
=== Using Interpolation Tables ===&lt;br /&gt;
Interpolation tables are very handy for effecting animations that are non-linear in relation to the property they are referenced to.&lt;br /&gt;
&lt;br /&gt;
They save the use of factors, offsets and min/max values.&lt;br /&gt;
&lt;br /&gt;
For example; relating flap extension to airspeed of an AI model. Typically an aircraft will extend flaps on final approach to control Indicated Airspeed (IAS) and stall speed to affect a low speed controlled landing. Upon touchdown the extra lift efficiency introduced by the flaps is no longer required or desirable, hence the flaps will be retracted ASAP after touch down. &lt;br /&gt;
&lt;br /&gt;
This is relatively simple in a sim aircraft as the /surface-positions/flap-pos-norm property is a normalised indicator of the flap setting chosen by the pilot.&lt;br /&gt;
&lt;br /&gt;
AI aircraft have no pilots to control flaps nor does the flight plan &amp;lt;flaps-down&amp;gt;true/false&amp;lt;/flaps-down&amp;gt; parameter effect the /AI property tree parameter, a relationship to the IAS is the next best choice.&lt;br /&gt;
&lt;br /&gt;
To effect this relationship (IAS/flap-position) using factors/offsets and min/max would be quite difficult and non-intuitive. Using interpolation tables allows the following scenario to be setup very easily and intuitively:&lt;br /&gt;
&lt;br /&gt;
: '''C172P'''&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Max&lt;br /&gt;
| 123 KIAS&lt;br /&gt;
|-&lt;br /&gt;
| Cruise&lt;br /&gt;
| 90 KIAS&lt;br /&gt;
|-&lt;br /&gt;
| Stall (no flaps)&lt;br /&gt;
| 50 KIAS&lt;br /&gt;
|-&lt;br /&gt;
| Flaps&lt;br /&gt;
| 0, 10, 20, 30 deg.&lt;br /&gt;
|-&lt;br /&gt;
| Approach&lt;br /&gt;
| 90 KIAS&lt;br /&gt;
|-&lt;br /&gt;
| 10° flaps&lt;br /&gt;
| 90 KIAS&lt;br /&gt;
|-&lt;br /&gt;
| 20° flaps&lt;br /&gt;
| 70 KIAS&lt;br /&gt;
|-&lt;br /&gt;
| 30° flaps&lt;br /&gt;
| 60 KIAS&lt;br /&gt;
|-&lt;br /&gt;
| Flare &amp;amp; touch down&lt;br /&gt;
| 50 KIAS&lt;br /&gt;
|-&lt;br /&gt;
| Brake&lt;br /&gt;
| 45 KIAS&lt;br /&gt;
|-&lt;br /&gt;
| Retract flaps&lt;br /&gt;
| 45 KIAS&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Table IAS/flap extension'''&lt;br /&gt;
{| border=&amp;quot;2&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
| IAS (kt) || Flaps&lt;br /&gt;
|-&lt;br /&gt;
| 90&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
| 70 - 89&lt;br /&gt;
| 10&lt;br /&gt;
|-&lt;br /&gt;
| 60-69&lt;br /&gt;
| 20&lt;br /&gt;
|-&lt;br /&gt;
| 45-59&lt;br /&gt;
| 30&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; 45&lt;br /&gt;
| 0&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
When the pilot extends the flaps &amp;quot;one notch&amp;quot; they will extend to &amp;quot;10°&amp;quot; etc. In the property tree, these 4 steps will typically be normalised to 0.00, 0.33, 0.66, 1.00.  This will differ from aircraft to aircraft. If the aircraft does not have equal extensions for each &amp;quot;notch&amp;quot; of flaps, the values observed may be; 0.00, 0.10, 0.30, 0.66, 1.00. Modeling this non-linear extension using &amp;quot;factor, offset, min/max&amp;quot; would be extremely difficult if not impossible. Modeling it using interpolation tables is very easy, as you shall see.&lt;br /&gt;
&lt;br /&gt;
For sim animations, the actual physical rotation of the control surface in the real world needs to be researched; this may reveal a linear or non-linear relationship between &amp;quot;nominal flap extension indicator&amp;quot; and physical rotation of the surface. That is, &amp;quot;10 degrees of flap&amp;quot; might only involve rotating the flap surface 5 degrees around its axis in the wing structure. In our 0,10,20,30 scenarios, assuming a linear relationship, 30 degrees of flap would result in the flap being rotated 15 degrees around its wing axis. Therefore the normalised /surface-positions/flap-pos-norm property would have a factor of 15 applied to the rotate animation&lt;br /&gt;
&lt;br /&gt;
The way to change a linear relationship that uses &amp;quot;factor, offset, min/max&amp;quot; in the sim animation to a interpolation table in the AI animation is best understood by examining how &amp;quot;factor, offset, min/max&amp;quot; approach works:&lt;br /&gt;
&lt;br /&gt;
# Take normalised value of the flaps (0=retracted, 1=extended)&lt;br /&gt;
# Apply the factor.&lt;br /&gt;
# Apply the offset&lt;br /&gt;
# Apply the min/max values&lt;br /&gt;
&lt;br /&gt;
e.g.&lt;br /&gt;
 factor=60&lt;br /&gt;
 offset= -30&lt;br /&gt;
 min=-10&lt;br /&gt;
 max+10&lt;br /&gt;
&lt;br /&gt;
these figures are nonsense but are used to illustrate a point:&lt;br /&gt;
&lt;br /&gt;
 flaps retracted(0°) = 0 x 60 = 0, (offset=-30) = -30, (min= -10) = -10&lt;br /&gt;
 flaps extended(10°) = 0.33 x 60 = 20, (offset=-30) = -10, (min= -10) = -10&lt;br /&gt;
 flaps extended(20°) = 0.66 x 60 = 40, (offset=-30) = 10, (min= -10/max=10) = 10&lt;br /&gt;
 flaps extended(30°) = 1.00 x 60 = 60, (offset=-30) = 30, (max=10) = 10&lt;br /&gt;
&lt;br /&gt;
more realistically, offset and min max are not used for flaps, only a factor.&lt;br /&gt;
&lt;br /&gt;
say 27°, this represents the maximum rotation of the 3-D component in the model around its defined axis.&lt;br /&gt;
&lt;br /&gt;
 flaps retracted(0°) = 0 x 27 = 0&lt;br /&gt;
 flaps extended(10°) = 0.33 x 27 = 9&lt;br /&gt;
 flaps extended(20°) = 0.66 x 27 = 18&lt;br /&gt;
 flaps extended(30°) = 1.00 x 27 = 27&lt;br /&gt;
&lt;br /&gt;
from this it can be seen that the 3-D object will be rotated 0°, 9°, 18° &amp;amp; 27° to represent the 0°, 10°, 20° &amp;amp; 30° deployment of the flaps.&lt;br /&gt;
&lt;br /&gt;
Relating this back to the speeds above:&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
| IAS (kt)&lt;br /&gt;
| &amp;lt;rotate&amp;gt; value&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
| 44&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
| 45&lt;br /&gt;
| 27&lt;br /&gt;
|-&lt;br /&gt;
| 59&lt;br /&gt;
| 27&lt;br /&gt;
|-&lt;br /&gt;
| 60&lt;br /&gt;
| 18&lt;br /&gt;
|-&lt;br /&gt;
| 69&lt;br /&gt;
| 18&lt;br /&gt;
|-&lt;br /&gt;
| 70&lt;br /&gt;
| 9&lt;br /&gt;
|-&lt;br /&gt;
| 89&lt;br /&gt;
| 9&lt;br /&gt;
|-&lt;br /&gt;
| 90&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
| 100&lt;br /&gt;
| 0&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
this gives a stepped effect, where the movement is limited to 1knt of airspeed. That is the 3-D object will linearly move from 9° to 18° while the aircraft looses speed from 70 knots to 69 knots. This behaviour will make the need for an upper and lower limit of a stepped value obvious.&lt;br /&gt;
&lt;br /&gt;
a simplified table of:&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
| IAS (kt)&lt;br /&gt;
| &amp;lt;rotate&amp;gt; value&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
| 45&lt;br /&gt;
| 27&lt;br /&gt;
|-&lt;br /&gt;
| 60&lt;br /&gt;
| 18&lt;br /&gt;
|-&lt;br /&gt;
| 70&lt;br /&gt;
| 9&lt;br /&gt;
|-&lt;br /&gt;
| 90&lt;br /&gt;
| 9&lt;br /&gt;
|-&lt;br /&gt;
| 100&lt;br /&gt;
| 0&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
will cause the flaps to start extending at the rate of 1/45 x 27 degrees per knot of airspeed gained until 45 knots when the rate of change will adjust to the new gradient. This is not how flaps behave, but can be used to good effect with &amp;quot;tail dragger&amp;quot; animations where at a certain IAS the tail starts rising, maybe at an increasing rate, until flying attitude is reached when it stops rising any further. The tail rising is not a stepped function of IAS.&lt;br /&gt;
&lt;br /&gt;
Now we have the basic ideas behind interpolation tables, the question is how are they implemented…answer;…easy ….an example of the stepped flaps animation  above&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;interpolation&amp;gt;&lt;br /&gt;
   &amp;lt;entry&amp;gt;&amp;lt;ind&amp;gt;0.000&amp;gt;&amp;lt;/ind&amp;gt;&amp;lt;dep&amp;gt;0.000&amp;lt;/dep&amp;gt;&amp;lt;/entry&amp;gt;&lt;br /&gt;
   &amp;lt;entry&amp;gt;&amp;lt;ind&amp;gt;44.00&amp;gt;&amp;lt;/ind&amp;gt;&amp;lt;dep&amp;gt;0.000&amp;lt;/dep&amp;gt;&amp;lt;/entry&amp;gt;&lt;br /&gt;
   &amp;lt;entry&amp;gt;&amp;lt;ind&amp;gt;45.00&amp;gt;&amp;lt;/ind&amp;gt;&amp;lt;dep&amp;gt;27.00&amp;lt;/dep&amp;gt;&amp;lt;/entry&amp;gt;&lt;br /&gt;
   &amp;lt;entry&amp;gt;&amp;lt;ind&amp;gt;59.00&amp;gt;&amp;lt;/ind&amp;gt;&amp;lt;dep&amp;gt;27.00&amp;lt;/dep&amp;gt;&amp;lt;/entry&amp;gt;&lt;br /&gt;
   &amp;lt;entry&amp;gt;&amp;lt;ind&amp;gt;59.00&amp;gt;&amp;lt;/ind&amp;gt;&amp;lt;dep&amp;gt;27.00&amp;lt;/dep&amp;gt;&amp;lt;/entry&amp;gt;&lt;br /&gt;
   &amp;lt;entry&amp;gt;&amp;lt;ind&amp;gt;60.00&amp;gt;&amp;lt;/ind&amp;gt;&amp;lt;dep&amp;gt;18.00&amp;lt;/dep&amp;gt;&amp;lt;/entry&amp;gt;&lt;br /&gt;
   &amp;lt;entry&amp;gt;&amp;lt;ind&amp;gt;69.00&amp;gt;&amp;lt;/ind&amp;gt;&amp;lt;dep&amp;gt;18.00&amp;lt;/dep&amp;gt;&amp;lt;/entry&amp;gt;&lt;br /&gt;
   &amp;lt;entry&amp;gt;&amp;lt;ind&amp;gt;70.00&amp;gt;&amp;lt;/ind&amp;gt;&amp;lt;dep&amp;gt;9.000&amp;lt;/dep&amp;gt;&amp;lt;/entry&amp;gt;&lt;br /&gt;
   &amp;lt;entry&amp;gt;&amp;lt;ind&amp;gt;89.00&amp;gt;&amp;lt;/ind&amp;gt;&amp;lt;dep&amp;gt;9.000&amp;lt;/dep&amp;gt;&amp;lt;/entry&amp;gt;&lt;br /&gt;
   &amp;lt;entry&amp;gt;&amp;lt;ind&amp;gt;90.00&amp;gt;&amp;lt;/ind&amp;gt;&amp;lt;dep&amp;gt;0.000&amp;lt;/dep&amp;gt;&amp;lt;/entry&amp;gt;&lt;br /&gt;
   &amp;lt;entry&amp;gt;&amp;lt;ind&amp;gt;100.0&amp;gt;&amp;lt;/ind&amp;gt;&amp;lt;dep&amp;gt;0.000&amp;lt;/dep&amp;gt;&amp;lt;/entry&amp;gt;&lt;br /&gt;
 &amp;lt;/interpolation&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here endth Interpolation tables 101&lt;br /&gt;
:-Dene&lt;br /&gt;
&lt;br /&gt;
=== Submodels ===&lt;br /&gt;
Submodels are AI ballistic objects that emanate from, fall from, or launch from the user aircraft.  They are presently used to model smoke, contrails, flares, tracers, bombs, drop tanks and flight path markers. &lt;br /&gt;
&lt;br /&gt;
Submodels are controlled by the submodel manager.  The manager reads a submodel configuration file at the start of the sim session.  This configuration file is written by the aircraft author and defines all the submodels for that particular aircraft.&lt;br /&gt;
&lt;br /&gt;
As an example examine the submodels file in the Aircraft/737-300 directory.  This file creates two submodels which will become the airplane's left and right engine contrails.  Each contrail needs its own submodel definition because the contrails begin at different locations.  Each contrail consists of a train of individual &amp;quot;puff&amp;quot; models that are released in rapid succession as long as the &amp;quot;trigger&amp;quot; property is true.  We ensure an unlimited supply of puffs by setting the &amp;quot;count&amp;quot; parameter to -1. The individual puffs, being AIBallistic objects, will follow their own ballistic paths once released.  In this case we have used the &amp;quot;bouyancy&amp;quot; parameter to negate gravity in the ballistic path.  The puffs have been given a life span of eight seconds.  At cruising speed the [[Boeing 737|737]] will thus have about 400 puffs behind it at any moment.&lt;br /&gt;
&lt;br /&gt;
=== Multiplayer Controlled Traffic ===&lt;br /&gt;
&lt;br /&gt;
FlightGear's multiplayer system also makes use of the AIModels subsystem. See the [[Multiplayer]] page for more information. &lt;br /&gt;
&lt;br /&gt;
=== Traffic Manager Controlled Traffic ===&lt;br /&gt;
Traffic Manager Controlled Input to the AIModels subsystem is also known as Interactive Traffic. See: [[Interactive Traffic]] for more information. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==External links==&lt;br /&gt;
* [http://www.xs4all.nl/~dtalsma/flightgear.html The FlightGear AI aircraft download page]&lt;br /&gt;
&lt;br /&gt;
[[Category:FlightGear feature]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=FlightGear_Newsletter_March_2010&amp;diff=20204</id>
		<title>FlightGear Newsletter March 2010</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=FlightGear_Newsletter_March_2010&amp;diff=20204"/>
		<updated>2010-03-22T18:27:39Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* FlightGear wiki moved to a new server */  typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{newsletter}}&lt;br /&gt;
&lt;br /&gt;
Welcome to the March 2010 edition of the [[FlightGear]] Newsletter. &lt;br /&gt;
&lt;br /&gt;
==From the developers==&lt;br /&gt;
===Shader experiments===&lt;br /&gt;
[[Image:Experimental_Shaders_Urban.jpg|thumb|270px|The experimental urban effect. Notice how the 2D city textures appear to be 3D!]]&lt;br /&gt;
FlightGear developer Fred has been experimenting with the [[shaders]] recently. Altough he is not yet completely satisfied with the results, they are worth to be watched.&lt;br /&gt;
*[http://www.youtube.com/watch?v=kUyH-4c0-qM Landmass effect]&lt;br /&gt;
*[http://www.youtube.com/watch?v=wYb1Vy-uTS0 Urban effect]&lt;br /&gt;
*[http://www.youtube.com/watch?v=t7OeU80vtR8 Urban sunrise to sunset]&lt;br /&gt;
&lt;br /&gt;
===Map Dialog===&lt;br /&gt;
[[File:map1.png|thumb|Basic map display]]&lt;br /&gt;
James is working on a GUI navigational map, which shows information from the GPS and navigation/airport database in a dialog box - similar to the map windows in other flight-simulators. The results aren't as beautiful as [[Atlas]], but are useful for quickly finding a nearby airport or VOR, and for graphically showing waypoints from a route. The code is also a test platform for creating in-panel cockpit displays using similar technology in the near future, and it's already possible to switch the map to show the aircraft track (from the GPS) heading 'up' the screen. In the mode the map can be used as simple navigation display, to stay on a route or align with a localizer.&lt;br /&gt;
&lt;br /&gt;
See [[Map|this wiki page]] for further information on the current status (and bugs) of the code, and some basic instructions.&lt;br /&gt;
&lt;br /&gt;
==In the hangar==&lt;br /&gt;
&lt;br /&gt;
==Scenery Corner==&lt;br /&gt;
&lt;br /&gt;
==Wiki News==&lt;br /&gt;
===FlightGear wiki moved to a new server===&lt;br /&gt;
Probably all of you have noticed the fast amount of 503 errors that showed up lately. The reason for this was that we received a lot of visitors each day, more than the server could handle. After three months, the wiki was finally moved to a new server on the 10th of March. From now on, there should be no more 503 errors popping up. Please [[Help:Contents|contact the wiki admin]] if they do, or if any other problems arise.&lt;br /&gt;
&lt;br /&gt;
==Community News==&lt;br /&gt;
&lt;br /&gt;
===Changes in the Forums===&lt;br /&gt;
&lt;br /&gt;
Gijs de Rooy has become an administrator at the [http://flightgear.org/forums/index.php FlightGear Forums]. As well moderating the forums, Gijs has already made some significant improvements to the Forum organization.&lt;br /&gt;
&lt;br /&gt;
===Another multiplay server===&lt;br /&gt;
Thanks to Charles Ingels (cbz026), there is another [[Howto: Multiplayer|multiplayer]] server in France! This brings the total number of servers to 13, of which 10 in Europe, two in North-America and one in Asia. &lt;br /&gt;
&lt;br /&gt;
Again, we would like to emphasize the importance of connecting to the correct server. The multiplayer servers are interconnected, so you do not need to connect to a specific server in order to see other pilots who are on that server. However, since server02 is overloaded (too many people use that one), not all pilots are shared between the servers. For best performance it is very important connect to the server that is geographically closest to you, has the lowest latency (ping time) or is the least busy.&lt;br /&gt;
&lt;br /&gt;
The complete list of servers and more information about multiplayer is available in the [[Howto: Multiplayer|Multiplayer howto]].&lt;br /&gt;
&lt;br /&gt;
[[Category:FlightGear Newsletter|2010 03]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=FGCom_(before_3.0)&amp;diff=20120</id>
		<title>FGCom (before 3.0)</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=FGCom_(before_3.0)&amp;diff=20120"/>
		<updated>2010-03-19T17:42:05Z</updated>

		<summary type="html">&lt;p&gt;Xiii: fix typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''FGCom''' is an addon for [[FlightGear]]. With FGCom (and the infrastructure behind it), FlightGear now has a realtime voice communication system which enriches the FlightGear capabilities, especially for Multiplayer events, like:&lt;br /&gt;
*flying in groups  (see e.g. the '''Forum Multiplayer Events''' on http://www.flightgear.org/forums/):&lt;br /&gt;
**invite friends to a guided sightseeing tour in your most beloved area or do “Fly In's”&lt;br /&gt;
**do military training like [[Howto: Air-Air Refueling|“Air-Air-Refuelling”]], “Dog fights”, “Escort flights”, etc. &lt;br /&gt;
*offering additional services at an airport like [[Air traffic control|ATC]], [[Vehicle|Snowplows, Pushbacks]], [[FlightGear Race|Racing-Events]] etc.&lt;br /&gt;
*have a [[Dual control|real time flighttraining]] (e.g. pilot in Hongkong, teacher in Sydney) or do [[Soaring|Glider-towing]] or just ask for on-line support during flight or just ask somebody flying a plane of interest about specifics&lt;br /&gt;
*or e.g. just sit in a cockpit in Germany while sightseeing San Francisco in a C172, voice-chatting with a Texan in a plane I dreamed of as a boy (Super Constellation), and both getting informations from a New Zealand guy (it shall be a wonderful island – but do real people live there? He said: Yes!!).&lt;br /&gt;
*etc.&lt;br /&gt;
You can even use it in models without radios - just use the standard FlightGear menu --&amp;gt; Equipment --&amp;gt; Radio Settings.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the future FGCom surely will extend further and surely will get a “Speech to Text” capability in order to also integrate the Text-based automated ATC-routines inside FlightGear.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=='''The Client installation'''==&lt;br /&gt;
===Prequisites===&lt;br /&gt;
====Hardware Requirements====&lt;br /&gt;
If you are satisfied with the operation and responsetimes of your current FGFS installation, then you should see no significant difference after adding the FGCom. If your FGFS installation runs already a little marginal, then you might experience some delays when many new airplane-models etc. must be loaded. This may happen  when starting up at a busy airport. You can monitor/verify such a &amp;quot;short-time overload&amp;quot; in the FGFS command-window.&lt;br /&gt;
&lt;br /&gt;
For details see the FGFS common hardware and driver requirements on http://www.flightgear.org/hardwarereq.html&lt;br /&gt;
&lt;br /&gt;
Of course you will also need a connection to the Internet for this real-time, worldwide voice communication.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
====Software Requirements====&lt;br /&gt;
{| style=&amp;quot;width:75%&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; width=&amp;quot;100&amp;quot; |'''FGFS''' ||The basic Flight-Gear-Flight-Simulation installation. This must be installed prior to installing the FGCom ''(except if installing the Linux &amp;quot;CVS complete&amp;quot; version which can install FGCom and FGFS concurrently)''.&lt;br /&gt;
ref.: http://www.flightgear.org/ &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |'''Multiplayer'''||[[Howto: Multiplayer|“Multiplayer”]] is not an installable program but an integrated function of the FGFS. As the name says, it enables communication of several players via a chat-function (until now per keyboard - now also with this vocal interface: FGCom).&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
====Nice to have====&lt;br /&gt;
{| style=&amp;quot;width:75%&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; | '''FGrun'''||This [[FlightGear Launch Control]] (also known as FG-Wizard), is a graphical front end to start the FGFS. This makes it very easy to startup the FGFS with all it's possible options. In some newer distributions this is already part of the basic FGFS installation package&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |'''MPMap'''||[[MPMap]] is a pure browser application based on Google Maps, so it does not need any installation, except a Web-Browser. With MPMap you can watch all Multiuser-planes worldwide on a road-map, satellite picture or a composite of both. It includes most of the airports, navigational aids, and current weather informations. So it can be used for preflight planning, without having the FGFS started or even installed. But it needs a constant connection to the INTERNET - on the other hand you can do your preflight planning anywhere where there is a PC, connected to the INTERNET.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |'''Runwayfinder'''||This standalone Browser-Application( http://www.runwayfinder.com ) does present a fantastic Fight-Planning tool, showing similar aspects like the &amp;quot;MPMap&amp;quot; but adds an Aeronatical map. It does not link to FGFS or MPMap or Multiplayer -- and covers only the domestic USA. &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |'''Atlas'''||[[Atlas]] displays the current position of your airplane on an landscape type of map together with navigational informations. It derives its data direct out of the installed FGFS databases. So you do not need any connections to the INTERNET.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;center&amp;quot; |'''Festival'''||Festival is a TTS (Text To Speech) system that can convert all in the FGFS displayed written text (ATC, Chat, etc.) into speech and put it on your loudspeakers. ref.: http://www.flightgear.org/Docs/getstart/getstartch5.html#x10-790005.6 &lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
===Installing FGCom===&lt;br /&gt;
====Install on Linux====&lt;br /&gt;
For Linux-Systems there are 3 ways to install:&lt;br /&gt;
&lt;br /&gt;
'''1) Downloading from the “Distributor” (Debian, Ubuntu, Red Hat, Suse, etc.).''' &lt;br /&gt;
*'''Advantage:''' This is the easiest way and ensures that maintenance and services for this package and all concurrencies to it are provided automatically for a reasonable time-frame.&lt;br /&gt;
*'''Disadvantage:''' The availability of those packages is usually very late and most Distributors do not cover all FGFS-features. To our knowledge none of the Distributors has an FGCom package available as of March 2009.&lt;br /&gt;
*'''Installation:''' Follow the usual procedures of your distributer on how to install additional packages.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''2) Installing a “CVS complete”''' &lt;br /&gt;
*'''Advantage:''' It is the very easiest form of installation and installs in one step all prerequisite/companion modules (FGFS, FGrun, FGcom, PLIB, OSG, Simgear, AT). Also it can be added and removed from the system without disturbing the rest of the system (Libraries, Menus, Structures, etc.). It was tested on several Ubuntu and Debian systems.&lt;br /&gt;
*'''Disadvantage:''' No automated maintenance available. The handling is a little different from the standard Menu-driven practice.&lt;br /&gt;
*'''Installation:'''   http://wiki.flightgear.org/index.php/Scripted_Compilation_on_Linux_Debian/Ubuntu&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''3) Compiling it locally: ''' http://code.google.com/p/fgcomgui/wiki/Linux_Installation&lt;br /&gt;
*'''Advantage:''' After a successful installation it is integrated into the system like a package from the distributor.&lt;br /&gt;
*'''Disadvantage:''' No automated maintenance available. Also the user should have some basic knowledge of his system and it's devices.&lt;br /&gt;
*'''Installation:''' See the Instruction on: http://code.google.com/p/fgcomgui/wiki/Linux_Installation&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''Then continue with testing on: ''' http://wiki.flightgear.org/Index.php/FGCOM_Testing &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Install on Windows====&lt;br /&gt;
Please use the Windows-Installation description on http://wiki.flightgear.org/index.php/FGCOM_for_Windows&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
====Install on Mac====&lt;br /&gt;
You can download the &amp;quot;MAC OSX Binary&amp;quot; from the FGFS download-center ( http://www.flightgear.org/Downloads/binary.shtml#mac ). The current version of the code does contain the FGCOM. &lt;br /&gt;
&lt;br /&gt;
But '''you do need OS X 10.5''' as prerequisite. With lower versions you will end up with a generic &amp;quot;bus error&amp;quot; message!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
===Testing===&lt;br /&gt;
During testing&lt;br /&gt;
#we will test the basic FGCOM-functions without the FGFS&lt;br /&gt;
#after that we test the FGCOM together with the FGFS&lt;br /&gt;
#finally we test/adjust the Microphone and Loudspeaker system&lt;br /&gt;
&lt;br /&gt;
For these tests please see the [[FGCOM_Testing|FGCOM_Testing]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
===Functional Test + User Briefing===&lt;br /&gt;
&lt;br /&gt;
Experiences pointed out, that the cooperation FGCom/FGFS works more reliable, if the FGFS gets started first. So we will start with setting up a flight-test-environment:&lt;br /&gt;
====Start the FGFS====&lt;br /&gt;
We suggest to use the FGrun ([[FlightGear Launch Control]]) to define required and/or proposed settings, in order to avoid typo-errors etc. If you keep the “Show command line” active (compare item 3 following), you also get the correct writing for all the command-options (in case you later want to start from a command-line and/or out of a script). In the following we will just point out those commands which are significant for the FGCom-operation:&lt;br /&gt;
&lt;br /&gt;
If you don't have an Icon available to start the FGrun, then&lt;br /&gt;
*use a [[Command line|command-window]]&lt;br /&gt;
*change into the directory in which FGFS was installed &lt;br /&gt;
*and start the program from there:&lt;br /&gt;
{|border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
|-&lt;br /&gt;
|width=&amp;quot;150&amp;quot;|for linux CVS e.g.:&lt;br /&gt;
|width=&amp;quot;250&amp;quot;|cd ~/fgfs&amp;lt;br&amp;gt;sh ./run_fgrun.sh &lt;br /&gt;
|-&lt;br /&gt;
||for Std. Linux e.g.: ||fgrun&lt;br /&gt;
|-	&lt;br /&gt;
||for Windows e.g.: ||D:&amp;lt;br&amp;gt;cd 'C:\Program Files\Flightgear\win32'&amp;lt;br&amp;gt;fgrun.exe&lt;br /&gt;
|-&lt;br /&gt;
||for Mac: || ||&lt;br /&gt;
|}&lt;br /&gt;
Wait for the Program-Window to start and then define:&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
'''1)''' Start by '''choosing an airplane'''. For this first try we suggest the c172p, so we have a common understanding in the following. Also be aware of some airplane-designers reassigning keyboard-keys (e.g. the “space-bar”), thus you may not have the  PTT-key (“Push To Talk”) available. See [[FGCOM#Tips and Tricks]]&amp;lt;br&amp;gt; &lt;br /&gt;
→ Click “Next”&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
'''2)''' As '''starting place''' please define the airport KPAO (Palo Alto)  runway 13, so we all see the same messages in the following reports. A second reason for KPAO is of course that KPAO comes already with the basic scenery-package, and thus is available for everybody.&amp;lt;br&amp;gt;&lt;br /&gt;
→ Click “Next”&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
'''3)''' Define the '''Multiplayer options:''' (ref. wiki [[Howto: Multiplayer]] for details)&lt;br /&gt;
{|&lt;br /&gt;
|+&lt;br /&gt;
|-&lt;br /&gt;
|width=610|[[image:FGrun_base.jpg|thumb|left|600px|Basic + Multiplayer Options]]&lt;br /&gt;
|“AI models” must be activated in order to see all traffic&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;“Multiplayer” must be activated&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;type “'''mpserverXX.flightgear.org'''” into the field “Hostname:”, replace “XX” with the server number nearest you - select it in http://pigeond.net/flightgear/mpstatus/. Actually it does not matter which server you take (as long as it is online) - you might try which server gives you the best response-times.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Insert your “Callsign:” (max. 7 characters)&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;define the “in” and “out” ports both with the standard “5000”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;With &amp;quot;Load/Save as&amp;quot; you may build up yourself a library of settings for different airports.&lt;br /&gt;
|}→ Click “Advanced”&amp;lt;br&amp;gt;&lt;br /&gt;
'''4)''' In the “'''Advanced Options'''” check the following sections (click/select them in the left column):&lt;br /&gt;
#General: Those settings were defined before. Check “Control”, if needed select your input device (Joystick, Keyboard, or Mouse).&lt;br /&gt;
#Features: “AI Traffic” should be activated already&lt;br /&gt;
#Initial Position: &lt;br /&gt;
{|&lt;br /&gt;
|+&lt;br /&gt;
|-&lt;br /&gt;
|width=420|[[image:FGrun_IP.jpg|thumb|left|400px|Advanced: Initial Position]]&lt;br /&gt;
|&lt;br /&gt;
You may define here an unique “starting/parking” position outside a runway. Thus you could avoid starting on top of another player, because most of them pile up at the end of a runway. You can look up a position in the MPMap: ''(see next item)''&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;''Be aware that any data defined here override already predefined data (e.g. also an airport and runway). So '''do not forget''' to change/delete the here defined positions if some time you want to start from another airport.'' Of course you may save/reload settings for different airports, see &amp;quot;Load/save as&amp;quot; on the main window.&lt;br /&gt;
|}&lt;br /&gt;
Open  http://mpmap01.flightgear.org&lt;br /&gt;
{|&lt;br /&gt;
|+&lt;br /&gt;
|-&lt;br /&gt;
|width=510|[[image:MPmap.jpg|thumb|left|500px|Preflight]]&lt;br /&gt;
|&lt;br /&gt;
*if the control-panel is not visible click onto &amp;quot;FGMap | mpserver01:5000 | pilots: 7”&lt;br /&gt;
*click on “nav”&lt;br /&gt;
*disable all options except “apt code”&lt;br /&gt;
*type “KPAO” into the filed “Navaids lookup”&lt;br /&gt;
*hit ENTER or click onto the reading-glass symbol&lt;br /&gt;
*click onto the appearing line “Airport KPAO Palo Alto Arpt Of Santa Clara Co”&lt;br /&gt;
*now you could/should support your preflight planning by clicking onto the wedge in the upper right corner after the airport name and then analyze all data given under “info”, “atc”, metar”, and “links” &lt;br /&gt;
*then zoom into the airport&lt;br /&gt;
*set the mouse over the wanted “Parking lot” and read that position in the upper right corner of the screen&lt;br /&gt;
*type those long/lat values into the field below and also the wanted heading of the plane while parking&lt;br /&gt;
|}&lt;br /&gt;
'''5) Network:''' &lt;br /&gt;
{|&lt;br /&gt;
|+&lt;br /&gt;
|-&lt;br /&gt;
|width=420|[[image:FGrun_net.jpg|thumb|left|400px|Preflight]]&lt;br /&gt;
|Those data you have already predefined on the Base-Page. But in case you have network-problems (may be due to many PC's on a home-network with even more LAN-cards) you may specify here your actual IP-Adress.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;WARNING: When saving these settings and reloading them again, FGrun might replace the given IP-Nr. by the PC-name. As of March 2009 you then have to replace that again with the IP-Nr. So use it only if you have to - first try it by adding nothing between the &amp;quot;,,&amp;quot;. Keep it as &amp;quot;in,10,,5000&amp;quot;.&lt;br /&gt;
|}&lt;br /&gt;
If you need to '''define the unique IP-Address''', open a [[Command line|command-window]] and type&lt;br /&gt;
{|border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
|width=&amp;quot;100&amp;quot;|OS&lt;br /&gt;
|width=&amp;quot;75&amp;quot;|'''to type''' &lt;br /&gt;
|width=&amp;quot;40&amp;quot;|Cap. ||returned values&lt;br /&gt;
|-&lt;br /&gt;
||for linux: ||ifconfig ||eth0 ||&lt;br /&gt;
Link encap:Ethernet  HWaddr 00:1d:92:80:a6:ab&lt;br /&gt;
&amp;lt;br&amp;gt;inet addr:'''192.168.178.23'''  Bcast:192.168.178.255  Mask:255.255.255.0 &lt;br /&gt;
|-	&lt;br /&gt;
||for Windows: ||ipconfig /all ||et ||&lt;br /&gt;
Physikalische Adresse . . . . . . : 00-16-E6-40-AB-BF&lt;br /&gt;
&amp;lt;br&amp;gt;DHCP aktiviert. . . . . . . . . . : Ja &lt;br /&gt;
&amp;lt;br&amp;gt;Autokonfiguration aktiviert . . . : Ja &lt;br /&gt;
&amp;lt;br&amp;gt;IP-Adresse. . . . . . . . . . . . : '''192.168.178.20''' &lt;br /&gt;
&amp;lt;br&amp;gt;Subnetzmaske. . . . . . . . . . . : 255.255.255.0 &lt;br /&gt;
&amp;lt;br&amp;gt;IP-Adresse. . . . . . . . . . . . : fe80::216:e6ff:fe40:abbf%4&lt;br /&gt;
|-&lt;br /&gt;
||for Mac: || || || &lt;br /&gt;
|}&lt;br /&gt;
The  '''192.168.178.23''' (or '''20''') is the number you would have to input between the two commas. Be very careful and double-check that you do not mistype “.” and “,”!!&lt;br /&gt;
&lt;br /&gt;
'''6) Input/Output:''' &lt;br /&gt;
{|&lt;br /&gt;
|+&lt;br /&gt;
|-&lt;br /&gt;
|width=420|[[image:FGrun_IO.jpg|thumb|left|400px|Preflight]]&lt;br /&gt;
|You do need a &amp;quot;generic&amp;quot; line as shown, because '''this defines the interface between FGFS and FGCom'''.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
To input a new line: Start by selecting “generic” in the field “Protocol”. Then hit “New” and define the rest as shown.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Editing an existing line: Start by clicking onto the existing one, then change as required.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Deleting an existing Line: Click onto the line to be deleted, then hit &amp;quot;Delete&amp;quot;&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''7) Avionics:''' let's define:		&lt;br /&gt;
{|&lt;br /&gt;
|+&lt;br /&gt;
|-&lt;br /&gt;
|width=&amp;quot;50&amp;quot;| &lt;br /&gt;
|width=&amp;quot;60&amp;quot;|Nav1:&lt;br /&gt;
|width=&amp;quot;100&amp;quot;|114.10 ||San Jose VOR&lt;br /&gt;
|-&lt;br /&gt;
| ||Nav2: || 115.80 ||SF  VOR&lt;br /&gt;
|-&lt;br /&gt;
| ||ADF: || 379 || Brijj, beacon at SF&lt;br /&gt;
|}&lt;br /&gt;
and activate: DME   to Nav1&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
There is no field to input COM-radios, but remember them for setting them later manually:&lt;br /&gt;
{|&lt;br /&gt;
|+&lt;br /&gt;
|-&lt;br /&gt;
|width=&amp;quot;50&amp;quot;| &lt;br /&gt;
|width=&amp;quot;60&amp;quot; |Com1&lt;br /&gt;
|width=&amp;quot;100&amp;quot; |118.60 ||Paolo Alto&lt;br /&gt;
|-&lt;br /&gt;
| ||Com2 || 120.50	|| San Francisco&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''8) Properties:''' &lt;br /&gt;
Here you can define any presetting for any values in the FGFS.&amp;lt;br&amp;gt;see e.g.: FGFS-menu-bar --&amp;gt; File --&amp;gt; “Browse Internal Properties”&lt;br /&gt;
{|&lt;br /&gt;
|+&lt;br /&gt;
|-&lt;br /&gt;
|width=520|[[image:FGrun_prop.jpg|thumb|left|500px|Preflight]]&lt;br /&gt;
|&lt;br /&gt;
e.g. I personally do not want the plane to start rolling without me telling it to. So I set the parking break as default at startup.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Input a new line: Just hit “New” and type your string.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Edit a line: Be sure first to click onto an existing item and then edit this “Property”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Delete a line: Click onto the line to be deleted then hit &amp;quot;Delete&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
Hit “OK” → “Run” and watch the FGFS starting. If screen-place allows you may want to pull the shown &amp;quot;FGFS Report-Window&amp;quot; to the side and watch how busy your PC is while loading the other multi-player models.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Start the FGCom====&lt;br /&gt;
Open a [[Command line|command-window]] and change into the directory in which FGCom was installed (probably the same as the FGFS) and start the FGCom. Do not use any other options than the server address “-Sfgcom.flightgear.org.uk”:&lt;br /&gt;
{|border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
|-&lt;br /&gt;
|width=&amp;quot;150&amp;quot;|for linux CVS e.g.:&lt;br /&gt;
|width=&amp;quot;250&amp;quot;|cd ~/fgfs&amp;lt;br&amp;gt;sh ./run_fgcom.sh &lt;br /&gt;
||for this “CVS complete” you do not need to specify the server address, because it is embedded in the script-file.&lt;br /&gt;
|-&lt;br /&gt;
||for Std. Linux e.g.: ||fgcom -Sfgcom.flightgear.org.uk ||&amp;quot;-Sfgcom...&amp;quot; with capital &amp;quot;S&amp;quot;&lt;br /&gt;
|-	&lt;br /&gt;
||for Windows e.g.: ||cd 'C:\Program Files\Flightgear\win32'&amp;lt;br&amp;gt;fgcom.exe -Sfgcom.flightgear.org.uk ||&amp;quot;-Sfgcom...&amp;quot; with capital &amp;quot;S&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
||for Mac: || ||&lt;br /&gt;
|}&lt;br /&gt;
For the following test position this command-window somewhere, where you can monitor it throughout the test.&lt;br /&gt;
&lt;br /&gt;
The first response should be:&lt;br /&gt;
   /fgcom - a communication radio based on VoIP with IAX/Asterisk &lt;br /&gt;
   (c)2007 by H. Wirtz &amp;lt;wirtz@dfn.de&amp;gt; &lt;br /&gt;
   Version 1.2.2 build 206M &lt;br /&gt;
   Using iaxclient library Version SVN 206M &lt;br /&gt;
   &lt;br /&gt;
   Successfully parsed command-line options. &lt;br /&gt;
   Reading list of airports...done. &lt;br /&gt;
   Initializing IAX client as guest:xxxxxxxxxxx@fgcom.flightgear.org.uk&lt;br /&gt;
If your printout up to that line is different go back to chapter [[FGCOM#Test the basic function|Test the basic function]]&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|+&lt;br /&gt;
|-&lt;br /&gt;
|width=&amp;quot;300&amp;quot;| ||&lt;br /&gt;
|-&lt;br /&gt;
|1) If, due to a prior flight, COM1 was set to anything else but 118.600 (e.g. to 119.650) you will see the following 2 lines added to the initialization of the FGCom-window: ||&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
 Selected frequency: 119.650 &lt;br /&gt;
 Call rejected by remote&lt;br /&gt;
|&lt;br /&gt;
Instead of  “119.650” there will be shown the last used frequency. In this case the source of the nearest ATC-Freq. 119.650 is more than 50km away from your actual position of the airplane, so FGCom rejects a connection to it. If the last frequency used would have been within 50 km you get an indication very similar to the next item.&lt;br /&gt;
|-&lt;br /&gt;
|2) Switch COM1 to 118.60 (needed at Palo Alto):&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
 Selected frequency: 118.600 &lt;br /&gt;
 Hanging up call 0 &lt;br /&gt;
 Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 0.6 km) &lt;br /&gt;
 Call 0 accepted &lt;br /&gt;
 Call 0 answered &lt;br /&gt;
 Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 0.6 km) &lt;br /&gt;
|This last line will be repeated according the to time span you defined in the “Input/Output” command “--generic=socket,in,'''10''',,5500,tcp”, you may change that value later according to your preferences.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;br&amp;gt;3) Press your PTT (PushToTalk on space-bar and joystick, as available):&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
 [SPEAK] unmute mic, mute speaker &lt;br /&gt;
 [LISTEN] mute mic, unmute speaker &lt;br /&gt;
 [SPEAK] unmute mic, mute speaker &lt;br /&gt;
 [LISTEN] mute mic, unmute speaker &lt;br /&gt;
|Only in between “SPEAK” and “LISTEN” you are able to talk to others.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;br&amp;gt;Now lets set/verify the other Radios:&lt;br /&gt;
*COM2 = 120.50	San Francisco&lt;br /&gt;
*NAV1  = 114.10	San Jose&lt;br /&gt;
*NAV2  = 115.80	San Francisco&lt;br /&gt;
4) Pressing Upper+Space will switch to the next radio: '''NAV1'''&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
 Radio-Select: NAV1 &lt;br /&gt;
 Selected frequency: 114.100 &lt;br /&gt;
 Hanging up call 0 &lt;br /&gt;
 Call rejected by remote &lt;br /&gt;
 [LISTEN] mute mic, unmute speaker &lt;br /&gt;
|Compare this to the NAV2 indication 2 steps later: something is wrong – and it wasn't your fault: Although this NAV is valid (see ...FGFS/data/Airports/apt.dat.gz), it is missing in the FGCom listing .../FGCom/positions.txt. I encountered this problem several times, as well for Airports as also for VOR's. If this happens with your most beloved airport you can add those missing data with a text-editor. But before changing be sure to save the original data somewhere - just in case!&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;br&amp;gt;5) Pressing Upper+Space once more switches to '''COM2'''&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
 Radio-Select: COM2 &lt;br /&gt;
 Selected frequency: 120.500 &lt;br /&gt;
 Airport San Francisco Intl (KSFO TWR at 120.500 MHz) is in range (29.1 km) &lt;br /&gt;
 [LISTEN] mute mic, unmute speaker &lt;br /&gt;
 Call 0 accepted &lt;br /&gt;
 Call 0 answered&lt;br /&gt;
|That looks OK: San Francisco is about 29 km away&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;watch the “km” instead of miles!&amp;lt;br&amp;gt;'''10 km''' = '''6.2137 mi'''&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;br&amp;gt;6) Pressing Upper+Space once more switches to '''NAV2'''&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
 Radio-Select: NAV2 &lt;br /&gt;
 Selected frequency: 115.800 &lt;br /&gt;
 Hanging up call 0 &lt;br /&gt;
 Airport SAN FRANCISCO VOR-DME (SFO VOR at 115.800 MHz) is in range (28.5 km) &lt;br /&gt;
 Call 0 accepted &lt;br /&gt;
 Call 0 answered &lt;br /&gt;
 [LISTEN] mute mic, unmute speaker &lt;br /&gt;
|And Yes: The SF VOR is just a little closer than the airport(center)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;br&amp;gt;7) Pressing Upper+Space once more brings back '''COM1''':&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
 Radio-Select: COM1 &lt;br /&gt;
 Selected frequency: 118.600 &lt;br /&gt;
 Hanging up call 0 &lt;br /&gt;
 Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 0.6 km) &lt;br /&gt;
 Call 0 accepted &lt;br /&gt;
 Call 0 answered &lt;br /&gt;
 [LISTEN] mute mic, unmute speaker &lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;br&amp;gt;8) Lets us start and continue flying in the direction about 130°:&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
 Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 0.4 km) &lt;br /&gt;
 Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 0.2 km) &lt;br /&gt;
 Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 0.7 km) &lt;br /&gt;
 Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 1.3 km) &lt;br /&gt;
 Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 1.9 km) &lt;br /&gt;
 Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 2.4 km) &lt;br /&gt;
|notice that you first come closer (to the center of the airport) and after that getting away&lt;br /&gt;
|-		&lt;br /&gt;
|&amp;lt;br&amp;gt;9) Let's switch to '''COM2''' (San Francisco) and watch: &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
 Radio-Select: COM2 &lt;br /&gt;
 Selected frequency: 120.500 &lt;br /&gt;
 Airport San Francisco Intl (KSFO TWR at 120.500 MHz) is in range (37.8 km) &lt;br /&gt;
 Call 0 accepted &lt;br /&gt;
 Call 0 answered &lt;br /&gt;
 [LISTEN] mute mic, unmute speaker &lt;br /&gt;
 Airport San Francisco Intl (KSFO TWR at 120.500 MHz) is in range (38.6 km) &lt;br /&gt;
 Airport San Francisco Intl (KSFO TWR at 120.500 MHz) is in range (39.5 km) &lt;br /&gt;
 .. &lt;br /&gt;
 Airport San Francisco Intl (KSFO TWR at 120.500 MHz) is in range (49.7 km) &lt;br /&gt;
 Hanging up call 0 &lt;br /&gt;
 Radio-Select: NAV2 &lt;br /&gt;
 Selected frequency: 115.800 &lt;br /&gt;
 Call rejected by remote &lt;br /&gt;
 [LISTEN] mute mic, unmute speaker &lt;br /&gt;
|That means: at about 50KM we are getting out of range and thus the on COM2 active SF getts terminated. Notice that also the inactive NAV2 gets terminated, because it exceeded the allowable range at about the same time!&lt;br /&gt;
|}&lt;br /&gt;
10) You could turn now and watch the opposite: At about the same distance those two will become active again (automatically, if you did not change the settings).&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
If you got here without any (technical) problems your FGCom is fully functional. Have fun when using it.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Using FGCom===&lt;br /&gt;
There are basically 3 types of FGCOM-usage: (ref. the introduction to this wiki-page]]):&lt;br /&gt;
*'''Normal usage at airports:''' i.e. You set your radio to the airport as usual. Thus you are set up for the usual ATC-(keyboard)-procedures (either through the &amp;quot;'&amp;quot; (UpperCase#) and/or the Chat-Menus). In addition you then can talk to anybody in a radius of about 50 km (about 30 miles) around the airport, may that be friends, a maintained FGCOM-ATC/Twr-Operator, airport utilities, etc.. Be aware that as of April 2009 only very few planes are using the FGCOM for ATC-purposes - thus you should always use the ATC-Chat &amp;quot;keyboard&amp;quot;-procedures to announce arrivals/departures/taxiing etc. in addition. (We hope that may change in some future!)&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
*The '''AirToAir frequencies (122.75 and 123.45)''' are ideal for all Multiplayer events. They are without any range-limitations - and not yet &amp;quot;overcrowded!). Also when traveling you might want to listen on the 122.75 for others who want to contact you (or reverse). When there is much &amp;quot;talk&amp;quot; on the 122.75 you might just arrange with your partner to switch to 123.45 - and return to 122.75 afterward. As of April 2009 the 122.75 is already operational for this application, the 123.45 will follow soon. You may try from time to time if this limitations still exist.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
*Finally you can manipulate the frequency-tables (positions.txt in your FGFS/FGCOM local directory) and define an own frequency for special events. e.g. a Flight-School at one airport with maybe multiple student-groups. Of course those are local manipulations on your own PC, which you have to agree on with your (planned to be) partners in advance.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
===Supplemantery Informations===&lt;br /&gt;
====Tips and Tricks====&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
=====Airport missing in FGCom:=====&lt;br /&gt;
In case your favorite airport does not show up in the FGCOM (command-window), although you can tune your COMM to it, you can add it to your data-file “'''positions.txt'''” in your fgcom directory. See e.g. the line &lt;br /&gt;
   KSFO,120.500,37.616630,-122.385478,TWR,San Francisco Intl&lt;br /&gt;
You can add extra lines for any locations you want. e.g.: (watch the separation comas)&lt;br /&gt;
 apt-code = DUMY   (a &amp;quot;dummy&amp;quot; or your favorite, but missing, airport code)&lt;br /&gt;
 KHz      = take it out of your “FGFS-home/data/Airports/apt.dat.gz”&lt;br /&gt;
            or just take one of which you are sure that you do not need it in the FGFS-reality&lt;br /&gt;
            (notice that several Airports (far apart) use same frequencies!&lt;br /&gt;
 long/lat = take out of the Mpmap (or Google Map)&lt;br /&gt;
 type     = whatever&lt;br /&gt;
 name     = whatever&lt;br /&gt;
''(of course those definition are only known to your own PC and last only until the next data update!)''&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=====Editing FGCOM-Data-Files=====&lt;br /&gt;
If you edit Textfiles (e.g. Radio-listings) or xml-files you might not see line-endings when using your standard editor.&lt;br /&gt;
*For windows you can use &amp;quot;WordPad&amp;quot;&lt;br /&gt;
*For Linux the &amp;quot;gedit&amp;quot; works fine&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=====Copying-Printing this WIKI-Page'''=====&lt;br /&gt;
If you absolutely want to have a local copy of this on your PC or need a hard-copy, then:&lt;br /&gt;
*goto this page: ( http://wiki.flightgear.org/index.php/FGCOM )&lt;br /&gt;
*to copy:&lt;br /&gt;
**select in the Browser-Menu: &amp;quot;File&amp;quot; --&amp;gt; &amp;quot;Save Page as.. &amp;quot;&lt;br /&gt;
*to print:&lt;br /&gt;
**select the last entry in the sidebar on the left:  &amp;quot;Printable version&amp;quot;&lt;br /&gt;
**Then I suggest: Menu --&amp;gt; File --&amp;gt; &amp;quot;Page Setup&amp;quot;: Set to &amp;quot;Landscape&amp;quot; --&amp;gt; &amp;quot;Apply&amp;quot;&lt;br /&gt;
**before printing I recommend: Menu --&amp;gt; File --&amp;gt; &amp;quot;Print Preview&amp;quot; and you see those many many pages!&lt;br /&gt;
**If you really want to wast that paper: Menu --&amp;gt; &amp;quot;File&amp;quot; --&amp;gt; &amp;quot;Print&amp;quot; and it will print on your favorite printer&lt;br /&gt;
&amp;lt;!-- Remember the policies: '''Private use only''' ! --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=====Joystick compatibility between Operating Systems:=====&lt;br /&gt;
ref also: [[Joystick]]&amp;lt;br&amp;gt;&lt;br /&gt;
You may use the same joystick-definitions across all Operating-Systems: But you may need to change the assigned numbers - your joystick-vendor might have done that for you already. Check e.g. (Unix, Mac, Win having assigned different &amp;quot;numbers&amp;quot;):&lt;br /&gt;
 &amp;lt;axis&amp;gt;        (instead of the usual &amp;lt;axis n=”3”&amp;gt; )&lt;br /&gt;
  &amp;lt;desc&amp;gt;Mixture&amp;lt;/desc&amp;gt; &lt;br /&gt;
  &amp;lt;number&amp;gt; &lt;br /&gt;
   &amp;lt;unix&amp;gt;3&amp;lt;/unix&amp;gt; &lt;br /&gt;
   &amp;lt;mac&amp;gt;5&amp;lt;/mac&amp;gt; &lt;br /&gt;
   &amp;lt;windows&amp;gt;5&amp;lt;/windows&amp;gt; &lt;br /&gt;
  &amp;lt;/number&amp;gt; &lt;br /&gt;
  &amp;lt;binding&amp;gt; &lt;br /&gt;
   &amp;lt;command&amp;gt;nasal&amp;lt;/command&amp;gt; &lt;br /&gt;
   &amp;lt;script&amp;gt;controls.mixtureAxis()&amp;lt;/script&amp;gt; &lt;br /&gt;
  &amp;lt;/binding&amp;gt; &lt;br /&gt;
 &amp;lt;/axis&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=====assign PTT to Joystick and PTT=====&lt;br /&gt;
If you want to assign the PushToTalk function to your joystick, add the following (for n you have to find your own number!)&lt;br /&gt;
 &amp;lt;button n=&amp;quot;x&amp;quot;&amp;gt; &lt;br /&gt;
  &amp;lt;desc&amp;gt;PTT - Push To Talk&amp;lt;/desc&amp;gt; &lt;br /&gt;
  &amp;lt;binding&amp;gt; &lt;br /&gt;
   &amp;lt;command&amp;gt;nasal&amp;lt;/command&amp;gt; &lt;br /&gt;
   &amp;lt;script&amp;gt;controls.ptt(1)&amp;lt;/script&amp;gt; &lt;br /&gt;
  &amp;lt;/binding&amp;gt; &lt;br /&gt;
  &amp;lt;mod-up&amp;gt; &lt;br /&gt;
   &amp;lt;binding&amp;gt; &lt;br /&gt;
    &amp;lt;command&amp;gt;nasal&amp;lt;/command&amp;gt; &lt;br /&gt;
    &amp;lt;script&amp;gt;controls.ptt(0)&amp;lt;/script&amp;gt; &lt;br /&gt;
   &amp;lt;/binding&amp;gt; &lt;br /&gt;
  &amp;lt;/mod-up&amp;gt; &lt;br /&gt;
 &amp;lt;/button&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Helpfull INTERNET Adresses====&lt;br /&gt;
'''World-Time:''' &lt;br /&gt;
*for standard deviations:http://www.timeanddate.com/worldclock/custom.html?sort=1&lt;br /&gt;
*for direct conversions: http://www.timezoneconverter.com/cgi-bin/tzc.tzc&lt;br /&gt;
Especially for multiplayer events you should define all times in the internationally used GMT (Greenwich Meantime). Just pick up your deviation from GMT and memorize it. If everybody does it, we could avoid a lot of misunderstandings.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
'''Decimal to Degree''' http://www.hbnweb.de/mathematik/grad-dezimal.html &amp;lt;br&amp;gt;&lt;br /&gt;
Some programs need Decimal Lon/Lat values, others the Degrees/Minutes/Sec. Just convert it.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
'''Miles, km, feet, etc. etc. ...''': http://www.convertunits.com/&lt;br /&gt;
&amp;lt;br&amp;gt;If like to avoid troubles (like e.g. NASA lost a satellite because of it) just look it up.&lt;br /&gt;
&lt;br /&gt;
'''Ports needed'''&amp;lt;br&amp;gt;&lt;br /&gt;
In case of problems over the INTERNET you might check that the the following ports are allowed:&lt;br /&gt;
 1314	TCP	if the Festival-Server is used for Text/Sound &lt;br /&gt;
 2005	UDP	Vcp-Stream&lt;br /&gt;
 4569	UDP	FGCom  VoIP, (Inter-Asterisk eXchange)&lt;br /&gt;
 5000	UDP	in/out Multiplayer    (VPN Sftw.)&lt;br /&gt;
 5001	UDP	Enable HTTP-server&lt;br /&gt;
 5002	UDP	Enable property server&lt;br /&gt;
 5003	UDP	Enable Screen-Shot services&lt;br /&gt;
 5004   UDP     (may be used as a spare)&lt;br /&gt;
 5505	UDP	Terra Sync&lt;br /&gt;
 16661	UDP	FGCom listening to FGFS, usually “local host” only&lt;br /&gt;
Also consider that some modern modems do already provide a firewall. If in addition to that you use a local firewall in your PC, than you might expect an unhealthy competition between those two concurrent firewalls. In case of problems you should deactivate one of those (usually the one inside the PC, especially if several PCs are connected via that modem).&lt;br /&gt;
&lt;br /&gt;
====Commandline Parameters====&lt;br /&gt;
 fgcom --help&lt;br /&gt;
returns the following useful info&lt;br /&gt;
    fgcom - a communication radio based on VoIP with IAX/Asterisk&lt;br /&gt;
    (c)2007 by H. Wirtz &amp;lt;wirtz@dfn.de&amp;gt;&lt;br /&gt;
    Version 1.2.2 build 163M&lt;br /&gt;
    Using iaxclient library Version SVN 163M&lt;br /&gt;
  &lt;br /&gt;
  OPTION                                        DESCRIPTION&lt;br /&gt;
  &lt;br /&gt;
  -d, -debug, --debug=                          show debugging information&lt;br /&gt;
  -S, -voipserver, --voipserver=                voip server to connect to (default: 'fgcom1.parasitstudio.de')&lt;br /&gt;
  -s, -fgserver, --fgserver=                    network device to connect to  (default: 'localhost')&lt;br /&gt;
  -p, -port, --port=                            where we should listen to FG (default: '16661')&lt;br /&gt;
  -a, -airport, --airport=                      airport-id (ICAO) for ATC-mode&lt;br /&gt;
  -f, -frequency, --frequency=                  frequency for ATC-mode&lt;br /&gt;
  -U, -user, --user=                            username for VoIP account (default: 'guest')&lt;br /&gt;
  -P, -password, --password=                    password for VoIP account (default: 'guest')&lt;br /&gt;
  -i, -mic, --mic=                              mic input level (0.0 - 1.0)&lt;br /&gt;
  -o, -speaker, --speaker=                      speaker output level (0.0 - 1.0)&lt;br /&gt;
  -b, -mic-boost, --mic-boost=                  enable mic boost&lt;br /&gt;
  -l, -list-audio, --list-audio=                list audio devices&lt;br /&gt;
  -r, -set-audio-in, --set-audio-in=            use &amp;lt;devicename&amp;gt; as audio input&lt;br /&gt;
  -k, -set-audio-out, --set-audio-out=          use &amp;lt;devicename&amp;gt; as audio output&lt;br /&gt;
  -c, -codec, --codec=                          use codec &amp;lt;codec&amp;gt; as transfer codec (default: 'u')&lt;br /&gt;
  &lt;br /&gt;
  Available codecs:&lt;br /&gt;
        u - ulaw (default and best codec because the mixing is based onto ulaw)&lt;br /&gt;
        a - alaw&lt;br /&gt;
        g - gsm&lt;br /&gt;
        s - speex&lt;br /&gt;
        7 - G.723&lt;br /&gt;
  &lt;br /&gt;
  Mode 1: client for COM1 of flightgear:&lt;br /&gt;
        $ fgcom&lt;br /&gt;
  - connects fgcom to fgfs at localhost:16661&lt;br /&gt;
        $ fgcom -sother.host.tld -p23456&lt;br /&gt;
  - connects fgcom to fgfs at other.host.tld:23456&lt;br /&gt;
  &lt;br /&gt;
  Mode 2: client for an ATC at &amp;lt;airport&amp;gt; on &amp;lt;frequency&amp;gt;:&lt;br /&gt;
        $ fgcom -aKSFO -f120.500&lt;br /&gt;
  - sets up fgcom for an ATC radio at KSFO 120.500 MHz&lt;br /&gt;
  &lt;br /&gt;
    Note that /home/hcs/src/fgcom/trunk/src/fgcom starts with a guest account unless you use -U and -P!&lt;br /&gt;
&lt;br /&gt;
Also note that the current server (fgcom.flightgear.co.uk) works with guest account, so '''do not use -U or -P'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=='''Server installation'''==&lt;br /&gt;
&lt;br /&gt;
For running a FGCOM server you need Asterisk and depending on the amount of users much bandwith and CPU power. Because of putting pilots and ATCs in a VoIP conference the server-admin has to assure that there is enough network and cpu power to avoid drop-outs of the voice stream.&lt;br /&gt;
&lt;br /&gt;
===Prerequirements===&lt;br /&gt;
&lt;br /&gt;
Install Asterisk on top of your favorite distribution. Please refer to installation manuals (e.g. [[http://www.asteriskguru.com/|Asterisk-Guru]]) you can find on the net. You do not need H.323 or SIP because the fgcom client uses IAX2 as VoIP signaling protocol. Only if you think about connecting external VoIP applications to FGCOM you should consider to activate H.323 or SIP (but this is not the scope of this small howto).&lt;br /&gt;
&lt;br /&gt;
Notice: You need to install the zaptel driver modules - even if you won't use any hardware for telecom interfacing. You need the ztdummy kernel module for the asterisk conference application MeetMe() because it simulates a hardware clock needed by this application. Further development of FGCOM might use app_conference which don't needs any timing device.&lt;br /&gt;
&lt;br /&gt;
For now we want to use /etc/asterisk as the base configuration directory.&lt;br /&gt;
&lt;br /&gt;
===Setting up the radio frequencies===&lt;br /&gt;
&lt;br /&gt;
The radio frequencies are &amp;quot;simple&amp;quot; Conferences and realized due to the Asterisk application MeetMe().&lt;br /&gt;
&lt;br /&gt;
====Part 1: General configuration====&lt;br /&gt;
&lt;br /&gt;
First you have to set up the general configuration of the system. Put the following at the top of your &amp;quot;extensions.conf&amp;quot; file:&lt;br /&gt;
&lt;br /&gt;
  [general]&lt;br /&gt;
  static=yes&lt;br /&gt;
  writeprotect=yes&lt;br /&gt;
  ;&lt;br /&gt;
  [globals]&lt;br /&gt;
  ;&lt;br /&gt;
  [macro-com]&lt;br /&gt;
  exten =&amp;gt; s,1,Answer()&lt;br /&gt;
  exten =&amp;gt; s,n,MeetMe(${MACRO_EXTEN},qd)&lt;br /&gt;
  exten =&amp;gt; s,n,Hangup()&lt;br /&gt;
  ;&lt;br /&gt;
  [macro-echo]&lt;br /&gt;
  exten =&amp;gt; s,1,Answer()&lt;br /&gt;
  exten =&amp;gt; s,n,Echo()&lt;br /&gt;
  exten =&amp;gt; s,n,Hangup()&lt;br /&gt;
  ;&lt;br /&gt;
  [guest]&lt;br /&gt;
  ; ATC-Help&lt;br /&gt;
  exten =&amp;gt; 01-ZZZZ-911.000,1,Macro(com)&lt;br /&gt;
  exten =&amp;gt; 012525252591100,1,Dial(Local/01-ZZZZ-911.000)&lt;br /&gt;
  exten =&amp;gt; 01-ZZZZ-910.000,1,Macro(echo)&lt;br /&gt;
  exten =&amp;gt; 012525252591000,1,Dial(Local/01-ZZZZ-910.000)&lt;br /&gt;
  ;&lt;br /&gt;
  [default]&lt;br /&gt;
  include =&amp;gt; guest&lt;br /&gt;
  ;&lt;br /&gt;
  ; Code:&lt;br /&gt;
  ; 01 - FlightGear&lt;br /&gt;
  ; 02 - Microsoft Flight-Simulator&lt;br /&gt;
  ; 03 - ...&lt;br /&gt;
  ;&lt;br /&gt;
  ; Air2Air&lt;br /&gt;
  exten =&amp;gt; 01-ZZZZ-123.450,1,Macro(com)&lt;br /&gt;
  exten =&amp;gt; 012525252512345,1,Dial(Local/01-ZZZZ-123.450)&lt;br /&gt;
  exten =&amp;gt; 01-ZZZZ-122.750,1,Macro(com)&lt;br /&gt;
  exten =&amp;gt; 012525252512275,1,Dial(Local/01-ZZZZ-122.750)&lt;br /&gt;
&lt;br /&gt;
====Part 2: Adding your favorite (all?) frequencies====&lt;br /&gt;
&lt;br /&gt;
For this you have simply to create an extension for every touple of airport/frequency in extensions.conf. The following is an example for Berlin-Tempelhof (EDDI). The information comes from the file &amp;quot;apt.dat.gz&amp;quot; of your FlightGear installation.&lt;br /&gt;
&lt;br /&gt;
  ; EDDI ATIS 126.020 - Berlin Tempelhof&lt;br /&gt;
  exten =&amp;gt; 01-EDDI-126.020,1,Macro(com)&lt;br /&gt;
  exten =&amp;gt; 010403030812602,1,Dial(Local/01-EDDI-126.020)&lt;br /&gt;
  ;&lt;br /&gt;
  ; EDDI BERLIN DEP 120.620 - Berlin Tempelhof&lt;br /&gt;
  exten =&amp;gt; 01-EDDI-120.620,1,Macro(com)&lt;br /&gt;
  exten =&amp;gt; 010403030812062,1,Dial(Local/01-EDDI-120.620)&lt;br /&gt;
  ;&lt;br /&gt;
  ; EDDI BERLIN DIRECTOR 121.120 - Berlin Tempelhof&lt;br /&gt;
  exten =&amp;gt; 01-EDDI-121.120,1,Macro(com)&lt;br /&gt;
  exten =&amp;gt; 010403030812112,1,Dial(Local/01-EDDI-121.120)&lt;br /&gt;
  ;&lt;br /&gt;
  ; EDDI BERLIN ARR 126.420 - Berlin Tempelhof&lt;br /&gt;
  exten =&amp;gt; 01-EDDI-126.420,1,Macro(com)&lt;br /&gt;
  exten =&amp;gt; 010403030812642,1,Dial(Local/01-EDDI-126.420)&lt;br /&gt;
  ;&lt;br /&gt;
  ; EDDI GND 121.950 - Berlin Tempelhof&lt;br /&gt;
  exten =&amp;gt; 01-EDDI-121.950,1,Macro(com)&lt;br /&gt;
  exten =&amp;gt; 010403030812195,1,Dial(Local/01-EDDI-121.950)&lt;br /&gt;
  ;&lt;br /&gt;
  ; EDDI TWR 119.570 - Berlin Tempelhof&lt;br /&gt;
  exten =&amp;gt; 01-EDDI-119.570,1,Macro(com)&lt;br /&gt;
  exten =&amp;gt; 010403030811957,1,Dial(Local/01-EDDI-119.570)&lt;br /&gt;
  ;&lt;br /&gt;
  ; EDDI BERLIN DIRECTOR 136.100 - Berlin Tempelhof&lt;br /&gt;
  exten =&amp;gt; 01-EDDI-136.100,1,Macro(com)&lt;br /&gt;
  exten =&amp;gt; 010403030813610,1,Dial(Local/01-EDDI-136.100)&lt;br /&gt;
  ;&lt;br /&gt;
  ; EDDI TWR 118.100 - Berlin Tempelhof&lt;br /&gt;
  exten =&amp;gt; 01-EDDI-118.100,1,Macro(com)&lt;br /&gt;
  exten =&amp;gt; 010403030811810,1,Dial(Local/01-EDDI-118.100)&lt;br /&gt;
  ;&lt;br /&gt;
  ; EDDI BERLIN DEP 119.500 - Berlin Tempelhof&lt;br /&gt;
  exten =&amp;gt; 01-EDDI-119.500,1,Macro(com)&lt;br /&gt;
  exten =&amp;gt; 010403030811950,1,Dial(Local/01-EDDI-119.500)&lt;br /&gt;
  ;&lt;br /&gt;
  ; EDDI BERLIN ARR 119.620 - Berlin Tempelhof&lt;br /&gt;
  exten =&amp;gt; 01-EDDI-119.620,1,Macro(com)&lt;br /&gt;
  exten =&amp;gt; 010403030811962,1,Dial(Local/01-EDDI-119.620)&lt;br /&gt;
&lt;br /&gt;
What does the above mean? There are two lines (three with the comment) for each frequency: The first one sets up an extension named &amp;quot;01-EDDI-119.500&amp;quot;. Yes, for VoIP you can use textual extensions but be careful if you want to setup your Asterisk-Server with POTS (=Plain old telephone service). Therefor you need the second line which is the same as above but without dashes and the letters in the decimal representation of the ASCII Code. The second line does only a &amp;quot;rewrite&amp;quot; of the numerical representation to the textual one.&lt;br /&gt;
&lt;br /&gt;
For setting up all airports you can write your own simple script. But this maybe also not needed in further versions of FGCOM.&lt;br /&gt;
&lt;br /&gt;
After editing the extensions.conf file you have to reload the extensions file (e.g. &amp;quot;asterisk -rx extensions reload&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
You can add further nice goodies to your extensions.conf: MorseCode() for morsing the code of the VOR (MorseCode() will only work in Asterisk &amp;gt;= 1.4), Recording of metar data and playing this recording back when using the frequency of the metar information, ...&lt;br /&gt;
 &lt;br /&gt;
===Setting up user accounts===&lt;br /&gt;
&lt;br /&gt;
The user accounts are located in the file iax.conf (and perhaps also in sip.conf, but this is not necessary). The top of the file should look like this:&lt;br /&gt;
&lt;br /&gt;
  [general]&lt;br /&gt;
  bandwith=low&lt;br /&gt;
  disallow=lpc10&lt;br /&gt;
  jitterbuffer=yes&lt;br /&gt;
  forcejitterbuffer=no&lt;br /&gt;
  tos=lowdelay&lt;br /&gt;
  autokill=yes&lt;br /&gt;
  disallow=all&lt;br /&gt;
  allow=alaw&lt;br /&gt;
  allow=gsm&lt;br /&gt;
  allow=ilbc&lt;br /&gt;
  allow=g726&lt;br /&gt;
  allow=ulaw&lt;br /&gt;
  language=en&lt;br /&gt;
  maxauthreq=10&lt;br /&gt;
  context=guest&lt;br /&gt;
  ;&lt;br /&gt;
  [guest]&lt;br /&gt;
  type=user&lt;br /&gt;
  username=guest&lt;br /&gt;
  context=guest&lt;br /&gt;
  qualify=yes&lt;br /&gt;
  callerid=Guest IAX User&lt;br /&gt;
  host=dynamic&lt;br /&gt;
  ;&lt;br /&gt;
&lt;br /&gt;
You may want to disallow more codecs or want to allow additional codecs (such as speex). But have in mind that the internal mixing of the conferences are done in &amp;quot;ulaw&amp;quot;. But &amp;quot;ulaw&amp;quot; needs about 80 kBit/s because it does no compression. So you have to think about what's better for you: less bandwidth (per user) and more CPU usage or  more bandwidth (per user) and less CPU usage... you should also consider the &amp;quot;sound&amp;quot; of some codecs may not have the 'real radio sound'.&lt;br /&gt;
&lt;br /&gt;
For each user you have to add a bunch of lines to your iax.conf file:&lt;br /&gt;
&lt;br /&gt;
  [&amp;lt;USERNAME&amp;gt;]&lt;br /&gt;
  type=user&lt;br /&gt;
  username=&amp;lt;USERNAME&amp;gt;&lt;br /&gt;
  secret=&amp;lt;PASSWORD&amp;gt;&lt;br /&gt;
  context=default&lt;br /&gt;
  host=dynamic&lt;br /&gt;
  nat=yes&lt;br /&gt;
  notransfer=yes&lt;br /&gt;
&lt;br /&gt;
You just have to fill in the &amp;lt;USERNAME&amp;gt; and &amp;lt;PASSWORD&amp;gt;. After each change you have to reload the configuration (e.g. &amp;quot;asterisk -rx reload chan_iax2.so&amp;quot;). Perhaps you want to write scripts for automatic configuration and so on. But be warned: Further versions of fgcom may use the multiplayer servers for getting usernames and position data and you have to change your scripts.&lt;br /&gt;
&lt;br /&gt;
===Problems?===&lt;br /&gt;
&lt;br /&gt;
If you have problems you can contact me via email at &amp;quot;dcoredump AT gmail.com&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=='''External links'''==&lt;br /&gt;
* [http://squonk.abacab.org/dokuwiki/fgcom Old Official website]&lt;br /&gt;
* [http://squonk.abacab.org/dokuwiki/fgcom-manual Manual]&lt;br /&gt;
* [http://sourceforge.net/projects/fgcom/ fgcom(SourceForge-Project)]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
==Development==&lt;br /&gt;
&lt;br /&gt;
TODO&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=='''Status'''==&lt;br /&gt;
*'''March, 2009:'''&lt;br /&gt;
Adding User-Informations for installing, using, maintaining FGCOM on different platforms.&lt;br /&gt;
&lt;br /&gt;
*'''18 November, 2008:'''&lt;br /&gt;
Latest SVN (rev 163) has the compile problems fixed. Also we have a '''new server: fgcom.flightgear.org.uk'''. User accounts not required (ie. do '''not''' use -U or -P)&lt;br /&gt;
*'''31 October, 2008:''' &lt;br /&gt;
&lt;br /&gt;
The latest SVN release at this time is the '''r149''' which does not compile due to a constant that is not defined (STL_STRING). Such constant appears at line 57 in the file ''src/fgcom_init.cpp'' which is:&lt;br /&gt;
''#include STL_STRING''&lt;br /&gt;
&lt;br /&gt;
I guess that such constant must point to the STL library include file but I am not sure.&lt;br /&gt;
I revert to the '''r148''' SVN version which successfully compiles.&lt;br /&gt;
&lt;br /&gt;
Command to get such version is: ''svn co -r148 svn://svn.dfn.de:/fgcom/trunk fgcom-r148''&lt;br /&gt;
&lt;br /&gt;
* '''19 June, 2008:''' Currently the server is &amp;lt;u&amp;gt;down&amp;lt;/u&amp;gt; due to hardware problems. It is unknown when the service comes back because he currently has no time to fix the problems.&lt;br /&gt;
&lt;br /&gt;
* '''22 November 2007:''' Due to heavy development at this time there may be some differences between the information on the web pages and the installation. Please follow the discussions on the FlightGear development list!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=='''See also'''==&lt;br /&gt;
*[[FlightGear related projects]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Software]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=File:F-14b-sas-switches.png&amp;diff=19991</id>
		<title>File:F-14b-sas-switches.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=File:F-14b-sas-switches.png&amp;diff=19991"/>
		<updated>2010-03-14T21:28:05Z</updated>

		<summary type="html">&lt;p&gt;Xiii: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Grumman_F-14_Tomcat&amp;diff=19990</id>
		<title>Grumman F-14 Tomcat</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Grumman_F-14_Tomcat&amp;diff=19990"/>
		<updated>2010-03-14T21:27:19Z</updated>

		<summary type="html">&lt;p&gt;Xiii: Added SAS panel image&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{infobox Aircraft&lt;br /&gt;
|image =F-14.jpg&lt;br /&gt;
|name =F-14 Tomcat&lt;br /&gt;
|type =Interceptor/multi-role Fighter aircraft&lt;br /&gt;
|livery =U.S. Navy&lt;br /&gt;
|authors =Enrique Laso, Alexis Bory (cockpit)&lt;br /&gt;
|status =Production&lt;br /&gt;
|fdm =YASim&lt;br /&gt;
|3dcockpit = &amp;amp;radic;&lt;br /&gt;
|carrier = &amp;amp;radic;&lt;br /&gt;
|fgname = f-14b&lt;br /&gt;
}}&lt;br /&gt;
The '''Grumman F-14 Tomcat''' is a supersonic, twin-engine, two-seat, variable geometry wing [[aircraft]]. The F-14 was the United States Navy's primary maritime air superiority fighter, fleet defense interceptor and tactical reconnaissance platform from 1974 to 2006. It later performed precision strike missions once it was integrated with the Low Altitude Navigation and Targeting Infrared for Night [http://en.wikipedia.org/wiki/LANTIRN LANTIRN] system. The F-14 was developed after the collapse of the [http://en.wikipedia.org/wiki/F-111B F-111B] project, and was the first of the American teen-series fighters which were designed incorporating the experience of air combat in Vietnam against MiGs.&lt;br /&gt;
&lt;br /&gt;
It entered service in 1972 with the U.S. Navy, replacing the [[McDonnell F4 Phantom II]]. It was later exported to the former Imperial Iranian Air Force in 1976, during a time when the US still had good relations with Iran. It was retired from the active U.S. Navy fleet on 22 September 2006, having been replaced by the [[F/A-18 Hornet|F/A-18E/F Super Hornet]]. As of 2007, it remains in service only with the Islamic Republic of Iran Air Force.&lt;br /&gt;
&lt;br /&gt;
==Keyboard Controls==&lt;br /&gt;
===Flight Controls===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|Home&lt;br /&gt;
|Increase elevator trim&lt;br /&gt;
|-&lt;br /&gt;
|End&lt;br /&gt;
|Decrease elevator trim&lt;br /&gt;
|-&lt;br /&gt;
|] or f&lt;br /&gt;
|Lower flaps&lt;br /&gt;
|-&lt;br /&gt;
|[ or F&lt;br /&gt;
|Raise flaps&lt;br /&gt;
|-&lt;br /&gt;
|s&lt;br /&gt;
|Increase speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|S&lt;br /&gt;
|Decrease speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-b&lt;br /&gt;
|Toggle speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|'''*note*''' &lt;br /&gt;
| Speed brakes have a different increase/decrease key assignment in a coming release and on CVS&lt;br /&gt;
|-&lt;br /&gt;
|k&lt;br /&gt;
|Increase speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|j&lt;br /&gt;
|Decrease speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Image:F-14_cockpit.jpg|thumb|270px|Cockpit of the F-14.]]&lt;br /&gt;
[[File:SunsetF-14.png|270px|thumb|right|A nice scene with the F-14.]]&lt;br /&gt;
&lt;br /&gt;
===Automatic Flight Controls===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|a&lt;br /&gt;
|Toggle APC (Landing Automatic Power Control)&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-d&lt;br /&gt;
|Toggle DLC (Landing Direct Lift Control)&lt;br /&gt;
|-&lt;br /&gt;
|d&lt;br /&gt;
|DLC increase&lt;br /&gt;
|-&lt;br /&gt;
|D&lt;br /&gt;
|DLC decrease&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-t&lt;br /&gt;
|Toggle [http://en.wikipedia.org/wiki/Aircraft_flight_control_systems AFCS] (Defaut Attitude Mode)&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-a&lt;br /&gt;
|Enable AFCS Altitude Mode&lt;br /&gt;
|-&lt;br /&gt;
|*&lt;br /&gt;
|Engage AFCS Altitude Mode&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-h&lt;br /&gt;
|Enable AFCS Heading Mode&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-s&lt;br /&gt;
|Toggle ground spoilers armed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===HSD - radar and RWR===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|h&lt;br /&gt;
|Cycles through HSD modes: radar - compas - ECM (RWR)&lt;br /&gt;
|-&lt;br /&gt;
|E&lt;br /&gt;
|Decrease Radar Range&lt;br /&gt;
|-&lt;br /&gt;
|R&lt;br /&gt;
|Increase Radar Range&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-r&lt;br /&gt;
|Toggles Radar Standby Mode. In standby mode the radar doesn't emit and the &amp;quot;STAND BY&amp;quot; words are displayed on the HSD screen when in TID mode.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Carrier operations===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|O   &lt;br /&gt;
|Lower the hook&lt;br /&gt;
|-&lt;br /&gt;
|o   &lt;br /&gt;
|Raise the hook&lt;br /&gt;
|-&lt;br /&gt;
|L   &lt;br /&gt;
|Engage launch bar&lt;br /&gt;
|-&lt;br /&gt;
|C   &lt;br /&gt;
|Release catapult&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Miscellaneous===&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|e&lt;br /&gt;
|Toggle canopy and access ladder&lt;br /&gt;
|-&lt;br /&gt;
|u&lt;br /&gt;
|Toggle refuelling probe&lt;br /&gt;
|-&lt;br /&gt;
|w&lt;br /&gt;
|Cycle armament selector&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-o&lt;br /&gt;
|Toggle oversweep (on ground only, otherwise sweep is automatic)&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-v&lt;br /&gt;
|Toggle between RIO (Radar Intercept Officer) and pilot view&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Aircraft help==&lt;br /&gt;
===On Shore Takeoff===&lt;br /&gt;
* With wings on over sweep position (parking position) the elevator command is inhibited... just in case...&lt;br /&gt;
* Check air brake in.&lt;br /&gt;
* Fuel level: The Flighfgear F-14 has a '''10% fuel''' level and no external load '''at start up'''. This means the aircraft will be very light and have a strong tendency to raise the nose when accelerating on the runway. With less weight on the nose wheel, the nose wheel steering loose its efficiency. If the pilot use afterburners for take off, the loose of nose wheel steering efficiency is increased (afterburners are not necessary for take off). '''Set a suitable fuel level before take off.''' &lt;br /&gt;
* Flaps: Set full flaps.&lt;br /&gt;
* Elevators: The pilot will need to maintain a correct (leveled) attitude using the stick. Push the stick forward to prevent nose pitching up at the begining of the take off run, release slightly as speed increase, pull smoothly when reaching rotation speed (150kts).&lt;br /&gt;
* Rudder: Currently the FDM use a small rudder rate of move to damp some nasty oscillations when the rudder is not moved enough smoothly. '''If not anticipated''', this delay will cause overshooting the desired rudder effect, then a strong counter action on the rudder will be applied by the pilot on the rudder with again an overshoot... That's a typical  [http://en.wikipedia.org/wiki/Pilot-induced_oscillation pilot-induced oscillation]. To avoid this set a small amount of rudder, wait for the effect, see if it's enough, then add a small amount of rudder again if needed... when doing so the pilot will prefer increasing the power smoothly. Now the aircraft will quickly gain speed while covering the runway and the rudder effect will increase, thus decreasing the needed delay and the amount of pressure on the stick to match the desired effect.&lt;br /&gt;
&lt;br /&gt;
===Autopilot Operation===&lt;br /&gt;
* The main mode is '''Attitude Hold Mode''', '''Ctrl-t'''. Other Modes need this main mode activated before being selected. Switching off '''Attitude Mode''' disables all other modes . When in '''Attitude Mode''', the autopilot disengages whenever a certain pressure is put on the stick, and it reengages when the stick is back in the center position . '''Attitude Hold Mode''' will hold pitch attitudes up to plus or minus 30 degrees, and bank angles up to plus or minus 60 degrees. &lt;br /&gt;
* It shall be switched off for aerobatics and inverted flight .&lt;br /&gt;
&lt;br /&gt;
====Autopilot Altitude Mode====&lt;br /&gt;
* Once in the Attitude Mode, you can select '''Altitude Mode''' by hitting '''Ctrl-a''', then the '''AP REF''' indicator, (left of the '''VDI''') will illuminate, when at the desired altitude using normal stick control, engage by hitting '''*''', (asterisk) . The autopilot will then maintain your altitude.&lt;br /&gt;
'''CAUTION''' - at high speeds, it is imperative to stabilize your aircraft prior to engaging Altitude Mode !&lt;br /&gt;
&lt;br /&gt;
====Autopilot Heading Mode====&lt;br /&gt;
* Once in the Attitude Mode, you can select '''Heading Mode''' by hitting '''Ctrl-h''' . After maneuvering the aircraft into the desired reference heading, release the control stick at a bank angle of less than 5 degrees . The autopilot will then hold the aircraft on the selected heading.&lt;br /&gt;
&lt;br /&gt;
* Autopilot needs '''SAS''' channels to be engaged, which is the default . '''SAS''' Pitch and Roll channels may be disengaged by actuating switches located on the '''AFCS''' ('''Automatic/Analog Flight Control System''') panel .[[Image:F-14b-sas-switches.png|thumb|270px|SAS Panel.]]&lt;br /&gt;
&lt;br /&gt;
===Landing Automatic Power Control, (APC) Operation===&lt;br /&gt;
* The '''APC''' is a closed loop system that automatically regulates basic engine thrust to maintain the aircraft at an optimum approach angle of attack for landing . &lt;br /&gt;
* Prior to engage '''APC''', gear handle must be down with weight off wheels, and the throttles must be set between 98 percent rpm and 68 percent rpm, (as shown on the panel gauges). &lt;br /&gt;
* Type '''a''' to toggle the '''APC on/off'''. APC is also disengaged by setting the throttles to MIL, (98 percent rpm) or idle, (68 percent rpm) or raising the landing gear handle or when weight on the wheels . &lt;br /&gt;
* When disengaged the '''AUTO THROT''' caution light, (on the left side of the HUD) illuminates for 10 seconds .&lt;br /&gt;
&lt;br /&gt;
===Landing Direct Lift Control, (DLC) Operation===&lt;br /&gt;
* During landing approaches, the spoilers and horizontal stabilizers can be controled simultaneously to provide glidepath correction without changing power setting or angle of attack.&lt;br /&gt;
&lt;br /&gt;
===Ground Spoilers Operation===&lt;br /&gt;
* Ground spoilers (that is [http://en.wikipedia.org/wiki/Elevon elevons] used as air-brake ) provide additional drag immediately after the touch down. Before the landing, arm the ground spoilers by hitting '''Ctrl-s''' . After the aircraft hits the runway, pull the throttle to idle, then the spoilers (elevons) get fully deployed.&lt;br /&gt;
&lt;br /&gt;
==Pilot's Cockpit==&lt;br /&gt;
[[Image:F-14b-pilots-display-control-panel.jpg|thumb|270px|Pilot's Display Control Panel.]]&lt;br /&gt;
===Displays Control Panel===&lt;br /&gt;
* The Display Control Panel is located on the right side of the pilot's main panel, under the Hook lever. The '''3 botom switches''' respectively turn the '''VDI''', '''HUD''' and '''HSD''' displays '''on/off'''. The '''HSD MODE''' switch is also available, it selects '''NAV''' or '''TID''' or '''ECM''' mode. This can also be achieved by cycling through these 3 modes with the &amp;quot;'''h'''&amp;quot; key. (''Note: the '''NAV MODE''' push buttons - '''TO''', '''CRUISE''', '''A/A''', '''A/G''', '''LDG''' - are not operational yet.'')&lt;br /&gt;
** '''VDI: Vertical Display Indicator'''. Shows the aircraft attitude in roll and pitch, with an artifitial horizon and magnetic heading.&lt;br /&gt;
** '''HUD: Head UP Display'''.&lt;br /&gt;
** '''HSD: Horizontal Situation Display'''. HSD shows either:&lt;br /&gt;
***in '''NAV''' mode: compas with navigation indications,&lt;br /&gt;
***in '''TID''' mode (Tactical Information Display): an horizontal representation of the tactical situation (that is informations provided by the RIO from what he sees in his radar displays).&lt;br /&gt;
***in '''ECM''' mode: a representation of radar threats around the aircraft.&lt;br /&gt;
&lt;br /&gt;
===VHF===&lt;br /&gt;
* Located on the RIO's left console, 3 bands: 30-88 MHz, 108-174 MHz, 225-400 MHz. Modes '''TR''' and '''TR-G''' set '''COMM1'''. Mode '''DF''' sets '''NAV1''', that is '''Direction Finder''' displayed with the single needle in both '''BDHIs''' (Bearing, Distance, Heading Indicator) . You have Comm *or* DF. Storing frequencies (up to 20 channels) '''a - PRESET'''  select the desired channel, '''b - READ''' tune the desired frequency, '''c - LOAD''' stores the frequency in the previously selected channel.&lt;br /&gt;
&lt;br /&gt;
===UHF===&lt;br /&gt;
* Located on the pilot's left console, 225-400 Mhz. ADF is not enabled on this radio.&lt;br /&gt;
&lt;br /&gt;
== Related content ==&lt;br /&gt;
=== Related lists ===&lt;br /&gt;
* [[Aircraft]]&lt;br /&gt;
* [[Aircraft Todo]]&lt;br /&gt;
=== Links ===&lt;br /&gt;
* http://en.wikipedia.org/wiki/F-14 - F-14 Tomcat&lt;br /&gt;
* http://www.globalsecurity.org/military/systems/aircraft/f-14.htm - F-14 Tomcat&lt;br /&gt;
* http://www.fas.org/programs/ssp/man/uswpns/air/fighter/f14.html - F-14 Tomcat &lt;br /&gt;
* http://www.anft.net/f-14/f14-specification.htm - Home of M.A.T.S.&lt;br /&gt;
* http://www.navyair.com/LSO_NATOPS_Manual.pdf - NATOPS LANDING SIGNAL OFFICER MANUAL&lt;br /&gt;
&lt;br /&gt;
{{Grumman}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft]]&lt;br /&gt;
[[Category:Aircraft TODO]]&lt;br /&gt;
[[Category:Military aircraft]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Using_TerraGear&amp;diff=18404</id>
		<title>Using TerraGear</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Using_TerraGear&amp;diff=18404"/>
		<updated>2009-12-08T22:48:20Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* Elevation data */ Update the new location of SRTM .hgt files&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{WIP}}&lt;br /&gt;
[[Image:Terragearprocesschart.png|thumb|TerraGear Process Flow Chart]]&lt;br /&gt;
&lt;br /&gt;
The terrain used in [[FlightGear]] (the land over which one flies, its texturing (by land usage type), the rivers and lakes and so forth) are generated by software from a sister project called [[TerraGear]]. TerraGear is used to read in geographical data (descriptions of ground elevations, land cover (usage) information, airport locations and layouts, and so forth) and output terrain over which one can fly.&lt;br /&gt;
&lt;br /&gt;
For a variety of reasons, you might want to build terrain yourself, rather than downloading it from the available scenery on FlightGear. For instance, if you use [[TaxiDraw]] to modify/improve information about an [[:Category:Airports|airport]]'s taxiway/apron layout, you might wish to see how that modified airport would look in the scenery before deciding you're happy with the results. Maybe the official scenery is too detailed for your slow machine, and you'd like to build terrain using a digital elevation model (DEM) with poorer resolution, to decrease the number of polygons and thus improve your framerates. Or maybe you've got a fantastically fast machine, and you want to build your own terrain using higher-resultion vector data (vmap1, Tiger, osm) to get better roads/streams. For all these reasons, learning how to use TerraGear is a good idea.&lt;br /&gt;
&lt;br /&gt;
==Obtaining TerraGear==&lt;br /&gt;
You can either build TerraGear yourself, or download a pre-compiled binary. The later is the easiest and advised for starters.&lt;br /&gt;
&lt;br /&gt;
* '''Building TerraGear''' is explained in [[Building TerraGear|this article]].&lt;br /&gt;
* '''Downloading TerraGear binaries'''&lt;br /&gt;
*# Download the latest TerraGear-cs-Win32-....zip file from ftp://ftp.ihg.uni-duisburg.de/FlightGear/Win32/. &lt;br /&gt;
*# Create or choose a base directory, which you will subsequently use to work with the TerraGear tools. &lt;br /&gt;
*# Unzip the package into a sub-directory named &amp;lt;tt&amp;gt;Terragear/&amp;lt;/tt&amp;gt; in the base directory. &lt;br /&gt;
&lt;br /&gt;
==Using TerraGear==&lt;br /&gt;
Before you start, you need to decide which area of scenery you want to build, as a rectangle defined in terms of latitute and longitude. The smaller the area of scenery you generate, the smaller the amount of data you will need, and the less CPU time it will take. For example, if you are just interested in generating a new airport layou at 12.3W 34.4N, then simply generating the scenery between 12W 34N and 11W 35N would be sufficient. &lt;br /&gt;
&lt;br /&gt;
Write down the bounding box (minimum and maximum longitude and latitude) for the scenery you want to generate. Remember that West and South are negative - i.e. 4W 10S would be -4, -10. Try not to get mixed up, otherwise you'll end up generating scenery or airports on the other side of the planet! &lt;br /&gt;
&lt;br /&gt;
You'll be dealing with multiple different types of data in various formats. Create a new directory for your scenery work. Underneath this, create the following sub-directories: &lt;br /&gt;
&lt;br /&gt;
* '''data/''' - for raw and pre-processed data (eg elevation files) &lt;br /&gt;
* '''output/''' - for the scenery files you will create &lt;br /&gt;
* '''work/''' - for data that has been processed (eg by shape-decode) and is ready to be munged into scenery &lt;br /&gt;
Terragear needs three different pieces of information to generate scenery. &lt;br /&gt;
&lt;br /&gt;
* The elevation of the land (provided by SRTM) &lt;br /&gt;
* The location and layout of airports (provided by apt.dat) &lt;br /&gt;
* Whether a given lat/lon is sea, land, city, forest, town, road, railway (provided by VMAP0) &lt;br /&gt;
We'll deal with each of these data types in turn, from how to get hold of the data, through pre-processing. Finally, we'll describe how to bring it together into data that FlightGear can use. &lt;br /&gt;
&lt;br /&gt;
The order in which we complete these steps is important- for example the airport data relies on the elevation data to determine the elevation of the airports.&lt;br /&gt;
&lt;br /&gt;
===Obtaining and processing data===&lt;br /&gt;
Terragear needs three different pieces of information to generate scenery. &lt;br /&gt;
&lt;br /&gt;
* The elevation of the land (provided by SRTM) &lt;br /&gt;
* The location and layout of airports (provided by apt.dat) &lt;br /&gt;
* Whether a given lat/lon is sea, land, city, forest, town, road, railway (provided by VMAP0) &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;u&amp;gt;Please note:&amp;lt;/u&amp;gt; for inclussion in the official FlightGear scenery, all data &amp;lt;u&amp;gt;must&amp;lt;/u&amp;gt; come from [[GNU GPL]] compatible sources! The in this article stated sources can be used.'''&lt;br /&gt;
&lt;br /&gt;
====Elevation data====&lt;br /&gt;
The best elevation data currently available is from the Shuttle Radar Topography Mission (SRTM). There are two types of SRTM data: &lt;br /&gt;
* Highly accurate 1-arcsecond resolution data, known as SRTM-1, for the USA &lt;br /&gt;
* Less accurate 3-arcsecond data, known as SRTM-3, for the rest of the world. &lt;br /&gt;
From now on, we'll assume you are using SRTM-3 data. Unless otherwise noted, the process for SRTM-1 is identical.&lt;br /&gt;
&lt;br /&gt;
You can get download the appropriate data from http://dds.cr.usgs.gov/srtm/. You want all .hgt.zip files covering your region of interest. Depending on the size of your scenery, there may be quite a few. Download them to &amp;lt;tt&amp;gt;data/SRTM-30/&amp;lt;/tt&amp;gt; in your base directory. (The reason why the directories are called SRTM-30 is because genapts will look for a few known, hardcoded directories in it's working directory. SRTM-30 is one of them and this is the least confusing in that list.)&lt;br /&gt;
&lt;br /&gt;
Now we've got the data, we need to convert it into something of use to TerraGear. First, you need to unzip each of the .hgt files. After that, open the commandline (&amp;lt;tt&amp;gt;Run &amp;gt; cmd.exe&amp;lt;/tt&amp;gt;) and change into the base directory (&amp;lt;tt&amp;gt;cd .../.../TerraGear&amp;lt;/tt&amp;gt;). &lt;br /&gt;
* '''NOTE:''' If you want to create a batch-file, replace &amp;lt;tt&amp;gt;%f&amp;lt;/tt&amp;gt; with &amp;lt;tt&amp;gt;%%f&amp;lt;/tt&amp;gt;, see [http://technet.microsoft.com/en-us/library/bb490909.aspx]&lt;br /&gt;
* '''NOTE:''' For SRTM-1 data, replace the &amp;lt;tt&amp;gt;3&amp;lt;/tt&amp;gt; by a &amp;lt;tt&amp;gt;1&amp;lt;/tt&amp;gt; in the first argument to hgtchop&lt;br /&gt;
&lt;br /&gt;
Then type this:&lt;br /&gt;
 for %f in (./data/SRTM-30/*.hgt) do ./Terragear/hgtchop.exe 3 %f ./work/SRTM-30&lt;br /&gt;
&lt;br /&gt;
Now you will get a lot of .arr.gz files in your work/SRTM-3/ directory. We need to convert these to the .fit.gz format. Run the commandline again with&lt;br /&gt;
* '''NOTE:''' the space and dot at the and are important!&lt;br /&gt;
&lt;br /&gt;
 ./Terragear/terrafit.exe .&lt;br /&gt;
&lt;br /&gt;
====Airport data====&lt;br /&gt;
Now we've got elevation data, we can generate our airports. First, create a &amp;lt;tt&amp;gt;data/airports/&amp;lt;/tt&amp;gt; directory and copy in your apt.dat file. This may be direct from your FlightGear data package (though you'll need to unzip it), or it may be one that you've modified with [[TaxiDraw]]. &lt;br /&gt;
&lt;br /&gt;
The command to create airports is &amp;quot;genapts&amp;quot;. Run it without any arguments to see the various command-line options. &lt;br /&gt;
&lt;br /&gt;
If it is simply run with a specified apt.dat and work directory, it will generate airport layouts for every airport in the file, which can take a long time. &lt;br /&gt;
&lt;br /&gt;
If you are just creating a single airport and you know the ICAO ID (e.g. [[KSFO]], EGPH, EG32), use is as follows from your root scenery directory (i.e. the directory above your data, work and output directories). If you use an apt.dat file with one single airport in it you should omit the &amp;quot;--airport&amp;quot; parameter. &lt;br /&gt;
&lt;br /&gt;
 genapts --input=data/airports/apt.dat --work=./work --airport=&amp;lt;AIRPORT_ID&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you are generating a larger set of scenery, then you can specify the minimum and maximum longitude and latitude. &lt;br /&gt;
&lt;br /&gt;
Genapts will create two sub-directories in your work directory:&lt;br /&gt;
* AirportArea/&lt;br /&gt;
* AirportObj/&lt;br /&gt;
&lt;br /&gt;
These contain the definitions of the airport layout and any objects present (e.g. windsocks). &lt;br /&gt;
&lt;br /&gt;
====Landuse data====&lt;br /&gt;
The final piece of data we need to generate is the landuse data. In general, this is taken from the VMAP0 dataset as shapefiles from the scenery database mapserver, but other sources can be used and are used.&lt;br /&gt;
&lt;br /&gt;
The landuse data can be split into a number of different types:&lt;br /&gt;
&lt;br /&gt;
* '''Landmass''' separates the land from the sea. It is used as a mask for all other data. The most commonly used is the VMAP0 Landmass, but GSHHS can also be used.&lt;br /&gt;
* '''Land use data:''' defines whether a piece of land is forest, urban, sand, lava, glacier etc. These are usually VMAP0 data, defined as polygons.&lt;br /&gt;
* '''Line data:''' includes railroads, streams, roads. Typically VMAP0, but also Open Street Map for roads.&lt;br /&gt;
* '''Point data:''' is currently only used for defining towns.&lt;br /&gt;
 &lt;br /&gt;
By far the easiest way to get this data is to download shape-files from the wonderful [http://mapserver.flightgear.org MapServer]. This provides access to a database of information, and allows you to download the specifi shapefiles for your scenery area. Click on the Download Shapefiles link (or go direct: http://mapserver.flightgear.org/download.psp). Enter in the bounding box of the scenery you want to generate, select the shapefiles you want, and click download. For your first scenery generation, you want all of the ones listed under VMap0 (with prefix v0_). &lt;br /&gt;
 &lt;br /&gt;
Download each of them into a &amp;lt;tt&amp;gt;data/shapefiles/&amp;lt;/tt&amp;gt; directory.&lt;br /&gt;
&lt;br /&gt;
You can load these shapefiles into a GIS editor such as [[QGIS]] or GRASS to view and edit. This is a good idea to verify you have the correct files! Later on, you can experiment with replacing various shapefiles with other versions (GSHHS for coastline, OSM for roads etc.).&lt;br /&gt;
&lt;br /&gt;
You now need to decode these into TerraGear format. This is done with the shape-decode command. &lt;br /&gt;
&lt;br /&gt;
There are three important command-line arguments to shape-decode:&lt;br /&gt;
* the filename of the shapefile (without the .shp extension) you want to decode&lt;br /&gt;
* the directory you want to write the data to&lt;br /&gt;
* the material type to use.&lt;br /&gt;
&lt;br /&gt;
Each of the shapefiles maps onto one of the material types defined in your materials.xml files. The mapping is pretty obvious, e.g. v0_mixedcroppasturecover maps to MixedCropPastureCover. Note that the material types are case-sensitive, so it is a good idea to have your materials.xml file to hand so you can check. The exception is v0_landmass, which MUST be mapped onto the type Default.&lt;br /&gt;
&lt;br /&gt;
Additionally, there are a number of optional arguments, to indicate the width of line data (for roads, streams, railways), how large to make point data (for towns) and how long the longest straight line is allowed to be.&lt;br /&gt;
&lt;br /&gt;
For example, to decode the v0_landmass shapefile, you use the following command:&lt;br /&gt;
&lt;br /&gt;
  shape-decode --max-segment 500 data/shapefiles/v0_landmass work/Landmass Default&lt;br /&gt;
&lt;br /&gt;
To create streams of width 10 metres&lt;br /&gt;
&lt;br /&gt;
  shape-decode --max-segment 500 --line-width 10 data/shapefiles/v0_stream work/Stream Stream&lt;br /&gt;
&lt;br /&gt;
To generate some towns about 1km across&lt;br /&gt;
&lt;br /&gt;
  shape-decode --point-width 500 data/shapefiles/v0_town work/Town Town&lt;br /&gt;
&lt;br /&gt;
Run this command for each shapefile in the set.&lt;br /&gt;
&lt;br /&gt;
==Generating scenery==&lt;br /&gt;
You will now have a work directory looking something like this:&lt;br /&gt;
&lt;br /&gt;
  AirportArea           SRTM-30&lt;br /&gt;
  AirportObj            Stream&lt;br /&gt;
  Bog                   IrrCropPastureCover    Town&lt;br /&gt;
  Lake                  Urban                  Landmass&lt;br /&gt;
  Railroad              DryCropPastureCover    Road&lt;br /&gt;
  EvergreenBroadCover   Marsh                  Sand&lt;br /&gt;
  MixedCropPastureCover ScrubCover&lt;br /&gt;
  GrassCover            MixedForestCover       Shared&lt;br /&gt;
&lt;br /&gt;
Now we can actually generate the scenery. This is done by the fgfs-construct command. Run the command with &amp;quot;--help&amp;quot; to get usage information. &lt;br /&gt;
&lt;br /&gt;
We need to define:&lt;br /&gt;
* the work (--work-dir) and output (--output-dir) directories&lt;br /&gt;
* the center of the scenery we want to generate (--lat, --lon)&lt;br /&gt;
* the radius (--xdist, --ydist) from which to generate&lt;br /&gt;
* All the work directories to include in the scenery.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
  fgfs-construct --work-dir=./work --output-dir=./output --lon=55 --lat=60 --xdist=3 --ydist=3 \&lt;br /&gt;
  AirportArea SRTM-30 AirportObj Stream Bog IrrCropPastureCover Town Lake Urban Landmass Railroad \&lt;br /&gt;
  DryCropPastureCover Road EvergreenBroadCover Marsh Sand MixedCropPastureCover ScrubCover GrassCover \&lt;br /&gt;
  MixedForestCover&lt;br /&gt;
&lt;br /&gt;
When this finishes, the output directory will contain a scenery sub-tree.&lt;br /&gt;
&lt;br /&gt;
Point to it by setting either [[$FG_SCENERY]] or by using the --fg-scenery command-line option to fgfs, and give your new scenery a try!&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
Below is a list of common problems and solutions. If in doubt - Google it. Many problems (particularly when compiling TerraGear) have been hit before: &lt;br /&gt;
&lt;br /&gt;
* Crashes in genapts. Sometimes genapts will crash when dealing with a particular airport. In that case, try running it again with the --start-id argument to start at the airport it failed on, and the --nudge argument which tries to nudge the calculations in the right direction. &lt;br /&gt;
* fgfs-construct Killed. The fgfs-construct process may kill itself if it is using too many system resources. Increasing the values for setrlimit in src/BuildTiles/Main/main.cxx is the best solution. &lt;br /&gt;
* Airports appear in the bottom of holes, or there are spaces between the airports and the scenery. This typically happens when genapts is unable to find the correct elevation data, or the elevation data changed between running genapts and shape-decode. Try generating a single airport in your scenery area using genapts, and look at the output. In particular, make sure there is a work/SRTM-30 directory. &lt;br /&gt;
* Only the airports appear in the scenery. There are three typical causes for this: &lt;br /&gt;
** You didn't download the correct shapefiles for the area. &lt;br /&gt;
** You haven't run shape-decode on the v0_landmass shapefile as Default &lt;br /&gt;
** You didn't include the correct directories in fgfs-construct. &lt;br /&gt;
* Generate scenery includes data removed from the shapefiles. If you are editing shapefiles, you need to delete the appropriate work subdirectory before running shape-decode. Otherwise your changes will be in addition to those already present. &lt;br /&gt;
* All the scenery is flat and at sea-level. Typically this is because you didn't include any elevation data in your fgfs-construct command. Make sure there's a STRM-30 directory included in the command-line. &lt;br /&gt;
* All terrain copies the material of a certain shapefile. You have probably forgotten to put each of the downloaded shapefiles in a seperate directory inside the Data/shapefiles directory. &lt;br /&gt;
&lt;br /&gt;
{{Terra}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Scenery enhancement]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Grumman_A-6E&amp;diff=16370</id>
		<title>Grumman A-6E</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Grumman_A-6E&amp;diff=16370"/>
		<updated>2009-10-15T18:46:28Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* Aircraft help */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{infobox Aircraft&lt;br /&gt;
|image =A-6E.jpg&lt;br /&gt;
|caption = The &amp;quot;Intruder&amp;quot;&lt;br /&gt;
|name =Grumman A-6E Intruder&lt;br /&gt;
|type =Attack aircraft&lt;br /&gt;
|authors =Alexis Bory&lt;br /&gt;
|fdm =YASim&lt;br /&gt;
|status =Beta&lt;br /&gt;
|fgname =&amp;lt;tt&amp;gt;A-6E&amp;lt;/tt&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The Grumman A-6 Intruder is available for FlightGear 1.0, and is capable of air-to-air refueling and landing on the carrier in that version. It features a high-quality 3D cockpit, avionics, and exterior model.&lt;br /&gt;
&lt;br /&gt;
The FG model is modeled with [[Tactical Air Navigation]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==About the aircraft==&lt;br /&gt;
The '''A-6 Intruder''' is an American twin jet-engine, mid-wing attack aircraft built by Grumman Aerospace. In service between 1963 and 1997, the Intruder was designed as an all-weather replacement for the piston-engined A-1 Skyraider medium attack aircraft. A specialized electronic warfare derivative, the EA-6B Prowler, remains in service as of May 2008. As the A-6 was slated for retirement, its precision strike mission was taken over by the now retired F-14 Tomcat equipped with LANTIRN, which has subsequently passed on the role to the F/A-18E/F Super Hornet.&lt;br /&gt;
&lt;br /&gt;
An A-6E Intruder is on display at the [[National Air and Space Museum]].&lt;br /&gt;
&lt;br /&gt;
==Aircraft help==&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
!Key&lt;br /&gt;
!Function&lt;br /&gt;
|-&lt;br /&gt;
|c&lt;br /&gt;
|Canopy open/close command&lt;br /&gt;
|-&lt;br /&gt;
|C&lt;br /&gt;
|Catapult launch command&lt;br /&gt;
|-&lt;br /&gt;
|k/j&lt;br /&gt;
|Air Brakes open/close&lt;br /&gt;
|-&lt;br /&gt;
|L&lt;br /&gt;
|Carrier Launch-bar engage&lt;br /&gt;
|-&lt;br /&gt;
|o/O&lt;br /&gt;
|Hook up/down&lt;br /&gt;
|-&lt;br /&gt;
|f/F&lt;br /&gt;
|Wing Fold up/down&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Development status/Issues/Todo ==&lt;br /&gt;
'''Outside:'''&lt;br /&gt;
* Fix the relatively massive &amp;quot;hiccup&amp;quot; in elevator&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
* [http://en.wikipedia.org/wiki/A-6_Intruder Wikipedia's article on the A-6 Intruder]&lt;br /&gt;
* [http://croo.murgl.org/fgfs/A-6E/A-6E-A-6E-20071101.tgz Download the development version of the A-6E (11/01/2007)]&lt;br /&gt;
&lt;br /&gt;
== Related content ==&lt;br /&gt;
=== Related lists ===&lt;br /&gt;
* [[Aircraft]]&lt;br /&gt;
* [[Aircraft Todo]]&lt;br /&gt;
&lt;br /&gt;
{{Grumman}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft]]&lt;br /&gt;
[[Category:Military aircraft]]&lt;br /&gt;
[[Category:Aircraft TODO]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Autopilot_PID_controller_tuning_resources&amp;diff=15744</id>
		<title>Autopilot PID controller tuning resources</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Autopilot_PID_controller_tuning_resources&amp;diff=15744"/>
		<updated>2009-10-01T21:06:51Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* FlightGear PID Controller */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The [[FlightGear]] [[Autopilot]] is a modular system based on PID controllers. Here are some tips to help tuning such a controller. There is lot of documentation all over the Internet about how to tune the parameters, having this you will have to figure out how the Flightgear PID controller implementation works.&lt;br /&gt;
&lt;br /&gt;
First of all, have a look at the code where you will see the algorithm wich is used for our autopilot. Checking existing autopilot configurations in Flightgear aircraft will also help.&lt;br /&gt;
&lt;br /&gt;
There is actually a doc about filters in Flightgear documentation. Filters can be applied on input or ouput values, in other words, before and after the PID controller (execution).&lt;br /&gt;
&lt;br /&gt;
=== FlightGear PID Controller ===&lt;br /&gt;
Knowing the algorithm is mandatory, certain values are forbidden, for example they can lead to a division by zero. Then you will have to understand where the parameters apply to act on the choosen correction module. See the schema which is a good reminder while testing.&lt;br /&gt;
&lt;br /&gt;
[[Image:pid_controler.png|thumb|PID parameter's application]]&lt;br /&gt;
[[Image:pid_cotroler_data_graph.png|thumb|Datas of an Auto-trim PID Controler displayed as graphs]]&lt;br /&gt;
&lt;br /&gt;
You can find good explanations on how to practically tune the controller. [http://en.wikipedia.org/wiki/PID_controller Wikipedia's article on the PID Controler]&lt;br /&gt;
&lt;br /&gt;
=== Getting graphs of Controler action ===&lt;br /&gt;
While it's possible to tune a PID controller by testing directly the aircraft behaviour under the autopilot control, it can be really useful to get everything in graphical view.&lt;br /&gt;
&lt;br /&gt;
First of all you'll have to turn the PID Controller's debug mode on. That is in the autopilot.xml you are working on. (I didn't try to turn on more than one PID controller's debugging support at the same time).&lt;br /&gt;
&lt;br /&gt;
Then you will get 6 new values displayed on the console at each FG loop. You will need to catch them and format the values in one line. Here is an exemple of a parser script written in Perl:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/usr/bin/perl -w&lt;br /&gt;
# prints: &amp;quot;input reference P I D output&amp;quot;&lt;br /&gt;
&lt;br /&gt;
while (&amp;lt;STDIN&amp;gt;) {&lt;br /&gt;
        if ($_ =~ /input\s=\s(-*\d+.*)\sref\s=\s(-*\d+.*)/) {&lt;br /&gt;
                print STDOUT &amp;quot;$1 $2 &amp;quot;;&lt;br /&gt;
        } elsif ($_ =~ /P:(-*\d+.*)\sI:(-*\d+.*)\sD:(-*\d+.*)/) {&lt;br /&gt;
                print STDOUT &amp;quot;$1 $2 $3&amp;quot;;&lt;br /&gt;
        } elsif ($_ =~ /output\s=\s(.*)/) {&lt;br /&gt;
                print STDOUT &amp;quot; $1\n&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then you can write them in a file...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
alexis@linear:~/fgfs$ /usr/local/bin/fgfs 2&amp;amp;gt;&amp;amp;1 | ./PIDcontroler_parser.pl &amp;amp;gt; my_file&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you use Linux, You can run Kst simultaneously to read the datas on the fly and watch them displayed together in real time while testing the aircraft.&lt;br /&gt;
&lt;br /&gt;
* [http://kst.kde.org/ Kst, real-time large-dataset viewing and plotting tool]&lt;br /&gt;
&lt;br /&gt;
== Alternative Method ==&lt;br /&gt;
As an alternative to using the controller's debug output you can use the built in logging system of Flightgear. This can be configured through the preferences.xml file, or at runtime via the File-&amp;gt;Logging menu option.&lt;br /&gt;
&lt;br /&gt;
To tune a controller you would typically display the setpoint property and the controlled property in the same graph. Another property that is interresting too look at is the actuating property, wich can be for example the aileron control or the elevator control.&lt;br /&gt;
[[Category:Resource]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Portal:Developer&amp;diff=15033</id>
		<title>Portal:Developer</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Portal:Developer&amp;diff=15033"/>
		<updated>2009-09-23T17:27:43Z</updated>

		<summary type="html">&lt;p&gt;Xiii: return to english version&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{PortalMenu}}&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;border-spacing:8px; margin:0px -8px;&amp;quot;&lt;br /&gt;
|class=&amp;quot;MainPageBG&amp;quot; style=&amp;quot;width:100%; border:1px solid #d9e2e2; background:#efefef; vertical-align:top; color:#000;&amp;quot;|&lt;br /&gt;
{|width=&amp;quot;100%&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top; background:#efefef;&amp;quot;&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;The Developer Portal&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
This portal is for developers contributing to FlightGear. If you want to help with FlightGears development, it's a good idea to subscribe yourself to the [http://lists.sourceforge.net/lists/listinfo/flightgear-devel FlightGear devel] mailing list. The [http://sourceforge.net/mailarchive/forum.php?forum_name=flightgear-devel list archive] is also available and should be searched before posting the same question.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
'''Please choose a sub-portal:'''&lt;br /&gt;
* [[Portal:Developer/3D Modelers|3D Modelers]]&lt;br /&gt;
* [[Portal:Developer/Aircraft|Aircraft]]&lt;br /&gt;
* [[Portal:Developer/Scenery|Scenery]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
'''The FlightGear project is looking for organizations/individuals who would be willing to help sponsor a fulltime project coordinator/manager to help oversee the overall development process If you are interested in helping or have anything else to contribute to this issue, please subscribe to the the [http://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg11813.html FlightGear Devel mailing list] to discuss details.''' (Note that the FlightGear project can apply for free funding/sponsoring with [http://www.nlnet.nl nlnet]-applications are to be sent [http://www.nlnet.nl/foundation/request/index.html here]-you can help prepare a template for applying: [[Funding Application]])&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
-------------------------Today's featured article, Did you know------------------------&amp;gt;&lt;br /&gt;
{|style=&amp;quot;border-spacing:8px; margin:0px -8px;&amp;quot;&lt;br /&gt;
|class=&amp;quot;MainPageBG&amp;quot; style=&amp;quot;width:50%; border:1px solid #d9e2e2; background:#efefef; vertical-align:top; color:#000;&amp;quot;|&lt;br /&gt;
{|width=&amp;quot;100%&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top; background:#efefef;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Current Events, Efforts/Branches &amp;amp; Work in Progress&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
*[[FlightGear Package Manager]] (New! Alpha release of [[Java]]/[[XML]] package manager!)&lt;br /&gt;
*[[Walk View‎]] (New! walk view code!)&lt;br /&gt;
*[[FlightGear Contest]]&lt;br /&gt;
'''[[Work in progress|More...]]'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Latest Organizational Issues&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
* [[ Project Infrastructure Enhancements ]]&lt;br /&gt;
* [[Google Summer of Code Candidate Projects]] - application template to allow community members to prepare a possible application to decrease the effort required to actually apply&lt;br /&gt;
* [[Programming Resources]]&lt;br /&gt;
* [[ Tools of the Trade ]]&lt;br /&gt;
|-&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;FlightGear Issues&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
* [[Pending Patches]] (2 listed for the moment)&lt;br /&gt;
* [[Segfaults]] - Reproducible Critical Bugs in FlightGear&lt;br /&gt;
* [[Showstoppers]] - Annoying Issues in FlightGear&lt;br /&gt;
* [[FlightGear Glitches]] (graphical/scenery related glitches)&lt;br /&gt;
|-&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Improvement Initiatives&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
* [[Improving Helicopter Realism]]&lt;br /&gt;
* [[Improving Glider Realism]]&lt;br /&gt;
* [[Improving Airliner Realism]]&lt;br /&gt;
* [[Improving RC/UAV Realism]]&lt;br /&gt;
* [[Usability Improvements]] (list of related feature requests)&lt;br /&gt;
* [[Eye Candy &amp;amp; Effects]] (list of related feature requests)&lt;br /&gt;
'''[[:Category:Code_Cleanup|More...]]'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Compiling&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
* [[ Building FlightGear - Linux]]&lt;br /&gt;
* [http://macflightgear.sourceforge.net/home/documents/how-to-build-flightgear-cvs-on-mac-os-x/ Building FlightGear - Mac OS X]&lt;br /&gt;
* [[ Building FlightGear - Windows]]&lt;br /&gt;
* [[ Building FlightGear Launch Control ]]&lt;br /&gt;
* [[ Building Terragear ]]&lt;br /&gt;
* [[ Keeping FlightGear (win32) up to date without compiling]]&lt;br /&gt;
* [[ OpenSceneGraph ]]&lt;br /&gt;
* [[ Using TortoiseCVS with FlightGear ]]&lt;br /&gt;
* [[ FlightGear and Git ]]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|class=&amp;quot;MainPageBG&amp;quot; style=&amp;quot;width:50%; border:1px solid #d9e2e2; background:#efefef; vertical-align:top&amp;quot;|&lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top; background:#efefef;&amp;quot;&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Contributing&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
* [[Howto:Extending Nasal]]&lt;br /&gt;
* [[Howto:Creating new Subsystems]]&lt;br /&gt;
* [[Howto:Working with the Property Tree API]]&lt;br /&gt;
* [[ Code Cleanup ]] &lt;br /&gt;
* [[ Contributor Repositories ]] mirrors, branches and forks privately maintained by contributors&lt;br /&gt;
* [[ Submitting Patches ]] &lt;br /&gt;
* [[ Technical Reports ]]&lt;br /&gt;
|-&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Code Internals&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
* [[Command Parameters]] &lt;br /&gt;
* [[ File Formats ]]&lt;br /&gt;
* [[ Initialization Sequence ]]&lt;br /&gt;
* [[ Nasal scripting language ]]&lt;br /&gt;
* [[ Property Tree ]]&lt;br /&gt;
* [[ UML Diagrams ]]&lt;br /&gt;
* [[ YASim ]]&lt;br /&gt;
* [[ FlightGear 1.0 aircraft names for command line‎|1.0.0 a/c names for command line]]&lt;br /&gt;
|-&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Todo&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
* [[ Bugs ]]&lt;br /&gt;
* [[ Feature Requests / Proposals / Ideas ]]&lt;br /&gt;
* [[ FGFS Todo ]]&lt;br /&gt;
* [[ FlightGear Expo Checklist ]]&lt;br /&gt;
* [[ Long Term Goals ]]&lt;br /&gt;
|-&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Done&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
* [[ Changes since 0.9.10 ]]&lt;br /&gt;
|-&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;HowTos&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
&lt;br /&gt;
* [[Howto: Set up a multiplayer server|Set up a multiplayer server]]&lt;br /&gt;
'''[[:Category:Howto|More...]]'''&lt;br /&gt;
|-&lt;br /&gt;
! &amp;lt;h2 style=&amp;quot;margin:0; background:#0f7a71; font-size:120%; font-weight:bold; border:1px solid #d9e2e2; text-align:left; color:white; padding:0.2em 0.4em;&amp;quot;&amp;gt;Nasal scripting&amp;lt;/h2&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;color:#000;&amp;quot;| &lt;br /&gt;
* [[ Nasal FAQ ]]&lt;br /&gt;
* [[ Nasal scripting language ]]&lt;br /&gt;
* [[ Nasal Snippets ]]&lt;br /&gt;
* [[ Nasal Modules ]]&lt;br /&gt;
* [[ Nasal Style Guide ]]&lt;br /&gt;
* [[ Writing simple scripts in %22nasal%22 ]]&lt;br /&gt;
* [[ Walk View‎]]&lt;br /&gt;
* [[Howto: Nasal in scenery object XML files]]&lt;br /&gt;
* [[Howto:Extending Nasal]]&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
__NOEDITSECTION__&lt;br /&gt;
&lt;br /&gt;
== Developer Documentation ==&lt;br /&gt;
=== RFC Topics ===&lt;br /&gt;
'''Clarification:''' In its current form, the RFC section is exclusively based on and covered by previous mailing list and forum discussions (as well as various wiki entries), as such it is not supposed to reflect work in progress (RFC=&amp;quot;Request For Comments&amp;quot; and not WIP), but is rather to be seen as an attempt to provide comprehensive analyses and summaries of key issues identified in various FlightGear related discussions and feature requests (which are to be linked to in the corresponding resource sections, if that didn't yet take place, it's because of most of these RFCs being indeed WIP).&lt;br /&gt;
 &lt;br /&gt;
Thus, RFC entries are not meant to imply anyone &amp;quot;working&amp;quot; on any of these issues, in fact only because an RFC entry is listed here doesn't necessarily mean that work on that particular issue is prioritized or generally endorsed by the FlightGear community. &lt;br /&gt;
These RFC documents are however intended to hopefully help increase and maintain awareness of long-standing issues and challenges affecting FlightGear's evolution and overall development progress in order to solicit community feedback about possible approaches to address these in an efficient and structured fashion.&lt;br /&gt;
Anybody is welcome to comment on, help refine and develop new strategies to tackle the challenges presented in these and future RFCs.&lt;br /&gt;
&lt;br /&gt;
* [[Autopilot Enhancements]] - enhancing the autopilot infrastructure.&lt;br /&gt;
* [[Backwards Compatibility Initiative]] - discussing possible ways to improve FlightGear's backwards compatibility.&lt;br /&gt;
* [[Distributed Interactive Simulation|Multiplayer Enhancements]] - discussing possible steps to enhance FlightGear's Multiplayer support.&lt;br /&gt;
* [[FDM engine feature standardization]] - discussing possible steps to standardize feature support of mainstream FlightGear FDM engines.&lt;br /&gt;
* [[FlightGear Glass Cockpits]] - discussing required infrastructure changes to enable non-developers to easily access FlightGear-internals in order to enable them to model complex glass cockpit-type aircraft instrumentation systems.&lt;br /&gt;
* [[FlightGear Headless]] - discussing required steps to enable FlightGear to be used as its own regression testing framework&lt;br /&gt;
* [[FlightGear Sessions]] - discussing possible steps to finally allow aircraft to be reliably switched at runtime.&lt;br /&gt;
* [[Formalizing Aircraft Status]] - discussing suggestions about how to more properly describe aircraft development status.&lt;br /&gt;
* [[Keyboard function priority list]] - reorganizing FlightGear keybindings.&lt;br /&gt;
* [[Next Generation Scenery ]] - revamping the FG scenery engine.&lt;br /&gt;
* [[Property Tree Reorganization]] - reorganizing the property tree (i.e. implementing and enforcing existing property/node naming conventions).&lt;br /&gt;
* [[Recommended Property Tree Enhancements]] - discussing possible property tree enhancements to help ensure integrity of crucial runtime state.&lt;br /&gt;
* [[Recommended Project Policies]] - discussing recommended policies for future contributions to the project.&lt;br /&gt;
* [[Simplifying Aircraft Deployment]] - identifying potential steps to simplify deployment of FlightGear aircraft.&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=General_Dynamics_F-16_Fighting_Falcon&amp;diff=12932</id>
		<title>General Dynamics F-16 Fighting Falcon</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=General_Dynamics_F-16_Fighting_Falcon&amp;diff=12932"/>
		<updated>2009-06-03T14:02:17Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* Keyboard Controls */ cosmetics&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{infobox Aircraft&lt;br /&gt;
|image = General_Dynamics_F16.jpg&lt;br /&gt;
|name = General Dynamics F16&lt;br /&gt;
|type = Military aircraft&lt;br /&gt;
|fdm = JSBSim&lt;br /&gt;
|status = Production&lt;br /&gt;
|authors = Erik Hofman, Martin &amp;quot;Pegasus&amp;quot; Schmitt (panel textures)&lt;br /&gt;
|fgname = f16 &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Keyboard Controls==&lt;br /&gt;
'''Flight Controls'''&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|Ctrl-b&lt;br /&gt;
|: Toggles speed brake&lt;br /&gt;
|-&lt;br /&gt;
|Delete&lt;br /&gt;
|: Toggles FBW (Fly by Wire) override&lt;br /&gt;
|}&lt;br /&gt;
'''Miscellaneous'''&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|Ctrl-f&lt;br /&gt;
|: Triggers flare release&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-h&lt;br /&gt;
|: Toggles arrester hook&lt;br /&gt;
|-&lt;br /&gt;
|C&lt;br /&gt;
|: Toggles canopy&lt;br /&gt;
|-&lt;br /&gt;
|e&lt;br /&gt;
|: Fires the cannon&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
'''Radar'''&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|Ctrl-n&lt;br /&gt;
|: Toggles Radar RWS / TWS AUTO Modes&lt;br /&gt;
|-&lt;br /&gt;
|E&lt;br /&gt;
|: Decreases Radar Range&lt;br /&gt;
|-&lt;br /&gt;
|R&lt;br /&gt;
|: Increases Radar Range&lt;br /&gt;
|-&lt;br /&gt;
|q&lt;br /&gt;
|: Toggles Radar Standby Mode&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Development status/Issues/Todo ==&lt;br /&gt;
Issues to be fixed shortly:&lt;br /&gt;
* The first time the user change the view (ie. by hiting &amp;quot;v&amp;quot;) there is a 10/15 seconds pause.&lt;br /&gt;
**This seems to be due to the liveries textures. Removing the Livery choice and all associated entry in the -set file doesn't change the delay. Then reducing and flatening (remove alpha channel) the main texture f16.rgb from 2048 to 1024 px reduce the delay to 6/7 sec, then flatening the transparent logo texture f16-trans.rgb reduce the delay to 3/sec.&lt;br /&gt;
**Solution: switch to PNG textures, remove transparency on logos or even remove logos. Use a different mapping layout with 4 x 1024^2 textures instead of 1 x 2048^2 texture. Optimize surface usage in the textures, flaten textures as much as possible. (see much more complicated and detailled f-14b which doesn't suffer delay) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TDL FDM:&lt;br /&gt;
* Main U/C is above ground.&lt;br /&gt;
* Vibration when accelerating on the runway for takeof.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TDL Outside&lt;br /&gt;
* flaps are in wrong position and can't be triggered.&lt;br /&gt;
** that's because the f16 is flight computer controlled, so this is correct and NOT an error. (this to be moved in flight documentation)&lt;br /&gt;
* pilot's shoulder patch is empty. (remove ?)&lt;br /&gt;
* engine turbines do not rotate (is it useful ?)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TDL Cockpit and systems:&lt;br /&gt;
* HSI 3d model and textures.&lt;br /&gt;
* internal/external lighting panel.&lt;br /&gt;
* FMD's buttons pick animation. Define a logic in the FMD interactivity ?&lt;br /&gt;
* ICP better texture. buttons pick animation. Define a logic in the ICP interactivity ?&lt;br /&gt;
* HUD modes:&lt;br /&gt;
** A/A mode&lt;br /&gt;
** Basic nav mode (those could be a first step in order to provide usability in short term)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sounds: (Low priority)&lt;br /&gt;
* Establish a list of all sounds that can be produced by the F-16 and its driver:&lt;br /&gt;
&lt;br /&gt;
Cockpit:&lt;br /&gt;
**switches&lt;br /&gt;
**knobs&lt;br /&gt;
**levers&lt;br /&gt;
**buttons&lt;br /&gt;
**wheels (ICP)&lt;br /&gt;
**rudder pedals&lt;br /&gt;
**ejection seat&lt;br /&gt;
**canopy **implemented**&lt;br /&gt;
**canopy lock **implemented**&lt;br /&gt;
&lt;br /&gt;
Audio:&lt;br /&gt;
**&amp;quot;bitching betty&amp;quot;&lt;br /&gt;
***missile launch&lt;br /&gt;
***warning **implemented**&lt;br /&gt;
***chaff/flare&lt;br /&gt;
***jammer&lt;br /&gt;
**RWR&lt;br /&gt;
***radar signature identification sounds&lt;br /&gt;
****radar spike&lt;br /&gt;
****radar lock&lt;br /&gt;
**gear horn (currently implemented as alert?)&lt;br /&gt;
&lt;br /&gt;
Pilot:&lt;br /&gt;
**breathing&lt;br /&gt;
**movement&lt;br /&gt;
**brevity comms&lt;br /&gt;
&lt;br /&gt;
External-sounds:&lt;br /&gt;
**engine **implemented**&lt;br /&gt;
**landing gear&lt;br /&gt;
***up&lt;br /&gt;
***down&lt;br /&gt;
***broken&lt;br /&gt;
**ordnance&lt;br /&gt;
***jettison store(s)&lt;br /&gt;
***bomb drop&lt;br /&gt;
***missile launch&lt;br /&gt;
***20mm cannon **implemented**&lt;br /&gt;
**damage&lt;br /&gt;
***airframe overstress&lt;br /&gt;
***gun hit&lt;br /&gt;
***explosion&lt;br /&gt;
**Mid air refueling &lt;br /&gt;
***refueling door&lt;br /&gt;
****open&lt;br /&gt;
****close&lt;br /&gt;
***tank boom (tanker aircraft)&lt;br /&gt;
****connect&lt;br /&gt;
****disconnect&lt;br /&gt;
&lt;br /&gt;
== Related content ==&lt;br /&gt;
=== Related lists ===&lt;br /&gt;
* [[Aircraft]]&lt;br /&gt;
* [[Aircraft Todo]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft|F-16 Falcon]]&lt;br /&gt;
[[Category:Aircraft TODO]]&lt;br /&gt;
[[Category:Military aircraft]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=Grumman_F-14_Tomcat&amp;diff=12899</id>
		<title>Grumman F-14 Tomcat</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=Grumman_F-14_Tomcat&amp;diff=12899"/>
		<updated>2009-05-30T20:56:16Z</updated>

		<summary type="html">&lt;p&gt;Xiii: cosmetics&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{infobox Aircraft&lt;br /&gt;
|image =F-14.jpg&lt;br /&gt;
|name =F-14 Tomcat&lt;br /&gt;
|type =Interceptor/multi-role Fighter aircraft&lt;br /&gt;
|livery =U.S. Navy&lt;br /&gt;
|authors =Enrique Laso, Alexis Bory (cockpit)&lt;br /&gt;
|status =Production&lt;br /&gt;
|fdm =YASim&lt;br /&gt;
|3dcockpit = &amp;amp;radic;&lt;br /&gt;
|carrier = &amp;amp;radic;&lt;br /&gt;
|fgname = f-14b&lt;br /&gt;
}}&lt;br /&gt;
The '''Grumman F-14 Tomcat''' is a supersonic, twin-engine, two-seat, variable geometry wing [[aircraft]]. The F-14 was the United States Navy's primary maritime air superiority fighter, fleet defense interceptor and tactical reconnaissance platform from 1974 to 2006. It later performed precision strike missions once it was integrated with the Low Altitude Navigation and Targeting Infrared for Night LANTIRN system. The F-14 was developed after the collapse of the F-111B project, and was the first of the American teen-series fighters which were designed incorporating the experience of air combat in Vietnam against MiGs.&lt;br /&gt;
&lt;br /&gt;
It entered service in 1972 with the U.S. Navy, replacing the [[F-4 Phantom II]]. It was later exported to the former Imperial Iranian Air Force in 1976, during a time when the US still had good relations with Iran. It was retired from the active U.S. Navy fleet on 22 September 2006, having been replaced by the [[F/A-18 Hornet|F/A-18E/F Super Hornet]]. As of 2007, it remains in service only with the Islamic Republic of Iran Air Force.&lt;br /&gt;
&lt;br /&gt;
==Keyboard Controls==&lt;br /&gt;
'''Flight Controls'''&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|Home&lt;br /&gt;
|Increase elevator trim&lt;br /&gt;
|-&lt;br /&gt;
|End&lt;br /&gt;
|Decrease elevator trim&lt;br /&gt;
|-&lt;br /&gt;
|] or f&lt;br /&gt;
|Lower flaps&lt;br /&gt;
|-&lt;br /&gt;
|[ or F&lt;br /&gt;
|Raise flaps&lt;br /&gt;
|-&lt;br /&gt;
|s&lt;br /&gt;
|Increase speed brakes&lt;br /&gt;
|-&lt;br /&gt;
|S&lt;br /&gt;
|Decrease speed brakes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Image:F-14_cockpit.jpg|thumb|270px|Cockpit of the F-14.]]&lt;br /&gt;
'''Automatic Flight controls'''&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|a&lt;br /&gt;
|Toggle APC (Landing Automatic Power control)&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-d&lt;br /&gt;
|Toggle DLC (Landing Direct Lift Control)&lt;br /&gt;
|-&lt;br /&gt;
|d&lt;br /&gt;
|DLC increase&lt;br /&gt;
|-&lt;br /&gt;
|D&lt;br /&gt;
|DLC decrease&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-t&lt;br /&gt;
|Toggle AFCS (Defaut Attitude Mode)&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-a&lt;br /&gt;
|Enable AFCS Altitude Mode&lt;br /&gt;
|-&lt;br /&gt;
|*&lt;br /&gt;
|Engage AFCS Altitude Mode&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-h&lt;br /&gt;
|Enable AFCS Heading Mode&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-s&lt;br /&gt;
|Toggle ground spoilers armed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''HSD - radar and RWR'''&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|h&lt;br /&gt;
|Cycles through HSD modes: radar - compas - ECM (RWR)&lt;br /&gt;
|-&lt;br /&gt;
|E&lt;br /&gt;
|Decrease Radar Range&lt;br /&gt;
|-&lt;br /&gt;
|R&lt;br /&gt;
|Increase Radar Range&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-r&lt;br /&gt;
|Toggles Radar Standby Mode. In standby mode the radar doesn't emit and the &amp;quot;STAND BY&amp;quot; words are displayed on the HSD screen when in TID mode.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Miscellaneous'''&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|e&lt;br /&gt;
|Toggle canopy and access ladder&lt;br /&gt;
|-&lt;br /&gt;
|u&lt;br /&gt;
|Toggle refuelling probe&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-o&lt;br /&gt;
|Toggle oversweep (on ground only, otherwise sweep is automatic)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Aircraft help==&lt;br /&gt;
===On Shore Takeoff===&lt;br /&gt;
* With wings on over sweep position (parking position) the elevator command is inhibited... just in case...&lt;br /&gt;
* Check air brake in.&lt;br /&gt;
* Fuel level: The Flighfgear F-14 has a 10% fuel level and no external load at start up. This means the aircraft will be very light and have a strong tendency to raise the nose when accelerating on the runway. With less weight on the nose wheel, the nose wheel steering loose its efficiency. If the pilot use afterburners for take off, the loose of nose wheel steering efficiency is increased (afterburners are not necessary for take off). '''Set a suitable fuel level before take off.''' &lt;br /&gt;
* Flaps: Set full flaps.&lt;br /&gt;
* Elevators: The pilot will need to maintain a correct (leveled) attitude using the stick. Push the stick forward to prevent nose pitching up at the begining of the take off run, release slightly as speed increase, pull smoothly when reaching rotation speed (150kts).&lt;br /&gt;
* Rudder: Currently the FDM use a small rudder rate of move to damp some nasty oscillations when the rudder is not moved enough smoothly. '''If not anticipated''', this delay will cause overshooting the desired rudder effect, then a strong counter action on the rudder will be applied by the pilot on the rudder with again an overshoot... That's a typical  [http://en.wikipedia.org/wiki/Pilot-induced_oscillation pilot-induced oscillation]. To avoid this set a small amount of rudder, wait for the effect, see if it's enough, then add a small amount of rudder again if needed... when doing so the pilot will prefer increasing the power smoothly. Now the aircraft will quickly gain speed while covering the runway and the rudder effect will increase thus decreasing the needed delay and the amount of pressure on the stick to match the desired effect.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Pilot's Cockpit==&lt;br /&gt;
[[Image:F-14b-pilots-display-control-panel.jpg|thumb|270px|Pilot's Display Control Panel.]]&lt;br /&gt;
===Displays Control Panel===&lt;br /&gt;
* The Display Control Panel is located on the right side of the pilot's main panel, under the Hook lever. The 3 botom switches respectively turn the VDI, HUD and HSD displays on/off. The HSD MODE switch is also available, it selects NAV or TID or ECM mode. This can also be achieved by cycling through these 3 modes with the &amp;quot;'''h'''&amp;quot; key. (''Note: the NAV MODE push buttons - TO, CRUISE, A/A, A/G, LDG - are not operational yet.'')&lt;br /&gt;
** VDI: Vertical Display Indicator. Shows the aircraft attitude in roll and pitch, with an artifitial horizon and magnetic heading.&lt;br /&gt;
** HUD: Head UP Display.&lt;br /&gt;
** HSD: Horizontal Situation Display. HSD shows either:&lt;br /&gt;
***in NAV mode: compas with navigation indications,&lt;br /&gt;
***in TID mode (Tactical Information Display): an horizontal representation of the tactical situation (that is informations provided by the RIO from what he sees in his radar displays).&lt;br /&gt;
***in ECM mode: a representation of radar threats around the Aircraft.   &lt;br /&gt;
&lt;br /&gt;
== Related content ==&lt;br /&gt;
=== Related lists ===&lt;br /&gt;
* [[Aircraft]]&lt;br /&gt;
* [[Aircraft Todo]]&lt;br /&gt;
&lt;br /&gt;
{{Grumman}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft]]&lt;br /&gt;
[[Category:Aircraft TODO]]&lt;br /&gt;
[[Category:Military aircraft]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=General_Dynamics_F-16_Fighting_Falcon&amp;diff=12862</id>
		<title>General Dynamics F-16 Fighting Falcon</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=General_Dynamics_F-16_Fighting_Falcon&amp;diff=12862"/>
		<updated>2009-05-28T09:38:19Z</updated>

		<summary type="html">&lt;p&gt;Xiii: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{infobox Aircraft&lt;br /&gt;
|image = General_Dynamics_F16.jpg&lt;br /&gt;
|name = General Dynamics F16&lt;br /&gt;
|type = Military aircraft&lt;br /&gt;
|fdm = JSBSim&lt;br /&gt;
|status = early-production&lt;br /&gt;
|authors = Erik Hofman, Martin &amp;quot;Pegasus&amp;quot; Schmitt (panel textures)&lt;br /&gt;
|fgname = &amp;lt;tt&amp;gt;f16&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;f16-3d&amp;lt;/tt&amp;gt; (3d cockpit), &amp;lt;tt&amp;gt;f16at&amp;lt;/tt&amp;gt; (F-16AT), &amp;lt;tt&amp;gt;f16-mlu&amp;lt;/tt&amp;gt; (F-16AM) &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|__TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Keyboard Controls==&lt;br /&gt;
'''Flight Controls'''&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|Ctrl-b&lt;br /&gt;
|toggle speed brake&lt;br /&gt;
|-&lt;br /&gt;
|Delete&lt;br /&gt;
|Toggle FBW (Fly By Wire) override&lt;br /&gt;
|}&lt;br /&gt;
'''Miscellaneous'''&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|Ctrl-f&lt;br /&gt;
|trigger flare release&lt;br /&gt;
|-&lt;br /&gt;
|Ctrl-h&lt;br /&gt;
|toggle arrester hook&lt;br /&gt;
|-&lt;br /&gt;
|C&lt;br /&gt;
|Toggle canopy&lt;br /&gt;
|-&lt;br /&gt;
|e&lt;br /&gt;
|Fire the cannon&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
'''Radar'''&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|Ctrl-n&lt;br /&gt;
|Toggles Radar RWS / TWS AUTO Modes&lt;br /&gt;
|-&lt;br /&gt;
|E&lt;br /&gt;
|Decrease Radar Range&lt;br /&gt;
|-&lt;br /&gt;
|R&lt;br /&gt;
|Increase Radar Range&lt;br /&gt;
|-&lt;br /&gt;
|q&lt;br /&gt;
|Toggles Radar Standby Mode&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Development status/Issues/Todo ==&lt;br /&gt;
Issues to be fixed shortly:&lt;br /&gt;
* The first time the user change the view (ie. by hiting &amp;quot;v&amp;quot;) there is a 10/15 seconds pause.&lt;br /&gt;
**This seems to be due to the liveries textures. Removing the Livery choice and all associated entry in the -set file doesn't change the delay. Then reducing and flatening (remove alpha channel) the main texture f16.rgb from 2048 to 1024 px reduce the delay to 6/7 sec, then flatening the transparent logo texture f16-trans.rgb reduce the delay to 3/sec.&lt;br /&gt;
**Solution: switch to PNG textures, remove transparency on logos or even remove logos. Use a different mapping layout with 4 x 1024^2 textures instead of 1 x 2048^2 texture. Optimize surface usage in the textures, flaten textures as much as possible. (see much more complicated and detailled f-14b which doesn't suffer delay) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TDL FDM:&lt;br /&gt;
* Main U/C is above ground.&lt;br /&gt;
* Vibration when accelerating on the runway for takeof.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TDL Outside&lt;br /&gt;
* flaps are in wrong position and can't be triggered.&lt;br /&gt;
** that's because the f16 is flight computer controlled, so this is correct and NOT an error. (this to be moved in flight documentation)&lt;br /&gt;
* pilot's shoulder patch is empty. (remove ?)&lt;br /&gt;
* engine turbines do not rotate (is it useful ?)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TDL Cockpit and systems:&lt;br /&gt;
* HSI 3d model and textures.&lt;br /&gt;
* internal/external lighting panel.&lt;br /&gt;
* FMD's buttons pick animation. Define a logic in the FMD interactivity ?&lt;br /&gt;
* ICP better texture. buttons pick animation. Define a logic in the ICP interactivity ?&lt;br /&gt;
* HUD modes:&lt;br /&gt;
** A/A mode&lt;br /&gt;
** Basic nav mode (those could be a first step in order to provide usability in short term)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sounds:&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
== Related content ==&lt;br /&gt;
=== Related lists ===&lt;br /&gt;
* [[Aircraft]]&lt;br /&gt;
* [[Aircraft Todo]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft|F-16 Falcon]]&lt;br /&gt;
[[Category:Military aircraft]]&lt;br /&gt;
[[Category:Aircraft TODO]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=General_Dynamics_F-16_Fighting_Falcon&amp;diff=12861</id>
		<title>General Dynamics F-16 Fighting Falcon</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=General_Dynamics_F-16_Fighting_Falcon&amp;diff=12861"/>
		<updated>2009-05-28T08:28:38Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* Development status/Issues/Todo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{infobox Aircraft&lt;br /&gt;
|image = General_Dynamics_F16.jpg&lt;br /&gt;
|name = General Dynamics F16&lt;br /&gt;
|type = Military aircraft&lt;br /&gt;
|fdm = JSBSim&lt;br /&gt;
|status = early-production&lt;br /&gt;
|authors = Erik Hofman, Martin &amp;quot;Pegasus&amp;quot; Schmitt (panel textures)&lt;br /&gt;
|fgname = &amp;lt;tt&amp;gt;f16&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;f16-3d&amp;lt;/tt&amp;gt; (3d cockpit), &amp;lt;tt&amp;gt;f16at&amp;lt;/tt&amp;gt; (F-16AT), &amp;lt;tt&amp;gt;f16-mlu&amp;lt;/tt&amp;gt; (F-16AM) &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|__TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Development status/Issues/Todo ==&lt;br /&gt;
Issues to be fixed shortly:&lt;br /&gt;
* The first time the user change the view (ie. by hiting &amp;quot;v&amp;quot;) there is a 10/15 seconds pause.&lt;br /&gt;
**This seems to be due to the liveries textures. Removing the Livery choice and all associated entry in the -set file doesn't change the delay. Then reducing and flatening (remove alpha channel) the main texture f16.rgb from 2048 to 1024 px reduce the delay to 6/7 sec, then flatening the transparent logo texture f16-trans.rgb reduce the delay to 3/sec.&lt;br /&gt;
**Solution: switch to PNG textures, remove transparency on logos or even remove logos. Use a different mapping layout with 4 x 1024^2 textures instead of 1 x 2048^2 texture. Optimize surface usage in the textures, flaten textures as much as possible. (see much more complicated and detailled f-14b which doesn't suffer delay) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TDL FDM:&lt;br /&gt;
* Main U/C is above ground.&lt;br /&gt;
* Vibration when accelerating on the runway for takeof.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TDL Outside&lt;br /&gt;
* flaps are in wrong position and can't be triggered.&lt;br /&gt;
** that's because the f16 is flight computer controlled, so this is correct and NOT an error. (this to be moved in flight documentation)&lt;br /&gt;
* pilot's shoulder patch is empty. (remove ?)&lt;br /&gt;
* engine turbines do not rotate (is it useful ?)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TDL Cockpit and systems:&lt;br /&gt;
* HSI 3d model and textures.&lt;br /&gt;
* internal/external lighting panel.&lt;br /&gt;
* FMD's buttons pick animation. Define a logic in the FMD interactivity ?&lt;br /&gt;
* ICP better texture. buttons pick animation. Define a logic in the ICP interactivity ?&lt;br /&gt;
* HUD modes:&lt;br /&gt;
** A/A mode&lt;br /&gt;
** Basic nav mode (those could be a first step in order to provide usability in short term)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sounds:&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
== Related content ==&lt;br /&gt;
=== Related lists ===&lt;br /&gt;
* [[Aircraft]]&lt;br /&gt;
* [[Aircraft Todo]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft|F-16 Falcon]]&lt;br /&gt;
[[Category:Military aircraft]]&lt;br /&gt;
[[Category:Aircraft TODO]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=General_Dynamics_F-16_Fighting_Falcon&amp;diff=12859</id>
		<title>General Dynamics F-16 Fighting Falcon</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=General_Dynamics_F-16_Fighting_Falcon&amp;diff=12859"/>
		<updated>2009-05-27T21:58:21Z</updated>

		<summary type="html">&lt;p&gt;Xiii: /* Development status/Issues/Todo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{infobox Aircraft&lt;br /&gt;
|image = General_Dynamics_F16.jpg&lt;br /&gt;
|name = General Dynamics F16&lt;br /&gt;
|type = Military aircraft&lt;br /&gt;
|fdm = JSBSim&lt;br /&gt;
|status = early-production&lt;br /&gt;
|authors = Erik Hofman, Martin &amp;quot;Pegasus&amp;quot; Schmitt (panel textures)&lt;br /&gt;
|fgname = &amp;lt;tt&amp;gt;f16&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;f16-3d&amp;lt;/tt&amp;gt; (3d cockpit), &amp;lt;tt&amp;gt;f16at&amp;lt;/tt&amp;gt; (F-16AT), &amp;lt;tt&amp;gt;f16-mlu&amp;lt;/tt&amp;gt; (F-16AM) &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|__TOC__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Development status/Issues/Todo ==&lt;br /&gt;
Issues to be fixed shortly:&lt;br /&gt;
* The first time the user change the view (ie. by hiting &amp;quot;v&amp;quot;) there is a 10 seconds pause. This may be due to the liveries.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TDL FDM:&lt;br /&gt;
* Main U/C is above ground.&lt;br /&gt;
* Vibration when accelerating on the runway for takeof.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TDL Outside&lt;br /&gt;
* flaps are in wrong position and can't be triggered.&lt;br /&gt;
** that's because the f16 is flight computer controlled, so this is correct and NOT an error. (this to be moved in flight documentation)&lt;br /&gt;
* pilot needs a shoulder patch.&lt;br /&gt;
* engine turbines do not rotate (is it useful ?)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TDL Cockpit and systems:&lt;br /&gt;
* HSI 3d model and textures.&lt;br /&gt;
* internal/external lighting panel.&lt;br /&gt;
* FMD's buttons pick animation. Define a logic in the FMD interactivity ?&lt;br /&gt;
* ICP better texture. buttons pick animation. Define a logic in the ICP interactivity ?&lt;br /&gt;
* HUD modes:&lt;br /&gt;
** A/A mode&lt;br /&gt;
** Basic nav mode (those could be a first step in order to provide usability in short term)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sounds:&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
== Related content ==&lt;br /&gt;
=== Related lists ===&lt;br /&gt;
* [[Aircraft]]&lt;br /&gt;
* [[Aircraft Todo]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft|F-16 Falcon]]&lt;br /&gt;
[[Category:Military aircraft]]&lt;br /&gt;
[[Category:Aircraft TODO]]&lt;/div&gt;</summary>
		<author><name>Xiii</name></author>
	</entry>
</feed>