<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.flightgear.nl/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Adaz</id>
	<title>FlightGear wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.flightgear.nl/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Adaz"/>
	<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/Special:Contributions/Adaz"/>
	<updated>2026-08-15T00:11:26Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/Pilote_automatique_Bendix/King_KAP140&amp;diff=143959</id>
		<title>Fr/Pilote automatique Bendix/King KAP140</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/Pilote_automatique_Bendix/King_KAP140&amp;diff=143959"/>
		<updated>2026-04-12T17:30:58Z</updated>

		<summary type="html">&lt;p&gt;Adaz: /* Prise en main rapide */  Quick start FR translation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{BeingTranslated}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le système de &#039;&#039;&#039;&#039;&#039;pilotage automatique Bendix/King KAP 140 à deux axes avec présélection d&#039;altitude&#039;&#039;&#039;&#039;&#039; est le pilote automatique par défaut du [[Fr/Cessna 172|Cessna 172]] ; il commande la gouverne de profondeur et les ailerons.&lt;br /&gt;
&lt;br /&gt;
== Prise en main rapide ==&lt;br /&gt;
[[File:KAP140.jpg|KAP140 Two Axis with Preselect Altitude]]&lt;br /&gt;
&lt;br /&gt;
Normalement, le pilote automatique démarre lors de la mise sous tension du système électrique&amp;lt;ref&amp;gt;Les modèles les plus récents simulent les vérifications avant vol, ce qui fait qu&#039;ils ne sont pas immédiatement disponibles après leur mise sous tension.&amp;lt;/ref&amp;gt;. Il est généralement raccordé à un bus avionique et protégé par un disjoncteur dédié ; s&#039;il reste éteint, vérifiez l&#039;alimentation, les commutateurs du bus avionique et le disjoncteur.&lt;br /&gt;
&lt;br /&gt;
# Pour activer le pilote automatique en mode « ailes à plat» (ROL) et en mode « vitesse verticale » (VS), maintenez le bouton AP enfoncé pendant 0,25 seconde&amp;lt;ref&amp;gt;Une pression suffit pour les modèles les plus anciens.&amp;lt;/ref&amp;gt;. Le pilote automatique tentera de garder les ailes à plat en conservant un taux de virage nul. Il tentera également de maintenir la vitesse verticale enregistrée au moment de l&#039;activation. Utilisez les boutons UP et DN pour régler la vitesse verticale souhaitée.&lt;br /&gt;
# Lorsque le pilote automatique est activé, vous pouvez utiliser le bouton HDG pour basculer entre les modes « ailes à plat » (ROL) et « sélection du cap » (HDG). En mode « sélection du cap », le pilote automatique s&#039;efforcera de maintenir le cap sélectionné par l&#039;indicateur de cap du gyrocompas.&lt;br /&gt;
# Utilisez le bouton NAV pour basculer entre le mode navigation (NAV) et le mode ailes à plat (ROL). Le mode NAV correspond à un vol vers NAV1 ou GPS. Il s&#039;agit de l&#039;un des modes de cap du KAP140, qui indique la direction lorsque le repère de cap OBS est activé. Soyez vigilant.&lt;br /&gt;
# Passez en mode « Autre » et en mode « Approche (APR) » lorsque vous appuyez sur le bouton APR et suivez la balise de repérage, le VOR, le GPS et l&#039;ILS (localisateur et pente de descente) pour une approche automatique. Ce mode est recommandé pour les approches aux instruments.&lt;br /&gt;
# Le bouton REV active le mode d&#039;inversion, dans lequel le pilote automatique éloigne l&#039;appareil de la piste. Ce mode est similaire au mode APR, à la différence que la trajectoire s&#039;éloigne du localisateur (LOC) et que la pente de descente (GS) n&#039;est pas utilisée.&lt;br /&gt;
# Utilisez le bouton ALT pour basculer entre les modes vitesse verticale (VS) et maintien d&#039;altitude (ALT). En mode maintien d&#039;altitude, les boutons UP et DN modifient l&#039;altitude de 20 pieds à chaque pression.&lt;br /&gt;
# Le bouton ARM permet de pré-sélectionner l&#039;altitude à l&#039;aide du bouton rotatif en suivant la procédure ci-dessous ; une nouvelle pression sur ce bouton désactive la pré-sélection d&#039;altitude.&lt;br /&gt;
## Entrez la pression atmosphérique actuelle à l&#039;aide du bouton BARO et du bouton rotatif&lt;br /&gt;
## Vérifiez que l&#039;écran affiche l&#039;altitude, puis réglez l&#039;altitude souhaitée à l&#039;aide du bouton rotatif.&lt;br /&gt;
## Réglez la vitesse verticale souhaitée à l&#039;aide des boutons UP et DN.&lt;br /&gt;
## Appuyez sur le bouton ARM pour activer le mode ARM.&lt;br /&gt;
# Le bouton BARO permet de régler la pression atmosphérique. Lorsque vous appuyez sur le bouton BARO, réglez la pression atmosphérique souhaitée à l&#039;aide du bouton rotatif. Si vous maintenez le bouton enfoncé, l&#039;affichage passe en hPa (et inversement) (astuce : cela vous permet de convertir facilement les valeurs entre InHG et hPa).&lt;br /&gt;
# Appuyez sur le bouton AP pour désactiver le pilote automatique. Les modes horizontal et vertical ne peuvent pas être activés séparément.&lt;br /&gt;
&lt;br /&gt;
Veuillez consulter le guide du pilote pour obtenir des instructions complètes sur l&#039;utilisation du système de pilotage automatique KAP140.&lt;br /&gt;
&lt;br /&gt;
== Limites ==&lt;br /&gt;
* Not certified for use below 200ft [[AGL]], below 80 or above 160 knots [[IAS]] or when alternate static port is active.&lt;br /&gt;
* Only activate when flaps are retracted.&lt;br /&gt;
* Do not override the autopilot with flight controls, instead deactivate it temporarily to make manual adjustments.&lt;br /&gt;
* Do not activate the autopilot near the ground (takeoff, landing) or at low speeds: it will mess up and may crash you into the ground.&lt;br /&gt;
* It also has no autoland capability, so it can&#039;t land you based on ILS signals.&lt;br /&gt;
* Don&#039;t activate it when in an unstable or mistrimmed flight attitude. Tough it will try(!) to stabilize the plane, this is unsafe.&lt;br /&gt;
* It will not rescue you out of a stall, so watch the airspeed regularly. If the plane slows down, the autopilot will increase pitch (with the HEAD UP light lit) to maintain the VS/ALT mode ordered, putting you into a stall. Disengage the autopilot and manually stabilize your flight.&lt;br /&gt;
* Altitude catching only works if you are flying towards the desired setting. For example, if you are at 1500ft, entered 2000ft as target and then descend, it will not intercept but fly you into the ground. Similarly, if you enter an altitude below you and accidentally climb, you will eventually reach the planes service ceiling and stall. The &amp;quot;ALT ARM&amp;quot; mode does not mean &amp;quot;bring me to that altitude&amp;quot;.&lt;br /&gt;
* Like with altitude interception, intercepting a VOR radial or ILS will not work, if the heading bug was not aligned or if you try to intercept from a custom angle (ie. engaging NAV mode from ROL).&lt;br /&gt;
&lt;br /&gt;
== Alerte d&#039;altitude (bip sonore) ==&lt;br /&gt;
A nice feature for assisting manual flights is the altitude alert. This is the aural beeping alert when you get near the selected altitude preset:&lt;br /&gt;
* When getting near 1000ft of the selected altitude, it starts to beep five times and show a steady &amp;quot;ALERT&amp;quot; right below the altitude.&lt;br /&gt;
* When intercepting the altitude, the ALERT annunciator vanishes if you get 200ft near, and will shortly flash up when crossing the selected altitude to signal it &amp;quot;catched on&amp;quot;.&lt;br /&gt;
* When now exceeding the +-200ft band, it will alert by flashing and beeping.&lt;br /&gt;
&lt;br /&gt;
This feature just needs a calibrated baro setting and a selected altitude, thus it is also active when using the modes utilizing altitude preset described below.&lt;br /&gt;
&lt;br /&gt;
== Exemples d&#039;utilisation ==&lt;br /&gt;
This example tries to show you how to deal with the autopilot to achieve common tasks. There are more advanced techniques to achieve with the autopilot, but they are out of scope for this quick introduction. Please refer to the &#039;KAP 140 Pilot&#039;s Guide&#039; which is linked below.&lt;br /&gt;
&lt;br /&gt;
For better familiarization it would be good to follow trough the following guide inside flightgear.&lt;br /&gt;
&lt;br /&gt;
{{note| Be aware of procedure differences when you have an [[HSI|Horizontal Situation Indicator (HSI)]] installed in the aircraft: In this case, the KAP 140 will not have an automatic 45°-Intercept for NAV/APR/REV modes when switching from HDG-mode and you need to select the desired intercept course manually by turning the heading bug to the desired intercept course. }}&lt;br /&gt;
&lt;br /&gt;
=== Préparations avant le décollage ===&lt;br /&gt;
* For the HDG/NAV mode it is important to calibrate the [[Avionics_and_instruments#Directional_Gyro|Directional Gyro (DG)]] to the magnetic compass (with running motor, so the DG has power): read the magnetic compass and rotate the DG so its upper bearing mark reflects that course (use the red heading bug if necessary, it makes it easier at the beginning). If your DG was not calibrated, this will not be the magnetic course and you probably will not get where you wanted to.&lt;br /&gt;
* For the ALT mode it is important to calibrate the barometric setting of the autopilot to the one of the altimeter: read the altimeters baro setting from the Kollsman window (the small window at the altimeter), press the &amp;quot;BARO&amp;quot; key at the autopilot and rotate the right &amp;quot;altitude-preselect knob&amp;quot; so the autopilot shows the same setting. If you miss to calibrate the baro setting, you will under-/overshoot altitude presets&lt;br /&gt;
* You should run through the HDG and VS modes on ground as preflight check to make sure the autopilot is operating the aileron, elevator and trim wheel&lt;br /&gt;
* If you intend to follow the runway heading after takeoff, now is a good time to adjust the heading bug.&lt;br /&gt;
* If you intend to climb to a specific altitude and let the autopilot intercept it, you should now rotate the altitude preselect knob of the autopilot to the desired altitude.&lt;br /&gt;
&lt;br /&gt;
=== Après le cécolage : maintien du cap, gestion de la montée ===&lt;br /&gt;
It is not advised to engage the autopilot immediately for takeoff as it will mess up with lower speeds. Establish a smooth climb rate and trimmed flight first.&lt;br /&gt;
&lt;br /&gt;
When you achieved a stable climb rate after takeoff, engage the autopilot by pressing &amp;quot;AP&amp;quot;. It will engage in ROL/VS mode: keeps the wings level and maintain climb at the current rate. The moment you engage the autopilot it will show &amp;quot;ROL&amp;quot;, &amp;quot;VS&amp;quot;, and at the right side the currently set climb rate for some seconds. Always visually confirm the autopilot shows the modes you expect!&lt;br /&gt;
&lt;br /&gt;
If not done yet, rotate the red heading bug at the DG to the desired heading before switching to HDG mode.&lt;br /&gt;
&lt;br /&gt;
Once you press the HGT button, the autopilot will switch from ROL to the HDG mode, and the plane now follows the desired course. When you change the heading bug, the plane will bank and follow the new heading (it will do this at standard turn rate).&lt;br /&gt;
&lt;br /&gt;
=== Monter jusqu&#039;à l&#039;altitude souhaitée, puis la maintenir (interception d&#039;altitude ) ===&lt;br /&gt;
The autpilot now should be in HDG/VS mode. You should check the vertical speed the autopilot automatically set to the climb rate you had when engaging it. Using the buttons &amp;quot;UP&amp;quot; and &amp;quot;DN&amp;quot; you can adjust the vertical speed setting to the desired value.&lt;br /&gt;
&lt;br /&gt;
To let the autopilot intercept the desired altitude, you need to enter it using the knob on the right side. Turn in the desired altitude.&lt;br /&gt;
Doing this should automatically &amp;quot;arm&amp;quot; the autopilot (it shows &amp;quot;ALT ARM&amp;quot;), telling you that it waits to reach the entered altitude. If it was not arming automatically, you can arm it by manually pressing &amp;quot;ARM&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The plane will now climb to the altitude you requested. When you get at 1000ft near your setting, it will beep to let you know its close. Once you reach the altitude it will reduce the climb rate to zero, leveling out at the desired altitude: this is indicated by the &amp;quot;ALT ARM&amp;quot; vanishing.&lt;br /&gt;
If you are not at the altitude you entered, you probably forgot to calibrate the baro setting.&lt;br /&gt;
&lt;br /&gt;
=== Montée / descente en cours de route ===&lt;br /&gt;
In case you want to change the currently maintained altitude, you can do so by two means:&lt;br /&gt;
# &#039;&#039;Small adjustments&#039;&#039; can be made by pressing just the UP/DN buttons. Each press will adjust the set altitude for 20ft.&amp;lt;ref&amp;gt;In reality you can hold the button to trigger climb/descend at 500ft/m until you release the key. Recent KAP140 simulations implement this.&amp;lt;/ref&amp;gt; Note that we are in ALT mode, so we adjust absolute altiutde with UP/DN knobs, not climb rate! &lt;br /&gt;
# For &#039;&#039;larger adjustments&#039;&#039; you just rotate the altitude preselect knob to the new desired altitude. The autopilot will show &amp;quot;ALT ARM&amp;quot;. When you are ready to climb or descend, put the autopilot to VS mode by pressing the ALT button. Now push UP/DN buttons to climb or descend, and everything else will behave like already described above. You can adjust the desired climb rate anytime. When intercepting, the autopilot will automatically enter ALT mode again (which changes the behaviour of UP/DN buttons to absolute corrections too!).&lt;br /&gt;
# For other cases you can also use the manual ALT mode: Put the autopilot in VS mode by pressing &amp;quot;ALT&amp;quot;, adjust the climb rate to your liking and as soon as you feel the altitude is right, you can press &amp;quot;ALT&amp;quot; again. The AP will show &amp;quot;ALT&amp;quot; immediately, indicating it is holding this altitude. If your climb rate was a little higher, you probably overshoot the desired altitude, but the autopilot will soon return to it.&lt;br /&gt;
&lt;br /&gt;
Note that you can use these techniques with ROL, HDG and NAV modes.&lt;br /&gt;
&lt;br /&gt;
=== Interception d&#039;un VOR (NAV mode) ===&lt;br /&gt;
For longer trips it is nice to let the autopilot track a [[VOR]] radial. The difference to the HDG mode is that the plane will compensate for wind drift as it seeks to keep the [https://en.wikipedia.org/wiki/Course_deviation_indicator CDI]-needle centered.&lt;br /&gt;
&lt;br /&gt;
To use the NAV mode you have to tune NAV1 to the VORs frequency and select the desired radial with the OBS knob of your [https://en.wikipedia.org/wiki/Course_deviation_indicator CDI1] (which links to NAV1).&lt;br /&gt;
Now you can intercept the radial, and you have two options to do that:&lt;br /&gt;
# &#039;&#039;From HDG mode&#039;&#039;: select the radial also on your DG heading bug (the plane will try to follow that now). Then engage by pressing &amp;quot;NAV&amp;quot;. The autopilot will show &amp;quot;NAV ARM&amp;quot; and turn the plane to an 45° interception angle, but it will remain in HDG mode. Once you are close enough, the NAV-mode will kick in (&amp;quot;NAV ARM&amp;quot; vanishes and NAV shows) - the plane now follows the radial.&lt;br /&gt;
# &#039;&#039;From ROL mode&#039;&#039; (all angle intercept): It works like HDG mode, but once you push the NAV knob, the plane will intercept the radial at the angle you are currently flying. To initially bring the plane to the desired angle, use either HDG-mode with the heading bug, or fly manually, then engage ROL mode by pressing HDG.&lt;br /&gt;
Both modes will show a flashing &amp;quot;HDG&amp;quot; annunciator to remind you that you have to set the DG heading bug to the radial in both cases (the autopilot computes the needed course from that)!&lt;br /&gt;
&lt;br /&gt;
=== Approcha assitée par ILS (APR mode) ===&lt;br /&gt;
The NAV and APR modes are really similar, but the APR mode does additionally follow also the glideslope signal from an [https://en.wikipedia.org/wiki/Instrument_landing_system ILS], and the ILS has a fixed radial (so it ignores the OBS knob setting of the CDI!).&lt;br /&gt;
&lt;br /&gt;
The interception works exactly as in the NAV mode described above. If you engage the APR mode knob the plane will start to intercept the signal, showing &amp;quot;APR ARM&amp;quot; and continue with the currently selected lateral mode (ROL or HDG with 45° intercept angle). Remember to set the DG heading bug to the desired approach course (&amp;quot;HDG&amp;quot; will flash to remember you of that).&lt;br /&gt;
&lt;br /&gt;
As soon as the plane intercepts the localizer (that drives the CDI needle left/right), it will behave like in NAV mode. &amp;quot;APR ARM&amp;quot; will vanish and switch to &amp;quot;APR&amp;quot;, showing you are in approach mode now.&lt;br /&gt;
&lt;br /&gt;
When the APR mode engages, the GS mode will try to intercept the vertical glideslope beam. As long as you stay below the beam, it will show &amp;quot;GS ARM&amp;quot;. When the vertical glideslope is intercepted, the plane will start to follow it downwards.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Attention! This mode is dangerous&#039;&#039;&#039;, because it will drive you into the ground if you don&#039;t disengage the autopilot. It is not meant to land you automatically, just to guide you close to the runway. As soon as you are near the runway you should disengage and land manually.&lt;br /&gt;
&lt;br /&gt;
=== Vol dans la direction opposée au VOR ou à l&#039;ILS (mode REV) ===&lt;br /&gt;
Using the REV mode allows you to fly away from an VOR or ILS localizer signal (note that glideslope is ignored).&lt;br /&gt;
It works the same as NAV or APR, just in the opposite compass direction. This is helpful if you want to fly straight away from the runway at start or to fly away from a VOR that you tuned the inbound course into the OBS.&lt;br /&gt;
&lt;br /&gt;
As APR and NAV, you can intercept the radial or localizer either from ROL or HDG mode.&lt;br /&gt;
In either case, dial in the Front Inbound course into the OBS and the DG heading bug, and not the direction you want to fly.&lt;br /&gt;
Course reversal is done from the autopilot automatically.&lt;br /&gt;
&lt;br /&gt;
== Contenu similaire ==&lt;br /&gt;
* [[Joystick Autopilot Bindings]]  Snippets for joystick.xml file that allow control of most of the autopilot functions using the joystick.&lt;br /&gt;
: {{icaution|These joystick bindings only work with the older KAP versions, not the new one with the preflight check simulated!}}&lt;br /&gt;
&lt;br /&gt;
== Liens externes ==&lt;br /&gt;
*[https://bkx.bendixking.com/downloads/006-18034-0000_3.pdf Bendix/King KAP 140 Pilot&#039;s Guide download link] (PDF, 6.8 MB), Honywell, rev. 3, Nov 2005.&lt;br /&gt;
*[https://www.bendixking.com/content/dam/bendixking/en/documents/document-lists/downloads-and-manuals/006-18034-0000-KAP-140-Pilots-Guide.pdf Bendix/King KAP 140 Pilot&#039;s Guide], Honeywell, rev. 3, Nov 2005.&lt;br /&gt;
&lt;br /&gt;
==Références==&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft instruments]]&lt;br /&gt;
&lt;br /&gt;
[[en:Bendix/King KAP140_Autopilot]]&lt;br /&gt;
[[de:Autopilot Bendix/King KAP140]]&lt;br /&gt;
[[es:Piloto automático Bendix/King KAP140]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/Pilote_automatique_Bendix/King_KAP140&amp;diff=143957</id>
		<title>Fr/Pilote automatique Bendix/King KAP140</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/Pilote_automatique_Bendix/King_KAP140&amp;diff=143957"/>
		<updated>2026-04-12T08:51:56Z</updated>

		<summary type="html">&lt;p&gt;Adaz: FR title translation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{BeingTranslated}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le système de &#039;&#039;&#039;&#039;&#039;pilotage automatique Bendix/King KAP 140 à deux axes avec présélection d&#039;altitude&#039;&#039;&#039;&#039;&#039; est le pilote automatique par défaut du [[Fr/Cessna 172|Cessna 172]] ; il commande la gouverne de profondeur et les ailerons.&lt;br /&gt;
&lt;br /&gt;
== Prise en main rapide ==&lt;br /&gt;
[[File:KAP140.jpg|KAP140 Two Axis with Preselect Altitude]]&lt;br /&gt;
&lt;br /&gt;
Normally the autopilot boots as soon as the electrical system has power&amp;lt;ref&amp;gt;newer models simulate preflight checks, so it&#039;s not immediately available after power-on.&amp;lt;/ref&amp;gt;. It is commonly wired to an electrical avionics bus and secured by a dedicated breaker; if it stays dark, check power, avionics bus switches and the breaker.&lt;br /&gt;
&lt;br /&gt;
# To activate the autopilot in wings level (ROL) and vertical speed (VS) modes, press and hold the AP button for 0.25 seconds&amp;lt;ref&amp;gt;for older models, just press&amp;lt;/ref&amp;gt;. The autopilot will try to keep the wings level by keeping the turn rate at zero. The autopilot will also try to maintain the vertical speed at activation. Use the UP and DN buttons to set the desired vertical speed.&lt;br /&gt;
# With the autopilot active you can use the HDG button to toggle between wings level (ROL) and heading select (HDG) modes. In heading select mode the autopilot will try to maintain the heading selected by the heading bug on the directional gyro.&lt;br /&gt;
# Use NAV button to toggle between navigation mode (NAV) and wings level (ROL) mode. NAV mode is flying to NAV1 or GPS. That is one of the Heading modes in KAP140 that direction when heading bug OBS operated. Please be careful.&lt;br /&gt;
# Toggle other mode and approach (APR) mode when APR button pushed and following marker beacon, VOR, GPS and [[ILS]] (localizer and glide slope) for automatic approach. This mode is recommended for instrument approach.&lt;br /&gt;
# The REV button enables the back course mode having the autopilot flying away from the runway. This mode is like APR mode except that the direction is away from the localizer (LOC) and that glide slope (GS) is not used.&lt;br /&gt;
# Use the ALT button to toggle between vertical speed (VS) and altitude hold (ALT) modes. In altitude hold mode the UP and DN buttons change the altitude by 20 feet per press.&lt;br /&gt;
# The ARM button enables altitude preselect by the rotary knob using procedure below, pushing it again disables altitude preselect.&lt;br /&gt;
## Input the current atmospheric pressure using the BARO button and rotary knob&lt;br /&gt;
## Check that the display is showing altitude and set your desired altitude, using the rotary knob. &lt;br /&gt;
## Set your desired vertical speed using UP and DN button.&lt;br /&gt;
## Press the ARM button that is enable ARM mode.&lt;br /&gt;
# The BARO button sets the atmospheric pressure. When the BARO button is pushed, enter desired atmospheric pressure using the rotary dial/knob. When pushed long, it switches the setting display to hPa (and back)&amp;lt;ref&amp;gt;only on newer simulated models&amp;lt;/ref&amp;gt; (hint: you can do InHG&amp;lt;&amp;gt;hPa conversion easily with this)&lt;br /&gt;
# Press the AP button to deactivate the autopilot. The horizontal and vertical modes can not be activated independently.&lt;br /&gt;
&lt;br /&gt;
Please read the Pilot&#039;s Guide for complete instructions on the use of the KAP140 Autopilot system.&lt;br /&gt;
&lt;br /&gt;
== Limites ==&lt;br /&gt;
* Not certified for use below 200ft [[AGL]], below 80 or above 160 knots [[IAS]] or when alternate static port is active.&lt;br /&gt;
* Only activate when flaps are retracted.&lt;br /&gt;
* Do not override the autopilot with flight controls, instead deactivate it temporarily to make manual adjustments.&lt;br /&gt;
* Do not activate the autopilot near the ground (takeoff, landing) or at low speeds: it will mess up and may crash you into the ground.&lt;br /&gt;
* It also has no autoland capability, so it can&#039;t land you based on ILS signals.&lt;br /&gt;
* Don&#039;t activate it when in an unstable or mistrimmed flight attitude. Tough it will try(!) to stabilize the plane, this is unsafe.&lt;br /&gt;
* It will not rescue you out of a stall, so watch the airspeed regularly. If the plane slows down, the autopilot will increase pitch (with the HEAD UP light lit) to maintain the VS/ALT mode ordered, putting you into a stall. Disengage the autopilot and manually stabilize your flight.&lt;br /&gt;
* Altitude catching only works if you are flying towards the desired setting. For example, if you are at 1500ft, entered 2000ft as target and then descend, it will not intercept but fly you into the ground. Similarly, if you enter an altitude below you and accidentally climb, you will eventually reach the planes service ceiling and stall. The &amp;quot;ALT ARM&amp;quot; mode does not mean &amp;quot;bring me to that altitude&amp;quot;.&lt;br /&gt;
* Like with altitude interception, intercepting a VOR radial or ILS will not work, if the heading bug was not aligned or if you try to intercept from a custom angle (ie. engaging NAV mode from ROL).&lt;br /&gt;
&lt;br /&gt;
== Alerte d&#039;altitude (bip sonore) ==&lt;br /&gt;
A nice feature for assisting manual flights is the altitude alert. This is the aural beeping alert when you get near the selected altitude preset:&lt;br /&gt;
* When getting near 1000ft of the selected altitude, it starts to beep five times and show a steady &amp;quot;ALERT&amp;quot; right below the altitude.&lt;br /&gt;
* When intercepting the altitude, the ALERT annunciator vanishes if you get 200ft near, and will shortly flash up when crossing the selected altitude to signal it &amp;quot;catched on&amp;quot;.&lt;br /&gt;
* When now exceeding the +-200ft band, it will alert by flashing and beeping.&lt;br /&gt;
&lt;br /&gt;
This feature just needs a calibrated baro setting and a selected altitude, thus it is also active when using the modes utilizing altitude preset described below.&lt;br /&gt;
&lt;br /&gt;
== Exemples d&#039;utilisation ==&lt;br /&gt;
This example tries to show you how to deal with the autopilot to achieve common tasks. There are more advanced techniques to achieve with the autopilot, but they are out of scope for this quick introduction. Please refer to the &#039;KAP 140 Pilot&#039;s Guide&#039; which is linked below.&lt;br /&gt;
&lt;br /&gt;
For better familiarization it would be good to follow trough the following guide inside flightgear.&lt;br /&gt;
&lt;br /&gt;
{{note| Be aware of procedure differences when you have an [[HSI|Horizontal Situation Indicator (HSI)]] installed in the aircraft: In this case, the KAP 140 will not have an automatic 45°-Intercept for NAV/APR/REV modes when switching from HDG-mode and you need to select the desired intercept course manually by turning the heading bug to the desired intercept course. }}&lt;br /&gt;
&lt;br /&gt;
=== Préparations avant le décollage ===&lt;br /&gt;
* For the HDG/NAV mode it is important to calibrate the [[Avionics_and_instruments#Directional_Gyro|Directional Gyro (DG)]] to the magnetic compass (with running motor, so the DG has power): read the magnetic compass and rotate the DG so its upper bearing mark reflects that course (use the red heading bug if necessary, it makes it easier at the beginning). If your DG was not calibrated, this will not be the magnetic course and you probably will not get where you wanted to.&lt;br /&gt;
* For the ALT mode it is important to calibrate the barometric setting of the autopilot to the one of the altimeter: read the altimeters baro setting from the Kollsman window (the small window at the altimeter), press the &amp;quot;BARO&amp;quot; key at the autopilot and rotate the right &amp;quot;altitude-preselect knob&amp;quot; so the autopilot shows the same setting. If you miss to calibrate the baro setting, you will under-/overshoot altitude presets&lt;br /&gt;
* You should run through the HDG and VS modes on ground as preflight check to make sure the autopilot is operating the aileron, elevator and trim wheel&lt;br /&gt;
* If you intend to follow the runway heading after takeoff, now is a good time to adjust the heading bug.&lt;br /&gt;
* If you intend to climb to a specific altitude and let the autopilot intercept it, you should now rotate the altitude preselect knob of the autopilot to the desired altitude.&lt;br /&gt;
&lt;br /&gt;
=== Après le cécolage : maintien du cap, gestion de la montée ===&lt;br /&gt;
It is not advised to engage the autopilot immediately for takeoff as it will mess up with lower speeds. Establish a smooth climb rate and trimmed flight first.&lt;br /&gt;
&lt;br /&gt;
When you achieved a stable climb rate after takeoff, engage the autopilot by pressing &amp;quot;AP&amp;quot;. It will engage in ROL/VS mode: keeps the wings level and maintain climb at the current rate. The moment you engage the autopilot it will show &amp;quot;ROL&amp;quot;, &amp;quot;VS&amp;quot;, and at the right side the currently set climb rate for some seconds. Always visually confirm the autopilot shows the modes you expect!&lt;br /&gt;
&lt;br /&gt;
If not done yet, rotate the red heading bug at the DG to the desired heading before switching to HDG mode.&lt;br /&gt;
&lt;br /&gt;
Once you press the HGT button, the autopilot will switch from ROL to the HDG mode, and the plane now follows the desired course. When you change the heading bug, the plane will bank and follow the new heading (it will do this at standard turn rate).&lt;br /&gt;
&lt;br /&gt;
=== Monter jusqu&#039;à l&#039;altitude souhaitée, puis la maintenir (interception d&#039;altitude ) ===&lt;br /&gt;
The autpilot now should be in HDG/VS mode. You should check the vertical speed the autopilot automatically set to the climb rate you had when engaging it. Using the buttons &amp;quot;UP&amp;quot; and &amp;quot;DN&amp;quot; you can adjust the vertical speed setting to the desired value.&lt;br /&gt;
&lt;br /&gt;
To let the autopilot intercept the desired altitude, you need to enter it using the knob on the right side. Turn in the desired altitude.&lt;br /&gt;
Doing this should automatically &amp;quot;arm&amp;quot; the autopilot (it shows &amp;quot;ALT ARM&amp;quot;), telling you that it waits to reach the entered altitude. If it was not arming automatically, you can arm it by manually pressing &amp;quot;ARM&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The plane will now climb to the altitude you requested. When you get at 1000ft near your setting, it will beep to let you know its close. Once you reach the altitude it will reduce the climb rate to zero, leveling out at the desired altitude: this is indicated by the &amp;quot;ALT ARM&amp;quot; vanishing.&lt;br /&gt;
If you are not at the altitude you entered, you probably forgot to calibrate the baro setting.&lt;br /&gt;
&lt;br /&gt;
=== Montée / descente en cours de route ===&lt;br /&gt;
In case you want to change the currently maintained altitude, you can do so by two means:&lt;br /&gt;
# &#039;&#039;Small adjustments&#039;&#039; can be made by pressing just the UP/DN buttons. Each press will adjust the set altitude for 20ft.&amp;lt;ref&amp;gt;In reality you can hold the button to trigger climb/descend at 500ft/m until you release the key. Recent KAP140 simulations implement this.&amp;lt;/ref&amp;gt; Note that we are in ALT mode, so we adjust absolute altiutde with UP/DN knobs, not climb rate! &lt;br /&gt;
# For &#039;&#039;larger adjustments&#039;&#039; you just rotate the altitude preselect knob to the new desired altitude. The autopilot will show &amp;quot;ALT ARM&amp;quot;. When you are ready to climb or descend, put the autopilot to VS mode by pressing the ALT button. Now push UP/DN buttons to climb or descend, and everything else will behave like already described above. You can adjust the desired climb rate anytime. When intercepting, the autopilot will automatically enter ALT mode again (which changes the behaviour of UP/DN buttons to absolute corrections too!).&lt;br /&gt;
# For other cases you can also use the manual ALT mode: Put the autopilot in VS mode by pressing &amp;quot;ALT&amp;quot;, adjust the climb rate to your liking and as soon as you feel the altitude is right, you can press &amp;quot;ALT&amp;quot; again. The AP will show &amp;quot;ALT&amp;quot; immediately, indicating it is holding this altitude. If your climb rate was a little higher, you probably overshoot the desired altitude, but the autopilot will soon return to it.&lt;br /&gt;
&lt;br /&gt;
Note that you can use these techniques with ROL, HDG and NAV modes.&lt;br /&gt;
&lt;br /&gt;
=== Interception d&#039;un VOR (NAV mode) ===&lt;br /&gt;
For longer trips it is nice to let the autopilot track a [[VOR]] radial. The difference to the HDG mode is that the plane will compensate for wind drift as it seeks to keep the [https://en.wikipedia.org/wiki/Course_deviation_indicator CDI]-needle centered.&lt;br /&gt;
&lt;br /&gt;
To use the NAV mode you have to tune NAV1 to the VORs frequency and select the desired radial with the OBS knob of your [https://en.wikipedia.org/wiki/Course_deviation_indicator CDI1] (which links to NAV1).&lt;br /&gt;
Now you can intercept the radial, and you have two options to do that:&lt;br /&gt;
# &#039;&#039;From HDG mode&#039;&#039;: select the radial also on your DG heading bug (the plane will try to follow that now). Then engage by pressing &amp;quot;NAV&amp;quot;. The autopilot will show &amp;quot;NAV ARM&amp;quot; and turn the plane to an 45° interception angle, but it will remain in HDG mode. Once you are close enough, the NAV-mode will kick in (&amp;quot;NAV ARM&amp;quot; vanishes and NAV shows) - the plane now follows the radial.&lt;br /&gt;
# &#039;&#039;From ROL mode&#039;&#039; (all angle intercept): It works like HDG mode, but once you push the NAV knob, the plane will intercept the radial at the angle you are currently flying. To initially bring the plane to the desired angle, use either HDG-mode with the heading bug, or fly manually, then engage ROL mode by pressing HDG.&lt;br /&gt;
Both modes will show a flashing &amp;quot;HDG&amp;quot; annunciator to remind you that you have to set the DG heading bug to the radial in both cases (the autopilot computes the needed course from that)!&lt;br /&gt;
&lt;br /&gt;
=== Approcha assitée par ILS (APR mode) ===&lt;br /&gt;
The NAV and APR modes are really similar, but the APR mode does additionally follow also the glideslope signal from an [https://en.wikipedia.org/wiki/Instrument_landing_system ILS], and the ILS has a fixed radial (so it ignores the OBS knob setting of the CDI!).&lt;br /&gt;
&lt;br /&gt;
The interception works exactly as in the NAV mode described above. If you engage the APR mode knob the plane will start to intercept the signal, showing &amp;quot;APR ARM&amp;quot; and continue with the currently selected lateral mode (ROL or HDG with 45° intercept angle). Remember to set the DG heading bug to the desired approach course (&amp;quot;HDG&amp;quot; will flash to remember you of that).&lt;br /&gt;
&lt;br /&gt;
As soon as the plane intercepts the localizer (that drives the CDI needle left/right), it will behave like in NAV mode. &amp;quot;APR ARM&amp;quot; will vanish and switch to &amp;quot;APR&amp;quot;, showing you are in approach mode now.&lt;br /&gt;
&lt;br /&gt;
When the APR mode engages, the GS mode will try to intercept the vertical glideslope beam. As long as you stay below the beam, it will show &amp;quot;GS ARM&amp;quot;. When the vertical glideslope is intercepted, the plane will start to follow it downwards.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Attention! This mode is dangerous&#039;&#039;&#039;, because it will drive you into the ground if you don&#039;t disengage the autopilot. It is not meant to land you automatically, just to guide you close to the runway. As soon as you are near the runway you should disengage and land manually.&lt;br /&gt;
&lt;br /&gt;
=== Vol dans la direction opposée au VOR ou à l&#039;ILS (mode REV) ===&lt;br /&gt;
Using the REV mode allows you to fly away from an VOR or ILS localizer signal (note that glideslope is ignored).&lt;br /&gt;
It works the same as NAV or APR, just in the opposite compass direction. This is helpful if you want to fly straight away from the runway at start or to fly away from a VOR that you tuned the inbound course into the OBS.&lt;br /&gt;
&lt;br /&gt;
As APR and NAV, you can intercept the radial or localizer either from ROL or HDG mode.&lt;br /&gt;
In either case, dial in the Front Inbound course into the OBS and the DG heading bug, and not the direction you want to fly.&lt;br /&gt;
Course reversal is done from the autopilot automatically.&lt;br /&gt;
&lt;br /&gt;
== Contenu similaire ==&lt;br /&gt;
* [[Joystick Autopilot Bindings]]  Snippets for joystick.xml file that allow control of most of the autopilot functions using the joystick.&lt;br /&gt;
: {{icaution|These joystick bindings only work with the older KAP versions, not the new one with the preflight check simulated!}}&lt;br /&gt;
&lt;br /&gt;
== Liens externes ==&lt;br /&gt;
*[https://bkx.bendixking.com/downloads/006-18034-0000_3.pdf Bendix/King KAP 140 Pilot&#039;s Guide download link] (PDF, 6.8 MB), Honywell, rev. 3, Nov 2005.&lt;br /&gt;
*[https://www.bendixking.com/content/dam/bendixking/en/documents/document-lists/downloads-and-manuals/006-18034-0000-KAP-140-Pilots-Guide.pdf Bendix/King KAP 140 Pilot&#039;s Guide], Honeywell, rev. 3, Nov 2005.&lt;br /&gt;
&lt;br /&gt;
==Références==&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft instruments]]&lt;br /&gt;
&lt;br /&gt;
[[en:Bendix/King KAP140_Autopilot]]&lt;br /&gt;
[[de:Autopilot Bendix/King KAP140]]&lt;br /&gt;
[[es:Piloto automático Bendix/King KAP140]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/Pilote_automatique_Bendix/King_KAP140&amp;diff=143956</id>
		<title>Fr/Pilote automatique Bendix/King KAP140</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/Pilote_automatique_Bendix/King_KAP140&amp;diff=143956"/>
		<updated>2026-04-12T08:40:11Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Fr translation befining&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{BeingTranslated}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le système de &#039;&#039;&#039;&#039;&#039;pilotage automatique Bendix/King KAP 140 à deux axes avec présélection d&#039;altitude&#039;&#039;&#039;&#039;&#039; est le pilote automatique par défaut du [[Fr/Cessna 172|Cessna 172]] ; il commande la gouverne de profondeur et les ailerons.&lt;br /&gt;
&lt;br /&gt;
== Prise en main rapide ==&lt;br /&gt;
[[File:KAP140.jpg|KAP140 Two Axis with Preselect Altitude]]&lt;br /&gt;
&lt;br /&gt;
Normally the autopilot boots as soon as the electrical system has power&amp;lt;ref&amp;gt;newer models simulate preflight checks, so it&#039;s not immediately available after power-on.&amp;lt;/ref&amp;gt;. It is commonly wired to an electrical avionics bus and secured by a dedicated breaker; if it stays dark, check power, avionics bus switches and the breaker.&lt;br /&gt;
&lt;br /&gt;
# To activate the autopilot in wings level (ROL) and vertical speed (VS) modes, press and hold the AP button for 0.25 seconds&amp;lt;ref&amp;gt;for older models, just press&amp;lt;/ref&amp;gt;. The autopilot will try to keep the wings level by keeping the turn rate at zero. The autopilot will also try to maintain the vertical speed at activation. Use the UP and DN buttons to set the desired vertical speed.&lt;br /&gt;
# With the autopilot active you can use the HDG button to toggle between wings level (ROL) and heading select (HDG) modes. In heading select mode the autopilot will try to maintain the heading selected by the heading bug on the directional gyro.&lt;br /&gt;
# Use NAV button to toggle between navigation mode (NAV) and wings level (ROL) mode. NAV mode is flying to NAV1 or GPS. That is one of the Heading modes in KAP140 that direction when heading bug OBS operated. Please be careful.&lt;br /&gt;
# Toggle other mode and approach (APR) mode when APR button pushed and following marker beacon, VOR, GPS and [[ILS]] (localizer and glide slope) for automatic approach. This mode is recommended for instrument approach.&lt;br /&gt;
# The REV button enables the back course mode having the autopilot flying away from the runway. This mode is like APR mode except that the direction is away from the localizer (LOC) and that glide slope (GS) is not used.&lt;br /&gt;
# Use the ALT button to toggle between vertical speed (VS) and altitude hold (ALT) modes. In altitude hold mode the UP and DN buttons change the altitude by 20 feet per press.&lt;br /&gt;
# The ARM button enables altitude preselect by the rotary knob using procedure below, pushing it again disables altitude preselect.&lt;br /&gt;
## Input the current atmospheric pressure using the BARO button and rotary knob&lt;br /&gt;
## Check that the display is showing altitude and set your desired altitude, using the rotary knob. &lt;br /&gt;
## Set your desired vertical speed using UP and DN button.&lt;br /&gt;
## Press the ARM button that is enable ARM mode.&lt;br /&gt;
# The BARO button sets the atmospheric pressure. When the BARO button is pushed, enter desired atmospheric pressure using the rotary dial/knob. When pushed long, it switches the setting display to hPa (and back)&amp;lt;ref&amp;gt;only on newer simulated models&amp;lt;/ref&amp;gt; (hint: you can do InHG&amp;lt;&amp;gt;hPa conversion easily with this)&lt;br /&gt;
# Press the AP button to deactivate the autopilot. The horizontal and vertical modes can not be activated independently.&lt;br /&gt;
&lt;br /&gt;
Please read the Pilot&#039;s Guide for complete instructions on the use of the KAP140 Autopilot system.&lt;br /&gt;
&lt;br /&gt;
== Limites ==&lt;br /&gt;
* Not certified for use below 200ft [[AGL]], below 80 or above 160 knots [[IAS]] or when alternate static port is active.&lt;br /&gt;
* Only activate when flaps are retracted.&lt;br /&gt;
* Do not override the autopilot with flight controls, instead deactivate it temporarily to make manual adjustments.&lt;br /&gt;
* Do not activate the autopilot near the ground (takeoff, landing) or at low speeds: it will mess up and may crash you into the ground.&lt;br /&gt;
* It also has no autoland capability, so it can&#039;t land you based on ILS signals.&lt;br /&gt;
* Don&#039;t activate it when in an unstable or mistrimmed flight attitude. Tough it will try(!) to stabilize the plane, this is unsafe.&lt;br /&gt;
* It will not rescue you out of a stall, so watch the airspeed regularly. If the plane slows down, the autopilot will increase pitch (with the HEAD UP light lit) to maintain the VS/ALT mode ordered, putting you into a stall. Disengage the autopilot and manually stabilize your flight.&lt;br /&gt;
* Altitude catching only works if you are flying towards the desired setting. For example, if you are at 1500ft, entered 2000ft as target and then descend, it will not intercept but fly you into the ground. Similarly, if you enter an altitude below you and accidentally climb, you will eventually reach the planes service ceiling and stall. The &amp;quot;ALT ARM&amp;quot; mode does not mean &amp;quot;bring me to that altitude&amp;quot;.&lt;br /&gt;
* Like with altitude interception, intercepting a VOR radial or ILS will not work, if the heading bug was not aligned or if you try to intercept from a custom angle (ie. engaging NAV mode from ROL).&lt;br /&gt;
&lt;br /&gt;
== Alerte d&#039;altitude (bip sonore) ==&lt;br /&gt;
A nice feature for assisting manual flights is the altitude alert. This is the aural beeping alert when you get near the selected altitude preset:&lt;br /&gt;
* When getting near 1000ft of the selected altitude, it starts to beep five times and show a steady &amp;quot;ALERT&amp;quot; right below the altitude.&lt;br /&gt;
* When intercepting the altitude, the ALERT annunciator vanishes if you get 200ft near, and will shortly flash up when crossing the selected altitude to signal it &amp;quot;catched on&amp;quot;.&lt;br /&gt;
* When now exceeding the +-200ft band, it will alert by flashing and beeping.&lt;br /&gt;
&lt;br /&gt;
This feature just needs a calibrated baro setting and a selected altitude, thus it is also active when using the modes utilizing altitude preset described below.&lt;br /&gt;
&lt;br /&gt;
== Example workflow ==&lt;br /&gt;
This example tries to show you how to deal with the autopilot to achieve common tasks. There are more advanced techniques to achieve with the autopilot, but they are out of scope for this quick introduction. Please refer to the &#039;KAP 140 Pilot&#039;s Guide&#039; which is linked below.&lt;br /&gt;
&lt;br /&gt;
For better familiarization it would be good to follow trough the following guide inside flightgear.&lt;br /&gt;
&lt;br /&gt;
{{note| Be aware of procedure differences when you have an [[HSI|Horizontal Situation Indicator (HSI)]] installed in the aircraft: In this case, the KAP 140 will not have an automatic 45°-Intercept for NAV/APR/REV modes when switching from HDG-mode and you need to select the desired intercept course manually by turning the heading bug to the desired intercept course. }}&lt;br /&gt;
&lt;br /&gt;
=== Before-takeoff preparations ===&lt;br /&gt;
* For the HDG/NAV mode it is important to calibrate the [[Avionics_and_instruments#Directional_Gyro|Directional Gyro (DG)]] to the magnetic compass (with running motor, so the DG has power): read the magnetic compass and rotate the DG so its upper bearing mark reflects that course (use the red heading bug if necessary, it makes it easier at the beginning). If your DG was not calibrated, this will not be the magnetic course and you probably will not get where you wanted to.&lt;br /&gt;
* For the ALT mode it is important to calibrate the barometric setting of the autopilot to the one of the altimeter: read the altimeters baro setting from the Kollsman window (the small window at the altimeter), press the &amp;quot;BARO&amp;quot; key at the autopilot and rotate the right &amp;quot;altitude-preselect knob&amp;quot; so the autopilot shows the same setting. If you miss to calibrate the baro setting, you will under-/overshoot altitude presets&lt;br /&gt;
* You should run through the HDG and VS modes on ground as preflight check to make sure the autopilot is operating the aileron, elevator and trim wheel&lt;br /&gt;
* If you intend to follow the runway heading after takeoff, now is a good time to adjust the heading bug.&lt;br /&gt;
* If you intend to climb to a specific altitude and let the autopilot intercept it, you should now rotate the altitude preselect knob of the autopilot to the desired altitude.&lt;br /&gt;
&lt;br /&gt;
=== After Takeoff: Hold heading, continue climbing ===&lt;br /&gt;
It is not advised to engage the autopilot immediately for takeoff as it will mess up with lower speeds. Establish a smooth climb rate and trimmed flight first.&lt;br /&gt;
&lt;br /&gt;
When you achieved a stable climb rate after takeoff, engage the autopilot by pressing &amp;quot;AP&amp;quot;. It will engage in ROL/VS mode: keeps the wings level and maintain climb at the current rate. The moment you engage the autopilot it will show &amp;quot;ROL&amp;quot;, &amp;quot;VS&amp;quot;, and at the right side the currently set climb rate for some seconds. Always visually confirm the autopilot shows the modes you expect!&lt;br /&gt;
&lt;br /&gt;
If not done yet, rotate the red heading bug at the DG to the desired heading before switching to HDG mode.&lt;br /&gt;
&lt;br /&gt;
Once you press the HGT button, the autopilot will switch from ROL to the HDG mode, and the plane now follows the desired course. When you change the heading bug, the plane will bank and follow the new heading (it will do this at standard turn rate).&lt;br /&gt;
&lt;br /&gt;
=== Climb to Altitude, then hold it (intercept altitude) ===&lt;br /&gt;
The autpilot now should be in HDG/VS mode. You should check the vertical speed the autopilot automatically set to the climb rate you had when engaging it. Using the buttons &amp;quot;UP&amp;quot; and &amp;quot;DN&amp;quot; you can adjust the vertical speed setting to the desired value.&lt;br /&gt;
&lt;br /&gt;
To let the autopilot intercept the desired altitude, you need to enter it using the knob on the right side. Turn in the desired altitude.&lt;br /&gt;
Doing this should automatically &amp;quot;arm&amp;quot; the autopilot (it shows &amp;quot;ALT ARM&amp;quot;), telling you that it waits to reach the entered altitude. If it was not arming automatically, you can arm it by manually pressing &amp;quot;ARM&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The plane will now climb to the altitude you requested. When you get at 1000ft near your setting, it will beep to let you know its close. Once you reach the altitude it will reduce the climb rate to zero, leveling out at the desired altitude: this is indicated by the &amp;quot;ALT ARM&amp;quot; vanishing.&lt;br /&gt;
If you are not at the altitude you entered, you probably forgot to calibrate the baro setting.&lt;br /&gt;
&lt;br /&gt;
=== Enroute climb / descend ===&lt;br /&gt;
In case you want to change the currently maintained altitude, you can do so by two means:&lt;br /&gt;
# &#039;&#039;Small adjustments&#039;&#039; can be made by pressing just the UP/DN buttons. Each press will adjust the set altitude for 20ft.&amp;lt;ref&amp;gt;In reality you can hold the button to trigger climb/descend at 500ft/m until you release the key. Recent KAP140 simulations implement this.&amp;lt;/ref&amp;gt; Note that we are in ALT mode, so we adjust absolute altiutde with UP/DN knobs, not climb rate! &lt;br /&gt;
# For &#039;&#039;larger adjustments&#039;&#039; you just rotate the altitude preselect knob to the new desired altitude. The autopilot will show &amp;quot;ALT ARM&amp;quot;. When you are ready to climb or descend, put the autopilot to VS mode by pressing the ALT button. Now push UP/DN buttons to climb or descend, and everything else will behave like already described above. You can adjust the desired climb rate anytime. When intercepting, the autopilot will automatically enter ALT mode again (which changes the behaviour of UP/DN buttons to absolute corrections too!).&lt;br /&gt;
# For other cases you can also use the manual ALT mode: Put the autopilot in VS mode by pressing &amp;quot;ALT&amp;quot;, adjust the climb rate to your liking and as soon as you feel the altitude is right, you can press &amp;quot;ALT&amp;quot; again. The AP will show &amp;quot;ALT&amp;quot; immediately, indicating it is holding this altitude. If your climb rate was a little higher, you probably overshoot the desired altitude, but the autopilot will soon return to it.&lt;br /&gt;
&lt;br /&gt;
Note that you can use these techniques with ROL, HDG and NAV modes.&lt;br /&gt;
&lt;br /&gt;
=== VOR interception (NAV mode) ===&lt;br /&gt;
For longer trips it is nice to let the autopilot track a [[VOR]] radial. The difference to the HDG mode is that the plane will compensate for wind drift as it seeks to keep the [https://en.wikipedia.org/wiki/Course_deviation_indicator CDI]-needle centered.&lt;br /&gt;
&lt;br /&gt;
To use the NAV mode you have to tune NAV1 to the VORs frequency and select the desired radial with the OBS knob of your [https://en.wikipedia.org/wiki/Course_deviation_indicator CDI1] (which links to NAV1).&lt;br /&gt;
Now you can intercept the radial, and you have two options to do that:&lt;br /&gt;
# &#039;&#039;From HDG mode&#039;&#039;: select the radial also on your DG heading bug (the plane will try to follow that now). Then engage by pressing &amp;quot;NAV&amp;quot;. The autopilot will show &amp;quot;NAV ARM&amp;quot; and turn the plane to an 45° interception angle, but it will remain in HDG mode. Once you are close enough, the NAV-mode will kick in (&amp;quot;NAV ARM&amp;quot; vanishes and NAV shows) - the plane now follows the radial.&lt;br /&gt;
# &#039;&#039;From ROL mode&#039;&#039; (all angle intercept): It works like HDG mode, but once you push the NAV knob, the plane will intercept the radial at the angle you are currently flying. To initially bring the plane to the desired angle, use either HDG-mode with the heading bug, or fly manually, then engage ROL mode by pressing HDG.&lt;br /&gt;
Both modes will show a flashing &amp;quot;HDG&amp;quot; annunciator to remind you that you have to set the DG heading bug to the radial in both cases (the autopilot computes the needed course from that)!&lt;br /&gt;
&lt;br /&gt;
=== ILS assisted approach (APR mode) ===&lt;br /&gt;
The NAV and APR modes are really similar, but the APR mode does additionally follow also the glideslope signal from an [https://en.wikipedia.org/wiki/Instrument_landing_system ILS], and the ILS has a fixed radial (so it ignores the OBS knob setting of the CDI!).&lt;br /&gt;
&lt;br /&gt;
The interception works exactly as in the NAV mode described above. If you engage the APR mode knob the plane will start to intercept the signal, showing &amp;quot;APR ARM&amp;quot; and continue with the currently selected lateral mode (ROL or HDG with 45° intercept angle). Remember to set the DG heading bug to the desired approach course (&amp;quot;HDG&amp;quot; will flash to remember you of that).&lt;br /&gt;
&lt;br /&gt;
As soon as the plane intercepts the localizer (that drives the CDI needle left/right), it will behave like in NAV mode. &amp;quot;APR ARM&amp;quot; will vanish and switch to &amp;quot;APR&amp;quot;, showing you are in approach mode now.&lt;br /&gt;
&lt;br /&gt;
When the APR mode engages, the GS mode will try to intercept the vertical glideslope beam. As long as you stay below the beam, it will show &amp;quot;GS ARM&amp;quot;. When the vertical glideslope is intercepted, the plane will start to follow it downwards.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Attention! This mode is dangerous&#039;&#039;&#039;, because it will drive you into the ground if you don&#039;t disengage the autopilot. It is not meant to land you automatically, just to guide you close to the runway. As soon as you are near the runway you should disengage and land manually.&lt;br /&gt;
&lt;br /&gt;
=== Flying opposite direction of VOR or ILS (REV mode) ===&lt;br /&gt;
Using the REV mode allows you to fly away from an VOR or ILS localizer signal (note that glideslope is ignored).&lt;br /&gt;
It works the same as NAV or APR, just in the opposite compass direction. This is helpful if you want to fly straight away from the runway at start or to fly away from a VOR that you tuned the inbound course into the OBS.&lt;br /&gt;
&lt;br /&gt;
As APR and NAV, you can intercept the radial or localizer either from ROL or HDG mode.&lt;br /&gt;
In either case, dial in the Front Inbound course into the OBS and the DG heading bug, and not the direction you want to fly.&lt;br /&gt;
Course reversal is done from the autopilot automatically.&lt;br /&gt;
&lt;br /&gt;
== Related content ==&lt;br /&gt;
* [[Joystick Autopilot Bindings]]  Snippets for joystick.xml file that allow control of most of the autopilot functions using the joystick.&lt;br /&gt;
: {{icaution|These joystick bindings only work with the older KAP versions, not the new one with the preflight check simulated!}}&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
*[https://bkx.bendixking.com/downloads/006-18034-0000_3.pdf Bendix/King KAP 140 Pilot&#039;s Guide download link] (PDF, 6.8 MB), Honywell, rev. 3, Nov 2005.&lt;br /&gt;
*[https://www.bendixking.com/content/dam/bendixking/en/documents/document-lists/downloads-and-manuals/006-18034-0000-KAP-140-Pilots-Guide.pdf Bendix/King KAP 140 Pilot&#039;s Guide], Honeywell, rev. 3, Nov 2005.&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft instruments]]&lt;br /&gt;
&lt;br /&gt;
[[en:Bendix/King KAP140_Autopilot]]&lt;br /&gt;
[[de:Autopilot Bendix/King KAP140]]&lt;br /&gt;
[[es:Piloto automático Bendix/King KAP140]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/Pilote_automatique_Bendix/King_KAP140&amp;diff=143955</id>
		<title>Fr/Pilote automatique Bendix/King KAP140</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/Pilote_automatique_Bendix/King_KAP140&amp;diff=143955"/>
		<updated>2026-04-12T08:30:20Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Fr translation page creation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{BeingTranslated}}&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;&#039;&#039;Bendix/King KAP 140&#039;&#039;&#039;&#039;&#039; &#039;&#039;&#039;Two Axis/Altitude Preselect Autopilot System&#039;&#039;&#039; is the [[autopilot]] of the default [[Cessna 172]], controlling the [[elevator]] and [[aileron]]s.&lt;br /&gt;
&lt;br /&gt;
== Quick Guide ==&lt;br /&gt;
[[File:KAP140.jpg|KAP140 Two Axis with Preselect Altitude]]&lt;br /&gt;
&lt;br /&gt;
Normally the autopilot boots as soon as the electrical system has power&amp;lt;ref&amp;gt;newer models simulate preflight checks, so it&#039;s not immediately available after power-on.&amp;lt;/ref&amp;gt;. It is commonly wired to an electrical avionics bus and secured by a dedicated breaker; if it stays dark, check power, avionics bus switches and the breaker.&lt;br /&gt;
&lt;br /&gt;
# To activate the autopilot in wings level (ROL) and vertical speed (VS) modes, press and hold the AP button for 0.25 seconds&amp;lt;ref&amp;gt;for older models, just press&amp;lt;/ref&amp;gt;. The autopilot will try to keep the wings level by keeping the turn rate at zero. The autopilot will also try to maintain the vertical speed at activation. Use the UP and DN buttons to set the desired vertical speed.&lt;br /&gt;
# With the autopilot active you can use the HDG button to toggle between wings level (ROL) and heading select (HDG) modes. In heading select mode the autopilot will try to maintain the heading selected by the heading bug on the directional gyro.&lt;br /&gt;
# Use NAV button to toggle between navigation mode (NAV) and wings level (ROL) mode. NAV mode is flying to NAV1 or GPS. That is one of the Heading modes in KAP140 that direction when heading bug OBS operated. Please be careful.&lt;br /&gt;
# Toggle other mode and approach (APR) mode when APR button pushed and following marker beacon, VOR, GPS and [[ILS]] (localizer and glide slope) for automatic approach. This mode is recommended for instrument approach.&lt;br /&gt;
# The REV button enables the back course mode having the autopilot flying away from the runway. This mode is like APR mode except that the direction is away from the localizer (LOC) and that glide slope (GS) is not used.&lt;br /&gt;
# Use the ALT button to toggle between vertical speed (VS) and altitude hold (ALT) modes. In altitude hold mode the UP and DN buttons change the altitude by 20 feet per press.&lt;br /&gt;
# The ARM button enables altitude preselect by the rotary knob using procedure below, pushing it again disables altitude preselect.&lt;br /&gt;
## Input the current atmospheric pressure using the BARO button and rotary knob&lt;br /&gt;
## Check that the display is showing altitude and set your desired altitude, using the rotary knob. &lt;br /&gt;
## Set your desired vertical speed using UP and DN button.&lt;br /&gt;
## Press the ARM button that is enable ARM mode.&lt;br /&gt;
# The BARO button sets the atmospheric pressure. When the BARO button is pushed, enter desired atmospheric pressure using the rotary dial/knob. When pushed long, it switches the setting display to hPa (and back)&amp;lt;ref&amp;gt;only on newer simulated models&amp;lt;/ref&amp;gt; (hint: you can do InHG&amp;lt;&amp;gt;hPa conversion easily with this)&lt;br /&gt;
# Press the AP button to deactivate the autopilot. The horizontal and vertical modes can not be activated independently.&lt;br /&gt;
&lt;br /&gt;
Please read the Pilot&#039;s Guide for complete instructions on the use of the KAP140 Autopilot system.&lt;br /&gt;
&lt;br /&gt;
== Limits ==&lt;br /&gt;
* Not certified for use below 200ft [[AGL]], below 80 or above 160 knots [[IAS]] or when alternate static port is active.&lt;br /&gt;
* Only activate when flaps are retracted.&lt;br /&gt;
* Do not override the autopilot with flight controls, instead deactivate it temporarily to make manual adjustments.&lt;br /&gt;
* Do not activate the autopilot near the ground (takeoff, landing) or at low speeds: it will mess up and may crash you into the ground.&lt;br /&gt;
* It also has no autoland capability, so it can&#039;t land you based on ILS signals.&lt;br /&gt;
* Don&#039;t activate it when in an unstable or mistrimmed flight attitude. Tough it will try(!) to stabilize the plane, this is unsafe.&lt;br /&gt;
* It will not rescue you out of a stall, so watch the airspeed regularly. If the plane slows down, the autopilot will increase pitch (with the HEAD UP light lit) to maintain the VS/ALT mode ordered, putting you into a stall. Disengage the autopilot and manually stabilize your flight.&lt;br /&gt;
* Altitude catching only works if you are flying towards the desired setting. For example, if you are at 1500ft, entered 2000ft as target and then descend, it will not intercept but fly you into the ground. Similarly, if you enter an altitude below you and accidentally climb, you will eventually reach the planes service ceiling and stall. The &amp;quot;ALT ARM&amp;quot; mode does not mean &amp;quot;bring me to that altitude&amp;quot;.&lt;br /&gt;
* Like with altitude interception, intercepting a VOR radial or ILS will not work, if the heading bug was not aligned or if you try to intercept from a custom angle (ie. engaging NAV mode from ROL).&lt;br /&gt;
&lt;br /&gt;
== Altitude alert (beeping sound) ==&lt;br /&gt;
A nice feature for assisting manual flights is the altitude alert. This is the aural beeping alert when you get near the selected altitude preset:&lt;br /&gt;
* When getting near 1000ft of the selected altitude, it starts to beep five times and show a steady &amp;quot;ALERT&amp;quot; right below the altitude.&lt;br /&gt;
* When intercepting the altitude, the ALERT annunciator vanishes if you get 200ft near, and will shortly flash up when crossing the selected altitude to signal it &amp;quot;catched on&amp;quot;.&lt;br /&gt;
* When now exceeding the +-200ft band, it will alert by flashing and beeping.&lt;br /&gt;
&lt;br /&gt;
This feature just needs a calibrated baro setting and a selected altitude, thus it is also active when using the modes utilizing altitude preset described below.&lt;br /&gt;
&lt;br /&gt;
== Example workflow ==&lt;br /&gt;
This example tries to show you how to deal with the autopilot to achieve common tasks. There are more advanced techniques to achieve with the autopilot, but they are out of scope for this quick introduction. Please refer to the &#039;KAP 140 Pilot&#039;s Guide&#039; which is linked below.&lt;br /&gt;
&lt;br /&gt;
For better familiarization it would be good to follow trough the following guide inside flightgear.&lt;br /&gt;
&lt;br /&gt;
{{note| Be aware of procedure differences when you have an [[HSI|Horizontal Situation Indicator (HSI)]] installed in the aircraft: In this case, the KAP 140 will not have an automatic 45°-Intercept for NAV/APR/REV modes when switching from HDG-mode and you need to select the desired intercept course manually by turning the heading bug to the desired intercept course. }}&lt;br /&gt;
&lt;br /&gt;
=== Before-takeoff preparations ===&lt;br /&gt;
* For the HDG/NAV mode it is important to calibrate the [[Avionics_and_instruments#Directional_Gyro|Directional Gyro (DG)]] to the magnetic compass (with running motor, so the DG has power): read the magnetic compass and rotate the DG so its upper bearing mark reflects that course (use the red heading bug if necessary, it makes it easier at the beginning). If your DG was not calibrated, this will not be the magnetic course and you probably will not get where you wanted to.&lt;br /&gt;
* For the ALT mode it is important to calibrate the barometric setting of the autopilot to the one of the altimeter: read the altimeters baro setting from the Kollsman window (the small window at the altimeter), press the &amp;quot;BARO&amp;quot; key at the autopilot and rotate the right &amp;quot;altitude-preselect knob&amp;quot; so the autopilot shows the same setting. If you miss to calibrate the baro setting, you will under-/overshoot altitude presets&lt;br /&gt;
* You should run through the HDG and VS modes on ground as preflight check to make sure the autopilot is operating the aileron, elevator and trim wheel&lt;br /&gt;
* If you intend to follow the runway heading after takeoff, now is a good time to adjust the heading bug.&lt;br /&gt;
* If you intend to climb to a specific altitude and let the autopilot intercept it, you should now rotate the altitude preselect knob of the autopilot to the desired altitude.&lt;br /&gt;
&lt;br /&gt;
=== After Takeoff: Hold heading, continue climbing ===&lt;br /&gt;
It is not advised to engage the autopilot immediately for takeoff as it will mess up with lower speeds. Establish a smooth climb rate and trimmed flight first.&lt;br /&gt;
&lt;br /&gt;
When you achieved a stable climb rate after takeoff, engage the autopilot by pressing &amp;quot;AP&amp;quot;. It will engage in ROL/VS mode: keeps the wings level and maintain climb at the current rate. The moment you engage the autopilot it will show &amp;quot;ROL&amp;quot;, &amp;quot;VS&amp;quot;, and at the right side the currently set climb rate for some seconds. Always visually confirm the autopilot shows the modes you expect!&lt;br /&gt;
&lt;br /&gt;
If not done yet, rotate the red heading bug at the DG to the desired heading before switching to HDG mode.&lt;br /&gt;
&lt;br /&gt;
Once you press the HGT button, the autopilot will switch from ROL to the HDG mode, and the plane now follows the desired course. When you change the heading bug, the plane will bank and follow the new heading (it will do this at standard turn rate).&lt;br /&gt;
&lt;br /&gt;
=== Climb to Altitude, then hold it (intercept altitude) ===&lt;br /&gt;
The autpilot now should be in HDG/VS mode. You should check the vertical speed the autopilot automatically set to the climb rate you had when engaging it. Using the buttons &amp;quot;UP&amp;quot; and &amp;quot;DN&amp;quot; you can adjust the vertical speed setting to the desired value.&lt;br /&gt;
&lt;br /&gt;
To let the autopilot intercept the desired altitude, you need to enter it using the knob on the right side. Turn in the desired altitude.&lt;br /&gt;
Doing this should automatically &amp;quot;arm&amp;quot; the autopilot (it shows &amp;quot;ALT ARM&amp;quot;), telling you that it waits to reach the entered altitude. If it was not arming automatically, you can arm it by manually pressing &amp;quot;ARM&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The plane will now climb to the altitude you requested. When you get at 1000ft near your setting, it will beep to let you know its close. Once you reach the altitude it will reduce the climb rate to zero, leveling out at the desired altitude: this is indicated by the &amp;quot;ALT ARM&amp;quot; vanishing.&lt;br /&gt;
If you are not at the altitude you entered, you probably forgot to calibrate the baro setting.&lt;br /&gt;
&lt;br /&gt;
=== Enroute climb / descend ===&lt;br /&gt;
In case you want to change the currently maintained altitude, you can do so by two means:&lt;br /&gt;
# &#039;&#039;Small adjustments&#039;&#039; can be made by pressing just the UP/DN buttons. Each press will adjust the set altitude for 20ft.&amp;lt;ref&amp;gt;In reality you can hold the button to trigger climb/descend at 500ft/m until you release the key. Recent KAP140 simulations implement this.&amp;lt;/ref&amp;gt; Note that we are in ALT mode, so we adjust absolute altiutde with UP/DN knobs, not climb rate! &lt;br /&gt;
# For &#039;&#039;larger adjustments&#039;&#039; you just rotate the altitude preselect knob to the new desired altitude. The autopilot will show &amp;quot;ALT ARM&amp;quot;. When you are ready to climb or descend, put the autopilot to VS mode by pressing the ALT button. Now push UP/DN buttons to climb or descend, and everything else will behave like already described above. You can adjust the desired climb rate anytime. When intercepting, the autopilot will automatically enter ALT mode again (which changes the behaviour of UP/DN buttons to absolute corrections too!).&lt;br /&gt;
# For other cases you can also use the manual ALT mode: Put the autopilot in VS mode by pressing &amp;quot;ALT&amp;quot;, adjust the climb rate to your liking and as soon as you feel the altitude is right, you can press &amp;quot;ALT&amp;quot; again. The AP will show &amp;quot;ALT&amp;quot; immediately, indicating it is holding this altitude. If your climb rate was a little higher, you probably overshoot the desired altitude, but the autopilot will soon return to it.&lt;br /&gt;
&lt;br /&gt;
Note that you can use these techniques with ROL, HDG and NAV modes.&lt;br /&gt;
&lt;br /&gt;
=== VOR interception (NAV mode) ===&lt;br /&gt;
For longer trips it is nice to let the autopilot track a [[VOR]] radial. The difference to the HDG mode is that the plane will compensate for wind drift as it seeks to keep the [https://en.wikipedia.org/wiki/Course_deviation_indicator CDI]-needle centered.&lt;br /&gt;
&lt;br /&gt;
To use the NAV mode you have to tune NAV1 to the VORs frequency and select the desired radial with the OBS knob of your [https://en.wikipedia.org/wiki/Course_deviation_indicator CDI1] (which links to NAV1).&lt;br /&gt;
Now you can intercept the radial, and you have two options to do that:&lt;br /&gt;
# &#039;&#039;From HDG mode&#039;&#039;: select the radial also on your DG heading bug (the plane will try to follow that now). Then engage by pressing &amp;quot;NAV&amp;quot;. The autopilot will show &amp;quot;NAV ARM&amp;quot; and turn the plane to an 45° interception angle, but it will remain in HDG mode. Once you are close enough, the NAV-mode will kick in (&amp;quot;NAV ARM&amp;quot; vanishes and NAV shows) - the plane now follows the radial.&lt;br /&gt;
# &#039;&#039;From ROL mode&#039;&#039; (all angle intercept): It works like HDG mode, but once you push the NAV knob, the plane will intercept the radial at the angle you are currently flying. To initially bring the plane to the desired angle, use either HDG-mode with the heading bug, or fly manually, then engage ROL mode by pressing HDG.&lt;br /&gt;
Both modes will show a flashing &amp;quot;HDG&amp;quot; annunciator to remind you that you have to set the DG heading bug to the radial in both cases (the autopilot computes the needed course from that)!&lt;br /&gt;
&lt;br /&gt;
=== ILS assisted approach (APR mode) ===&lt;br /&gt;
The NAV and APR modes are really similar, but the APR mode does additionally follow also the glideslope signal from an [https://en.wikipedia.org/wiki/Instrument_landing_system ILS], and the ILS has a fixed radial (so it ignores the OBS knob setting of the CDI!).&lt;br /&gt;
&lt;br /&gt;
The interception works exactly as in the NAV mode described above. If you engage the APR mode knob the plane will start to intercept the signal, showing &amp;quot;APR ARM&amp;quot; and continue with the currently selected lateral mode (ROL or HDG with 45° intercept angle). Remember to set the DG heading bug to the desired approach course (&amp;quot;HDG&amp;quot; will flash to remember you of that).&lt;br /&gt;
&lt;br /&gt;
As soon as the plane intercepts the localizer (that drives the CDI needle left/right), it will behave like in NAV mode. &amp;quot;APR ARM&amp;quot; will vanish and switch to &amp;quot;APR&amp;quot;, showing you are in approach mode now.&lt;br /&gt;
&lt;br /&gt;
When the APR mode engages, the GS mode will try to intercept the vertical glideslope beam. As long as you stay below the beam, it will show &amp;quot;GS ARM&amp;quot;. When the vertical glideslope is intercepted, the plane will start to follow it downwards.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Attention! This mode is dangerous&#039;&#039;&#039;, because it will drive you into the ground if you don&#039;t disengage the autopilot. It is not meant to land you automatically, just to guide you close to the runway. As soon as you are near the runway you should disengage and land manually.&lt;br /&gt;
&lt;br /&gt;
=== Flying opposite direction of VOR or ILS (REV mode) ===&lt;br /&gt;
Using the REV mode allows you to fly away from an VOR or ILS localizer signal (note that glideslope is ignored).&lt;br /&gt;
It works the same as NAV or APR, just in the opposite compass direction. This is helpful if you want to fly straight away from the runway at start or to fly away from a VOR that you tuned the inbound course into the OBS.&lt;br /&gt;
&lt;br /&gt;
As APR and NAV, you can intercept the radial or localizer either from ROL or HDG mode.&lt;br /&gt;
In either case, dial in the Front Inbound course into the OBS and the DG heading bug, and not the direction you want to fly.&lt;br /&gt;
Course reversal is done from the autopilot automatically.&lt;br /&gt;
&lt;br /&gt;
== Related content ==&lt;br /&gt;
* [[Joystick Autopilot Bindings]]  Snippets for joystick.xml file that allow control of most of the autopilot functions using the joystick.&lt;br /&gt;
: {{icaution|These joystick bindings only work with the older KAP versions, not the new one with the preflight check simulated!}}&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
*[https://bkx.bendixking.com/downloads/006-18034-0000_3.pdf Bendix/King KAP 140 Pilot&#039;s Guide download link] (PDF, 6.8 MB), Honywell, rev. 3, Nov 2005.&lt;br /&gt;
*[https://www.bendixking.com/content/dam/bendixking/en/documents/document-lists/downloads-and-manuals/006-18034-0000-KAP-140-Pilots-Guide.pdf Bendix/King KAP 140 Pilot&#039;s Guide], Honeywell, rev. 3, Nov 2005.&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft instruments]]&lt;br /&gt;
&lt;br /&gt;
[[de:Autopilot Bendix/King KAP140]]&lt;br /&gt;
[[es:Piloto automático Bendix/King KAP140]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=User:Adaz&amp;diff=143918</id>
		<title>User:Adaz</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=User:Adaz&amp;diff=143918"/>
		<updated>2026-04-06T08:08:53Z</updated>

		<summary type="html">&lt;p&gt;Adaz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{done}} {{not done}}&lt;br /&gt;
{{pending}} &lt;br /&gt;
{{progressbar|90}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hello all,&lt;br /&gt;
&lt;br /&gt;
I am currently helping with the French translation of article and newsletters, and helping to update the screenshots of the month.&lt;br /&gt;
&lt;br /&gt;
My FlightGear favorite aircrafts : Robin DR400 and Airbus  A320 Family.&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=User:Adaz&amp;diff=143917</id>
		<title>User:Adaz</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=User:Adaz&amp;diff=143917"/>
		<updated>2026-04-06T08:07:05Z</updated>

		<summary type="html">&lt;p&gt;Adaz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{done}} {{not done}}&lt;br /&gt;
{{pending}} &lt;br /&gt;
{{progressbar|90}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hello all,&lt;br /&gt;
&lt;br /&gt;
I am currently helping with the French translation, and helping to update the screenshots of the month.&lt;br /&gt;
&lt;br /&gt;
My FlightGear favorite aircrafts : Robin DR400 and Airbus  A320 Family.&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=File:M._Berenger%27s_UH-60,_over_Port_Moresby_by_ac4rd.jpg&amp;diff=143916</id>
		<title>File:M. Berenger&#039;s UH-60, over Port Moresby by ac4rd.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=File:M._Berenger%27s_UH-60,_over_Port_Moresby_by_ac4rd.jpg&amp;diff=143916"/>
		<updated>2026-04-05T17:37:17Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Uploaded a work by xxx from https://forum.flightgear.org/viewtopic.php?t=44216 with UploadWizard&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=={{int:filedesc}}==&lt;br /&gt;
{{Information&lt;br /&gt;
|description={{en|1=Screenshot of the month Match 2026 - Candidate}}&lt;br /&gt;
|date=2026-04-05&lt;br /&gt;
|source=https://forum.flightgear.org/viewtopic.php?t=44216&lt;br /&gt;
|author=xxx&lt;br /&gt;
|permission=&lt;br /&gt;
|other versions=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=={{int:license-header}}==&lt;br /&gt;
{{cc-by-sa-4.0}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Screenshot of the month]]&lt;br /&gt;
[[Category:Screenshot of the month/2026-03]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=File:Inbound_for_26L_-_EGKK_by_Avionyx.jpg&amp;diff=143915</id>
		<title>File:Inbound for 26L - EGKK by Avionyx.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=File:Inbound_for_26L_-_EGKK_by_Avionyx.jpg&amp;diff=143915"/>
		<updated>2026-04-05T17:37:17Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Uploaded a work by xxx from https://forum.flightgear.org/viewtopic.php?t=44216 with UploadWizard&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=={{int:filedesc}}==&lt;br /&gt;
{{Information&lt;br /&gt;
|description={{en|1=Screenshot of the month Match 2026 - Candidate}}&lt;br /&gt;
|date=2026-04-05&lt;br /&gt;
|source=https://forum.flightgear.org/viewtopic.php?t=44216&lt;br /&gt;
|author=xxx&lt;br /&gt;
|permission=&lt;br /&gt;
|other versions=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=={{int:license-header}}==&lt;br /&gt;
{{cc-by-sa-4.0}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Screenshot of the month]]&lt;br /&gt;
[[Category:Screenshot of the month/2026-03]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=File:Hello_boys_!_by_StuartC.jpg&amp;diff=143914</id>
		<title>File:Hello boys ! by StuartC.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=File:Hello_boys_!_by_StuartC.jpg&amp;diff=143914"/>
		<updated>2026-04-05T17:37:17Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Uploaded a work by xxx from https://forum.flightgear.org/viewtopic.php?t=44216 with UploadWizard&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=={{int:filedesc}}==&lt;br /&gt;
{{Information&lt;br /&gt;
|description={{en|1=Screenshot of the month Match 2026 - Candidate}}&lt;br /&gt;
|date=2026-04-05&lt;br /&gt;
|source=https://forum.flightgear.org/viewtopic.php?t=44216&lt;br /&gt;
|author=xxx&lt;br /&gt;
|permission=&lt;br /&gt;
|other versions=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=={{int:license-header}}==&lt;br /&gt;
{{cc-by-sa-4.0}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Screenshot of the month]]&lt;br /&gt;
[[Category:Screenshot of the month/2026-03]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=File:Floriding_the_Hawk_T.1_by_OrbitalMartian.jpg&amp;diff=143913</id>
		<title>File:Floriding the Hawk T.1 by OrbitalMartian.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=File:Floriding_the_Hawk_T.1_by_OrbitalMartian.jpg&amp;diff=143913"/>
		<updated>2026-04-05T17:37:16Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Uploaded a work by xxx from https://forum.flightgear.org/viewtopic.php?t=44216 with UploadWizard&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=={{int:filedesc}}==&lt;br /&gt;
{{Information&lt;br /&gt;
|description={{en|1=Screenshot of the month Match 2026 - Candidate}}&lt;br /&gt;
|date=2026-04-05 17:21:41&lt;br /&gt;
|source=https://forum.flightgear.org/viewtopic.php?t=44216&lt;br /&gt;
|author=xxx&lt;br /&gt;
|permission=&lt;br /&gt;
|other versions=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=={{int:license-header}}==&lt;br /&gt;
{{cc-by-sa-4.0}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Screenshot of the month]]&lt;br /&gt;
[[Category:Screenshot of the month/2026-03]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=File:Comets_in_multiplayer_mode_by_eatdirt.jpg&amp;diff=143912</id>
		<title>File:Comets in multiplayer mode by eatdirt.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=File:Comets_in_multiplayer_mode_by_eatdirt.jpg&amp;diff=143912"/>
		<updated>2026-04-05T17:37:16Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Uploaded a work by xxx from https://forum.flightgear.org/viewtopic.php?t=44216 with UploadWizard&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=={{int:filedesc}}==&lt;br /&gt;
{{Information&lt;br /&gt;
|description={{en|1=Screenshot of the month Match 2026 - Candidate}}&lt;br /&gt;
|date=2026-04-05&lt;br /&gt;
|source=https://forum.flightgear.org/viewtopic.php?t=44216&lt;br /&gt;
|author=xxx&lt;br /&gt;
|permission=&lt;br /&gt;
|other versions=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=={{int:license-header}}==&lt;br /&gt;
{{cc-by-sa-4.0}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Screenshot of the month]]&lt;br /&gt;
[[Category:Screenshot of the month/2026-03]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=File:Cessna_180_(1956_Model)_Preparing_to_Land_at_Airport_CYBA_in_Early_March_Weather_(Banff;_Alta.,_Canada)_by_VonS.jpg&amp;diff=143911</id>
		<title>File:Cessna 180 (1956 Model) Preparing to Land at Airport CYBA in Early March Weather (Banff; Alta., Canada) by VonS.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=File:Cessna_180_(1956_Model)_Preparing_to_Land_at_Airport_CYBA_in_Early_March_Weather_(Banff;_Alta.,_Canada)_by_VonS.jpg&amp;diff=143911"/>
		<updated>2026-04-05T17:37:16Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Uploaded a work by xxx from https://forum.flightgear.org/viewtopic.php?t=44216 with UploadWizard&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=={{int:filedesc}}==&lt;br /&gt;
{{Information&lt;br /&gt;
|description={{en|1=Screenshot of the month Match 2026 - Candidate}}&lt;br /&gt;
|date=2026-04-05 17:20:11&lt;br /&gt;
|source=https://forum.flightgear.org/viewtopic.php?t=44216&lt;br /&gt;
|author=xxx&lt;br /&gt;
|permission=&lt;br /&gt;
|other versions=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=={{int:license-header}}==&lt;br /&gt;
{{cc-by-sa-4.0}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Screenshot of the month]]&lt;br /&gt;
[[Category:Screenshot of the month/2026-03]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=File:Dawn_Patrol_Northern_Marne_by_@Lester-Boffo.jpg&amp;diff=143910</id>
		<title>File:Dawn Patrol Northern Marne by @Lester-Boffo.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=File:Dawn_Patrol_Northern_Marne_by_@Lester-Boffo.jpg&amp;diff=143910"/>
		<updated>2026-04-05T17:06:41Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Add category POTM 2026&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=={{int:filedesc}}==&lt;br /&gt;
{{Information&lt;br /&gt;
|description={{fr|1=Dawn Patrol Northern Marne by @Lester-Boffo}}&lt;br /&gt;
|date=2026-03-15&lt;br /&gt;
|source=https://forum.flightgear.org/viewtopic.php?t=44104&lt;br /&gt;
|author=@Lester-Boffo&lt;br /&gt;
|permission=&lt;br /&gt;
|other versions=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=={{int:license-header}}==&lt;br /&gt;
{{cc-by-sa-4.0}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Screenshot of the month]]&lt;br /&gt;
[[Category:Screenshot of the month/2026-02]]&lt;br /&gt;
[[Category:Picture of the month 2026]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Category:Picture_of_the_month_2026&amp;diff=143909</id>
		<title>Category:Picture of the month 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Category:Picture_of_the_month_2026&amp;diff=143909"/>
		<updated>2026-04-05T17:04:58Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Created page with &amp;quot;Winners of each month on year 2026&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Winners of each month on year 2026&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=File:UPS_MD-11_on_final_LBSF_Sofia_Airport_by_fatomann.jpg&amp;diff=143908</id>
		<title>File:UPS MD-11 on final LBSF Sofia Airport by fatomann.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=File:UPS_MD-11_on_final_LBSF_Sofia_Airport_by_fatomann.jpg&amp;diff=143908"/>
		<updated>2026-04-05T17:04:11Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Add category POTM 2026&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=={{int:filedesc}}==&lt;br /&gt;
{{Information&lt;br /&gt;
|description={{en|1=UPS MD-11 on final LBSF Sofia Airport by fatomann}}&lt;br /&gt;
|date=2026-02-22 10:10:48&lt;br /&gt;
|source=https://forum.flightgear.org/viewtopic.php?t=44065&lt;br /&gt;
|author=fatomann&lt;br /&gt;
|permission=&lt;br /&gt;
|other versions=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=={{int:license-header}}==&lt;br /&gt;
{{cc-by-sa-4.0}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Screenshot of the month/2026-01]]&lt;br /&gt;
[[Category:Screenshot of the month]]&lt;br /&gt;
[[Category:Picture of the month 2026]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Template:POTM/2026-05&amp;diff=143907</id>
		<title>Template:POTM/2026-05</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Template:POTM/2026-05&amp;diff=143907"/>
		<updated>2026-04-05T16:59:00Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Add template for May 206&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Template:POTM/2026-04]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Template:POTM/2026-03&amp;diff=143906</id>
		<title>Template:POTM/2026-03</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Template:POTM/2026-03&amp;diff=143906"/>
		<updated>2026-04-05T16:53:41Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Update to display vote link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;!-- #REDIRECT [[Template:POTM/2026-02]] --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{POTM&lt;br /&gt;
|image       = Dawn Patrol Northern Marne by @Lester-Boffo.jpg&lt;br /&gt;
|description = {{LangSwitch&lt;br /&gt;
  | en = Dawn Patrol Northern Marne by @Lester-Boffo&lt;br /&gt;
  | fa = گشت سپیده دم شمال مارن اثر لستر-بوفو&lt;br /&gt;
  | fr = Patrouille à l&#039;aube en Haute Marne par Lester-Boffo&lt;br /&gt;
  | pl = Patrol Świtu Północnej Marny autorstwa Lester-Boffo&lt;br /&gt;
  | zh = 莱斯特·博福的《黎明巡逻队：北马恩》&lt;br /&gt;
  | lang = &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
|article     = https://forum.flightgear.org/viewtopic.php?f=88&amp;amp;t=44151&lt;br /&gt;
}}&amp;lt;noinclude&amp;gt;[[Category:Picture of the month 2026]]&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{VOTE&lt;br /&gt;
| forumid = 44216&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Category:Screenshot_of_the_month&amp;diff=143905</id>
		<title>Category:Screenshot of the month</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Category:Screenshot_of_the_month&amp;diff=143905"/>
		<updated>2026-04-05T16:49:22Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Add March 2026 link to vote forum ID 44216&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{en|Category with winners of the &#039;&#039;Screenshot of the Month&#039;&#039; contests from April 2011 to April 2012, and since June 2015.}}&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center&amp;quot;&lt;br /&gt;
! Date&lt;br /&gt;
! Screenshot submission&lt;br /&gt;
! Vote&lt;br /&gt;
! Subcategory&lt;br /&gt;
|-&lt;br /&gt;
| 2026-03&lt;br /&gt;
| {{forum link|title=Submit your screenshot for the SOTM of March|t=44174}}&lt;br /&gt;
| {{forum link|title= Voting for the SOTM of March|t=44216}}&lt;br /&gt;
&amp;lt;!-- | Coming soon  --&amp;gt;&lt;br /&gt;
| [[:Category:Screenshot of the month/2026-03]]&lt;br /&gt;
|-&lt;br /&gt;
| 2026-02&lt;br /&gt;
| {{forum link|title=Submit your screenshot for the SOTM of February|t=44104}}&lt;br /&gt;
| {{forum link|title= Voting for the SOTM of February |t=44151}}&lt;br /&gt;
| [[:Category:Screenshot of the month/2026-02]]&lt;br /&gt;
|-&lt;br /&gt;
| 2026-01&lt;br /&gt;
| {{forum link|title=Submit your screenshot for the SOTM of January|t=44013}}&lt;br /&gt;
| {{forum link|title= Voting for the SOTM of January |t=44065}} &lt;br /&gt;
| [[:Category:Screenshot of the month/2026-01]]&lt;br /&gt;
|-&lt;br /&gt;
| 2025-12&lt;br /&gt;
| {{forum link|title=Submit your screenshot for the SOTM of December|t=43965}}&lt;br /&gt;
| {{forum link|title=Voting for the SOTM of December|t=44006}}&lt;br /&gt;
| [[:Category:Screenshot of the month/2025-12]]&lt;br /&gt;
|-&lt;br /&gt;
| 2025-11&lt;br /&gt;
| {{forum link|title=Submit your screenshot for the SOTM of November|t=43870}}&lt;br /&gt;
| {{forum link|title=Voting for the SOTM of November|t=43924}}&lt;br /&gt;
| [[:Category:Screenshot of the month/2025-11]]&lt;br /&gt;
|-&lt;br /&gt;
| 2019-01&lt;br /&gt;
| {{forum link|title=Submit your screenshot for the SOTM of January!|t=35229}}&lt;br /&gt;
| {{forum link|title=Voting for the SOTM January|t=35303}}&lt;br /&gt;
| [[:Category:Screenshot of the month/2019-01]]&lt;br /&gt;
|-&lt;br /&gt;
| 2019-02&lt;br /&gt;
| {{forum link|title=Submit your Screenshot for February&#039;s SOTM!|t=35319}}&lt;br /&gt;
| {{forum link|title=Voting for the SOTM|t=35413}}&lt;br /&gt;
| [[:Category:Screenshot of the month/2019-02]]&lt;br /&gt;
|-&lt;br /&gt;
| 2019-03&lt;br /&gt;
| {{forum link|title=Submit your screenshot for the SOTM of March|t=35436}}&lt;br /&gt;
| {{forum link|title=Voting for the SOTM|t=35554}}&lt;br /&gt;
| [[:Category:Screenshot of the month/2019-03]]&lt;br /&gt;
|-&lt;br /&gt;
| 2019-04&lt;br /&gt;
| {{forum link|title=Submit your screenshot for the SOTM of April|t=35574}}&lt;br /&gt;
| {{forum link|title=Voting for the SOTM|t=35720}}&lt;br /&gt;
| [[:Category:Screenshot of the month/2019-04]]&lt;br /&gt;
|-&lt;br /&gt;
| 2019-05&lt;br /&gt;
| {{forum link|title=Submit your screenshot for the SOTM of May|t=35746}}&lt;br /&gt;
| {{forum link|title=Voting for the SOTM of May|t=35880}}&lt;br /&gt;
| [[:Category:Screenshot of the month/2019-05]]&lt;br /&gt;
|-&lt;br /&gt;
| 2019-06&lt;br /&gt;
| {{forum link|title=Submit your screenshot for the SOTM of June!|t=35903}}&lt;br /&gt;
| {{forum link|title=Vote for the SOTM of June|t=36046}}&lt;br /&gt;
| [[:Category:Screenshot of the month/2019-06]]&lt;br /&gt;
|-&lt;br /&gt;
| 2019-07&lt;br /&gt;
| {{forum link|title=Submit your screenshot for the SOTM of July|t=36088}}&lt;br /&gt;
| {{forum link|title=Vote for the SOTM July 2019|t=36149}}&lt;br /&gt;
| [[:Category:Screenshot of the month/2019-07]]&lt;br /&gt;
|-&lt;br /&gt;
| 2019-08&lt;br /&gt;
| {{forum link|title=Submit your screenshot for the SOTM of August!|t=36188}}&lt;br /&gt;
| {{forum link|title=Vote for the SOTM August 2019|t=36265}}&lt;br /&gt;
| [[:Category:Screenshot of the month/2019-08]]&lt;br /&gt;
|-&lt;br /&gt;
| 2019-09&lt;br /&gt;
| {{forum link|title=Submit your screenshot for SOTM of September|t=36316}}&lt;br /&gt;
| {{forum link|title=Voting for the SOTM September|t=36361}}&lt;br /&gt;
| [[:Category:Screenshot of the month/2019-09]]&lt;br /&gt;
|-&lt;br /&gt;
| 2019-10&lt;br /&gt;
| - no contest -&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 2019-11&lt;br /&gt;
| {{forum link|title=Submit your screenshot for the SOTM of November 2019|t=36496}}&lt;br /&gt;
| {{forum link|title=Voting for the SOTM of November 2019|t=36616}}&lt;br /&gt;
| [[:Category:Screenshot of the month/2019-11]]&lt;br /&gt;
|-&lt;br /&gt;
| 2019-12&lt;br /&gt;
| {{forum link|title=Submit your screenshot for the SOTM of December 2019|t=36643}}&lt;br /&gt;
| {{forum link|title=Voting for the SOTM of December 2019|t=36702}}&lt;br /&gt;
| [[:Category:Screenshot of the month/2019-12]]&lt;br /&gt;
|-&lt;br /&gt;
| 2019 SOTY&lt;br /&gt;
| - Used previous month&#039;s winners -&lt;br /&gt;
| {{forum link|title=Voting for the SOTY of 2019|t=36740}}&lt;br /&gt;
| [[:Category:Screenshot of the year/2019]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:FlightGear screenshots]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/Projet_Rembrandt&amp;diff=143904</id>
		<title>Fr/Projet Rembrandt</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/Projet_Rembrandt&amp;diff=143904"/>
		<updated>2026-04-05T15:25:57Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Add template Affected by Compositor&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{WIP}}&lt;br /&gt;
{{Affected by Compositor}}&lt;br /&gt;
== Pourquoi ce nom? ==&lt;br /&gt;
[http://en.wikipedia.org/wiki/Rembrandt Rembrandt] était un peintre hollandais du XVIIème siècle, maître incontesté du [http://en.wikipedia.org/wiki/Chiaroscuro &amp;quot;clair-obscur&amp;quot;].&lt;br /&gt;
&lt;br /&gt;
Ce projet a pour but de changer la manière de rendre les lumières et les [[Shadows|ombres]] qu&#039;utilise [[FlightGear]], et d&#039;essayer d&#039;imiter le style de Rembrandt dans FG.&lt;br /&gt;
&lt;br /&gt;
== De quoi s&#039;agit-il ? ==&lt;br /&gt;
L&#039;idée maîtresse du projet est d&#039;implémenter le [http://en.wikipedia.org/wiki/Deferred_shading rendu différé] au sein de FlightGear.&lt;br /&gt;
Depuis le début, FlightGear utilise un moteur de rendu classique, &amp;quot;en avant&amp;quot;, qui affiche toutes les propriétés d&#039;un objet en une fois (ombre, éclairage, brouillard, ...), ce qui rend difficile le rendu d&#039;un ombrage plus sophistiqué (voir le [[FlightGear Newsletter December 2011#Shaders|&#039;Uber-shader&#039;]]) du fait que tous les paramètres de [http://www.wired.com/magazine/2010/07/st_equation_3danimation/ l&#039;équation lumineuse] doivent être traités en une seule fois.&lt;br /&gt;
&lt;br /&gt;
[[Image:project_rembrandt_1.png|thumb|300px|Vue principale avec le contenu des buffers affichés dans les coins]]&lt;br /&gt;
Au contraire, le rendu différé cherche à séparer les opérations en étapes simplifiées, et à collecter les résultats intermédiaires dans des buffers cachés, qui peuvent être utilisés par les étapes suivantes.&lt;br /&gt;
&lt;br /&gt;
;Le premier stade est celui de la Géométrie:&lt;br /&gt;
: nous rendons la scène entière dans 4 textures, en utilisant le rendu multi-cibles pour les traiter en un seul passage: un pour le buffer de profondeur, un pour les normals (en bas à gauche de l&#039;image), un pour les couleurs &amp;quot;diffuses&amp;quot; (en bas à gauche) et un pour les couleurs &amp;quot;spéculaires&amp;quot; (en haut à droite).&lt;br /&gt;
&lt;br /&gt;
;Le stade suivant est celui de l&#039;ombre :&lt;br /&gt;
: nous rendons encore la scène dans une texture profondeur concernant les éclairages. Il y aura une texture pour chaque lumière diffusant des ombres.&lt;br /&gt;
&lt;br /&gt;
;Ensuite, c&#039;est le stade de la lumière, avec plusieurs sous-stades :&lt;br /&gt;
:*&amp;lt;u&amp;gt;Sky pass&amp;lt;/u&amp;gt;: Le ciel est dessiné d&#039;abord selon la méthode classique.&lt;br /&gt;
:*&amp;lt;u&amp;gt;Ambient pass&amp;lt;/u&amp;gt;: la mémoire-tampon &amp;quot;diffuse&amp;quot; est modulée avec la couleur ambiante de la scène, et est dessinée comme un quad texturé aligné sur l&#039;écran&lt;br /&gt;
:*&amp;lt;u&amp;gt;Sunlight pass&amp;lt;/u&amp;gt;: Un second quad aligné à l&#039;écran est dessiné et un shader examine la position pour calculer sa couleur &amp;quot;diffuse&amp;quot; et &amp;quot;specular&amp;quot; en utilisant le &amp;quot;normal&amp;quot; stocké dans le premier stade. La couleur résultante et mélangée avec la passe précédente. Les ombres sont examinées ici par comparaison de la position du pixel avec la position du cache lumière stockée dans la carte shadows&lt;br /&gt;
:*&amp;lt;u&amp;gt;Fog pass&amp;lt;/u&amp;gt;: un nouvel écran quad est dessiné et la position du pixel est calculée pour évaluer la quantité de brouillard du pixel. La couleur du brouillard est mélangée avec le résultat de la phase précédente  &lt;br /&gt;
:*&amp;lt;u&amp;gt;stade de la lumière additionnelle&amp;lt;/u&amp;gt;: le scene graph sera traversé une autre fois pour afficher les volumes de lumière (cône ou tronc de cône pour les taches de lumière, sphère pour les lumières omni directionnelles), et leur shader ajoutera la lumière composée uniquement par les pixels éclairés.&lt;br /&gt;
:*&amp;lt;u&amp;gt;stade brouillard&amp;lt;/u&amp;gt;: un nouveau quad aligné sur l&#039;écran est dessiné, et la position du pixel est calculée pour évaluer la quantité de brouillard du pixel. La couleur du brouillard est mélangée avec le résultat du stade précédent.&lt;br /&gt;
:*&amp;lt;u&amp;gt;Stade des objets transparents&amp;lt;/u&amp;gt;: les objets transparents (et les nuages) sont enfin rendus en utilisant la méthode classique.&lt;br /&gt;
&lt;br /&gt;
:Tous les données de lumière sont accumulées dans une seule mémoire tampon, qui sera utilisée pour le dernier stade en addition au stade Géométrie.&lt;br /&gt;
&lt;br /&gt;
;A la fin, le stade affichage, avec l&#039;option effet post-traitement :&lt;br /&gt;
:Les résultats des précédents tampons sont poussés dans le tampon principal pour être affichés, optionnellement modifiés pour montrer Glow, Motion blur, HDR, redout ou blackout, occlusion ambiante de l&#039;espace écran, anti-aliasing, etc...&lt;br /&gt;
&lt;br /&gt;
Dans FG, on termine le pipeline du rendu par l&#039;affichage du [[Menubar|GUI]] et du [[HUD]].&lt;br /&gt;
&lt;br /&gt;
Tous ces phases sont plus précisément décrites dans [http://bat710.univ-lyon1.fr/~jciehl/Public/educ/GAMA/2007/Deferred_Shading_Tutorial_SBGAMES2005.pdf tutorial] c&#039;est la base du code actuel, avec quelques ajouts ou modifications.&lt;br /&gt;
&lt;br /&gt;
== Avertissements ==&lt;br /&gt;
Le rendu différé n&#039;affiche pas la transparence. Pour le moment, les nuages doivent être éclairés et ombrés par eux-mêmes. Les surfaces transparentes sont alpha-testées et non mélangées. Elles doivent être amenées dans leur propre bac sur l&#039;image composite.&lt;br /&gt;
&lt;br /&gt;
La partition profondeur ne marche pas non plus, à cause de la mémoire tampon profondeur, qui doit être gardée pour retenir la position de zone de vue, et, pour le moment, z-fighting est tout à fait visible. La partition profondeur sans rangée de profondeur superposée pourrait être la solution, et devrait être essayée.&lt;br /&gt;
&lt;br /&gt;
Le passage de la lumière peut rendre certains MFD illisibles (ce qui utilisent une couleur émissive) car flous. Ils devront être traités comme transparents.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Mise en œuvre ==&lt;br /&gt;
=== Répertoires ===&lt;br /&gt;
Le code est la principale branche du [[FlightGear and Git|répertoire officiel]]. Aucune autre localisation n&#039;existe.&lt;br /&gt;
&lt;br /&gt;
=== Rendu des surfaces transparentes ===&lt;br /&gt;
[[Image:project_rembrandt_5.png|thumb|300px|Surfaces transparentes desssinées d&#039;après des objets opaques]]&lt;br /&gt;
Les surfaces transparentes sont détectées par les plugins OSG loader et reçoivent des suggestions de rendu TRANSPARENT_BIN&lt;br /&gt;
 Au stade collection, le collecteur commande les surfaces transparentes dans le le bac transparent. Dans un retour, attaché à la caméra Géometry, après la traversée scénographe, les bacs transparent sont enlevés de la phase rendu et sauvegardés dans un espace temporaire. Dans un retour attaché  la caméra Éclairage, après la traversée sceneraph, les bacs transparents sauvegardent au prochain stade, sont ajoutés  au stade rendu de la caméra éclairageavec un numéro d&#039;ordre. Ainsi, les surfaces transparentes sont dessinées au sommet de la scene éclairée à partir de G-buffer .&lt;br /&gt;
&lt;br /&gt;
=== Consommation de mémoire ===&lt;br /&gt;
Pour chaque caméra définie du groupe, il y a une carte d&#039;ombre séparée, de telle sorte que l&#039;utilisation de la mémoire vidéo soit:&lt;br /&gt;
* G-tampon et tampon lumière: 20 bytes par pixel. Pour un écran HD (1920x1080) la mémoire requise est de 40 Mb&lt;br /&gt;
* Carte d&#039;ombre 3 x taille_carte_ombre x shadow_map_size bytes (si la taille est 8192, la taille totale de la mémoire est 192 Mb&lt;br /&gt;
Ne pas compter les textures, liste d&#039;affichage ou tampons vertex pour modèles et terrains&lt;br /&gt;
&lt;br /&gt;
3 écrans HD ont besoin de 120 Mb de mémoire pour les tampons (ombre exclue), il vous faut  3x8192x8192x3 = 576 Mb (megabytes) de mémoire pour les seuls shadows.&lt;br /&gt;
&lt;br /&gt;
Si vous voyez des messages d&#039;erreur pendant le démarrage, ou si FlightGear ne démarre pas bien, c&#039;est probablement parceque vous n&#039;avez pas assez de mémoire vidéo libre. Réduisez la taille de la carte d&#039;ombre dans préférences.xml &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;map-size type=&amp;quot;int&amp;quot;&amp;gt;8192&amp;lt;/map-size&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et mettez 4096 ou 2048 à la place.Vous pouvez aussi utiliser un paramètre de démarrage: --prop:/sim/rendering/shadows/map-size=2048&lt;br /&gt;
&lt;br /&gt;
=== Pipeline configurable  ===&lt;br /&gt;
&lt;br /&gt;
Le rendu Rembrandt utilise un fichier XML  pour installer son pipeline pour chaque fenêtre décrite dans le groupe de cameras. Ce fichier décrit la façon dont les tampons intermédiaires sont établis, et comment les différentes étapes du rendu sont agencées. Le schéma général du fichier pipeline est le suivant :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;PropertyList&amp;gt;&lt;br /&gt;
	&amp;lt;!-- BUFFERS --&amp;gt;&lt;br /&gt;
	&amp;lt;buffer&amp;gt;&lt;br /&gt;
		&amp;lt;!-- 1ere définition de tampon --&amp;gt;&lt;br /&gt;
	&amp;lt;/buffer&amp;gt;&lt;br /&gt;
	&amp;lt;buffer&amp;gt;&lt;br /&gt;
		&amp;lt;!-- n ème définition de tampon --&amp;gt;&lt;br /&gt;
	&amp;lt;/buffer&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
	&amp;lt;!-- STAGES --&amp;gt;&lt;br /&gt;
	&amp;lt;stage&amp;gt;&lt;br /&gt;
		&amp;lt;!-- 1ère définition d&#039;étape --&amp;gt;&lt;br /&gt;
	&amp;lt;/stage&amp;gt;&lt;br /&gt;
	&amp;lt;stage&amp;gt;&lt;br /&gt;
		&amp;lt;!-- n ème définition d&#039;étape --&amp;gt;&lt;br /&gt;
	&amp;lt;/stage&amp;gt;&lt;br /&gt;
&amp;lt;/PropertyList&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Tampons (Buffers)====&lt;br /&gt;
Un tampon est une texture utilisée comme zone de stockage dans le GPU. Sa taille est habituellement un multiple de la taille de l&#039;écran, mais une taille fixe est prise en charge ( typique pour la carte d&#039;ombres). La description d&#039;un tampon suit :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;buffer&amp;gt;&lt;br /&gt;
		&amp;lt;name&amp;gt;buffer-name&amp;lt;/name&amp;gt;&lt;br /&gt;
		&amp;lt;internal-format&amp;gt;rgba8&amp;lt;/internal-format&amp;gt; &amp;lt;!-- rgb8, rgba8, rgb16, rgba16, rg16, depth-component24, depth-component32 or OpenGL hex value --&amp;gt;&lt;br /&gt;
		&amp;lt;source-format&amp;gt;rgba&amp;lt;/source-format&amp;gt; &amp;lt;!-- rg, rgb, rgba, depth-component or OpenGL hex value --&amp;gt;&lt;br /&gt;
		&amp;lt;source-type&amp;gt;unsigned-byte&amp;lt;/source-type&amp;gt; &amp;lt;!-- unsigned-byte, unsigned-short, unsigned-int, float or OpenGL hex value --&amp;gt;&lt;br /&gt;
		&amp;lt;width&amp;gt;screen&amp;lt;/width&amp;gt; &amp;lt;!-- screen, value or &amp;lt;property&amp;gt;/a/width/property&amp;lt;/property&amp;gt; --&amp;gt;&lt;br /&gt;
		&amp;lt;height&amp;gt;screen&amp;lt;/height&amp;gt; &amp;lt;!-- screen, value or &amp;lt;property&amp;gt;/a/height/property&amp;lt;/property&amp;gt; --&amp;gt;&lt;br /&gt;
		&amp;lt;scale-factor&amp;gt;1.0&amp;lt;/scale-factor&amp;gt;&lt;br /&gt;
		&amp;lt;wrap-mode&amp;gt;clamp-to-border&amp;lt;/wrap-mode&amp;gt; &amp;lt;!-- clamp, clamp-to-border, clamp-to-edge, mirror, repeat or OpenGL hex value --&amp;gt;&lt;br /&gt;
		&amp;lt;!-- optional, for shadow map --&amp;gt;&lt;br /&gt;
		&amp;lt;shadow-comparison&amp;gt;true&amp;lt;/shadow-comparison&amp;gt;&lt;br /&gt;
		&amp;lt;!-- optional condition --&amp;gt;&lt;br /&gt;
		&amp;lt;condition&amp;gt;&lt;br /&gt;
			&amp;lt;!-- Valid boolean expression --&amp;gt;&lt;br /&gt;
		&amp;lt;/condition&amp;gt;&lt;br /&gt;
	&amp;lt;/buffer&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Phases ====&lt;br /&gt;
Une phase est une unité de rendu d&#039;un groupe de tampons. La plupart des phases sont pré-définies et leur type n&#039;est pas libre. Quand un type n&#039;est pas spécifié, le nom est utilisé? Les types de phases sont :&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;| Stage type&lt;br /&gt;
!align=&amp;quot;left&amp;quot;| Purpose&lt;br /&gt;
|-&lt;br /&gt;
|geometry&lt;br /&gt;
|La phase geometry initialise la plupart des tampons et agit sur les objets réels et la géométrie. Les objets transparents sont placés à côté, et seront utilisés tels quels dans la phase lumière. Le reste de la géométrie opaque  est rendu avec les effets standard, permettant de mettre la donnée sensible dans les tampons.&lt;br /&gt;
|-&lt;br /&gt;
|ombre&lt;br /&gt;
|Dans cette phase, la géométrie est rendue dans la carte normale à partir de la perspective du soleil.&lt;br /&gt;
|-&lt;br /&gt;
|lumière&lt;br /&gt;
|Cette phase utilise les tampons remplis par les phases précédrntes pour éclairer  chaque pixel de la scène. Le résultat est rendu dans un autre tampon pour permettre des effets ultérieurs.&lt;br /&gt;
|-&lt;br /&gt;
|plein écran&lt;br /&gt;
|Les phases de ce type sont utilisés pour changer la scène entière, ou transformer une donnée à partir d&#039;un tampon particulier.&lt;br /&gt;
|-&lt;br /&gt;
|affichage&lt;br /&gt;
|Le rendu final de la scène à l&#039;écran est jugé à l&#039;écran, ou la texture est définie dans le groupe caméra .&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Ci-dessous, une description de phase :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;stage&amp;gt;&lt;br /&gt;
		&amp;lt;name&amp;gt;stage-name&amp;lt;/name&amp;gt;&lt;br /&gt;
		&amp;lt;type&amp;gt;stage-type&amp;lt;/type&amp;gt; &amp;lt;!-- optionnel si le nom est l&#039;un des types prédéfinis sauf plein écran  --&amp;gt;&lt;br /&gt;
		&amp;lt;order-num&amp;gt;-1&amp;lt;/order-num&amp;gt;&lt;br /&gt;
		&amp;lt;effect&amp;gt;Effects/fullscreen-effect&amp;lt;/effect&amp;gt; &amp;lt;!-- seulement si type == fullscreen --&amp;gt;&lt;br /&gt;
		&amp;lt;needs-du-dv&amp;gt;true&amp;lt;/needs-du-dv&amp;gt; &amp;lt;!-- seulement si type == fullscreen --&amp;gt;&lt;br /&gt;
		&amp;lt;scale-factor&amp;gt;0.25&amp;lt;/scale-factor&amp;gt; &amp;lt;!-- seulement si type == fullscreen --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
		&amp;lt;!-- optional condition --&amp;gt;&lt;br /&gt;
		&amp;lt;condition&amp;gt;&lt;br /&gt;
			&amp;lt;!-- Valid boolean expression --&amp;gt;&lt;br /&gt;
		&amp;lt;/condition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
		&amp;lt;attachment&amp;gt;&lt;br /&gt;
			&amp;lt;!-- First attachment definition --&amp;gt;&lt;br /&gt;
		&amp;lt;/attachment&amp;gt;&lt;br /&gt;
		&amp;lt;attachment&amp;gt;&lt;br /&gt;
			&amp;lt;!-- Nth attachment definition --&amp;gt;&lt;br /&gt;
		&amp;lt;/attachment&amp;gt;&lt;br /&gt;
&lt;br /&gt;
		&amp;lt;!-- Passes only for the lighting stage --&amp;gt;&lt;br /&gt;
		&amp;lt;pass&amp;gt;&lt;br /&gt;
			&amp;lt;!-- First pass definition --&amp;gt;&lt;br /&gt;
		&amp;lt;/pass&amp;gt;&lt;br /&gt;
		&amp;lt;pass&amp;gt;&lt;br /&gt;
			&amp;lt;!-- Nth pass definition --&amp;gt;&lt;br /&gt;
		&amp;lt;/pass&amp;gt;&lt;br /&gt;
	&amp;lt;/stage&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Les phases sont rendues dans les tampons (sauf pur la phase affichage). Les pièces jointes disent quels tampons sony affectés par chaque phase.&lt;br /&gt;
&lt;br /&gt;
===== Pièces jointes =====&lt;br /&gt;
La pièce jointe décrit la liaison entre tampon et poit d&#039;attachement :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;attachment&amp;gt;&lt;br /&gt;
		&amp;lt;component&amp;gt;color0&amp;lt;/component&amp;gt; &amp;lt;!-- depth, stencil, packed-depth-stencil, color0, color1, color2 or color3 --&amp;gt;&lt;br /&gt;
		&amp;lt;buffer&amp;gt;buffer-name&amp;lt;/buffer&amp;gt;&lt;br /&gt;
		&amp;lt;!-- optional condition --&amp;gt;&lt;br /&gt;
		&amp;lt;condition&amp;gt;&lt;br /&gt;
			&amp;lt;!-- Valid boolean expression --&amp;gt;&lt;br /&gt;
		&amp;lt;/condition&amp;gt;&lt;br /&gt;
	&amp;lt;/attachment&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Permissions(passes) =====&lt;br /&gt;
Les Passes sont seulement disponibles dans la phase &amp;lt;tt&amp;gt;lighting&amp;lt;/tt&amp;gt;. trois sortes de phases sont autorisées :&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;| Pass type&lt;br /&gt;
!align=&amp;quot;left&amp;quot;| Purpose&lt;br /&gt;
|-&lt;br /&gt;
|sky-clouds&lt;br /&gt;
|Rendus de la voûte céleste, solei, lune, planète, étoiles et nuages&lt;br /&gt;
|-&lt;br /&gt;
|lumières&lt;br /&gt;
|Rendus des taches additionnelles et points lumineux &lt;br /&gt;
|-&lt;br /&gt;
|plein écran&lt;br /&gt;
|Le pass fullscreen analogue à une phase fullscreen sauf qu&#039;il est rendu dans des tampons attachés à la phase lumière&lt;br /&gt;
|}&lt;br /&gt;
Un pass est défini ci-dessous :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;pass&amp;gt;&lt;br /&gt;
		&amp;lt;name&amp;gt;pass-name&amp;lt;/name&amp;gt;&lt;br /&gt;
		&amp;lt;type&amp;gt;pass-type&amp;lt;/type&amp;gt; &amp;lt;!-- optionnel si le nom est prédéfini excepté fullscreen --&amp;gt;&lt;br /&gt;
		&amp;lt;order-num&amp;gt;-1&amp;lt;/order-num&amp;gt;&lt;br /&gt;
		&amp;lt;effect&amp;gt;Effects/fullscreen-effect&amp;lt;/effect&amp;gt; &amp;lt;!-- seulement si type == fullscreen --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
		&amp;lt;!-- optional condition --&amp;gt;&lt;br /&gt;
		&amp;lt;condition&amp;gt;&lt;br /&gt;
			&amp;lt;!-- Valid boolean expression --&amp;gt;&lt;br /&gt;
		&amp;lt;/condition&amp;gt;&lt;br /&gt;
	&amp;lt;/pass&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Une phase lumière typique est une succession de 5 pass:&lt;br /&gt;
# &amp;lt;tt&amp;gt;sky-clouds&amp;lt;/tt&amp;gt; pass&lt;br /&gt;
# &amp;lt;tt&amp;gt;fullscreen&amp;lt;/tt&amp;gt; pass pour lumière ambiante&lt;br /&gt;
# &amp;lt;tt&amp;gt;fullscreen&amp;lt;/tt&amp;gt; pass pour lumière solaire (et ombres)&lt;br /&gt;
# &amp;lt;tt&amp;gt;lights&amp;lt;/tt&amp;gt; pass&lt;br /&gt;
# &amp;lt;tt&amp;gt;fullscreen&amp;lt;/tt&amp;gt; pass pour brouillard&lt;br /&gt;
&lt;br /&gt;
Chaque effet attaché au plein écran définit le mélange fait entre le pass et la somme précédente de rendu.&lt;br /&gt;
&lt;br /&gt;
== Démarrage de FlightGear avec Rembrandt ==&lt;br /&gt;
[[File:Rembrandt dialog.png|thumb|270px|dialogue Rembrandt]]&lt;br /&gt;
Le rendu Rembrandt est maintenant intégré dans le répertoire principal, mais doit être activé pour démarrer. Il y a deux façons de l&#039;activer (une seule est nécessaire):&lt;br /&gt;
* &amp;lt;code&amp;gt;--enable-rembrandt&amp;lt;/code&amp;gt; (lorsqu&#039;on utilise [[FGRun]], on peut ajouter ceci derrière le &amp;lt;tt&amp;gt;FG_EXECUTABLE&amp;lt;/tt&amp;gt; sur la première page). &lt;br /&gt;
* &amp;lt;code&amp;gt;--prop:/sim/rendering/rembrandt/enabled=true&amp;lt;/code&amp;gt; (avec FGRun on peut ajouter ceci via &amp;lt;tt&amp;gt;Advanced &amp;gt; Properties&amp;lt;/tt&amp;gt; sur la dernière page).&lt;br /&gt;
&lt;br /&gt;
Le &amp;lt;tt&amp;gt;View &amp;gt; Rendering Options &amp;gt; Rembrandt Options&amp;lt;/tt&amp;gt; dialogue vous permet de  basculer et d&#039;ajuster les différentes options offertes par Rembrandt.&lt;br /&gt;
&lt;br /&gt;
Rembrandt est très gourmand en ressources GPU et son démarrage peut échouer avec les options par défaut. Le symptome le plus fréquent est un message OSG dans la console :&lt;br /&gt;
&lt;br /&gt;
 RenderStage::runCameraSetUp(), FBO setup failed, FBO status= 0x8cd6&lt;br /&gt;
 Warning: RenderStage::runCameraSetUp(State&amp;amp;) Pbuffer does not support multiple color outputs.&lt;br /&gt;
&lt;br /&gt;
On peut voir aussi :&lt;br /&gt;
&lt;br /&gt;
 glLinkProgram &amp;quot;&amp;quot; FAILED&lt;br /&gt;
 Program &amp;quot;&amp;quot; infolog:&lt;br /&gt;
 Fragment info&lt;br /&gt;
 -------------&lt;br /&gt;
 0(37) : error C6013: Only arrays of texcoords may be indexed in this profile, and only with a loop index variable&lt;br /&gt;
 0(36) : error C6013: Only arrays of texcoords may be indexed in this profile, and only with a loop index variable&lt;br /&gt;
 0(35) : error C6013: Only arrays of texcoords may be indexed in this profile, and only with a loop index variable&lt;br /&gt;
 0(34) : error C6013: Only arrays of texcoords may be indexed in this profile, and only with a loop index variable&lt;br /&gt;
&lt;br /&gt;
Des options additionnelles peuvent éviter ces problèmes :&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|&amp;lt;tt&amp;gt;--prop:/sim/rendering/rembrandt/use-color-for-depth=true&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Certaines vieilles cartes NVidia comme 7600GT, n&#039;ont pas assez de résolution pour la profondeur, et on voit des &amp;quot;rideaux de brouillard&amp;quot; à quelques mètres devant. Une astuce consiste à encoder la profondeur dans une autre texture et donner la valeur correcte ensuite. Cette option permet cela.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;--prop:/sim/rendering/shadows/enabled=false&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Désactive les ombres tout à fait.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;--prop:/sim/rendering/shadows/num-cascades=1&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Évite le message &amp;quot;error C6013&amp;quot; sur les vieilles cartes en manque de résolution dans le cockpitt. Mettez &amp;lt;tt&amp;gt;/sim/rendering/shadows/cascade-far-m[0]&amp;lt;/tt&amp;gt; pour changer la taille de la carte d&#039;ombre. Plus de taille, et moins de résolution (la valeur par défaut est 5 mètres)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;--prop:/sim/rendering/shadows/map-size=&amp;lt;power-of-two&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Définnissez la taille de la carte d&#039;ombres. Les valeurs utilles sont 1024, 2048, 4096 ou 8192. Peu de cartes supportent 16384.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;--prop:/sim/rendering/shadows/num-cascades&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Définissez le nombre de cascades de la carte ombre. Moins de cascades signifie moins de temps passé à générer la carte shadow, mais aussi signifie une qualité moindre de l&#039;ombre. Mettez entre 1 et 4.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;--prop:/sim/rendering/shadows/cascade-far-m[i]&amp;lt;/tt&amp;gt;&lt;br /&gt;
(1 &amp;lt;= i &amp;lt;= &amp;lt;tt&amp;gt;/sim/rendering/shadows/num-cascades&amp;lt;/tt&amp;gt; &amp;lt;= 4)&lt;br /&gt;
|Définissez la taille de cascade de la carte shadow pour chaque cascade. Les valeurs par défaut sont 5m, 50m, 500m et 5000m pour 4 cascades.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;--prop:/sim/rendering/rembrandt/no-16bit-buffer=false&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Par défaut, Rembrandt utilise normalement des tampons de 8 bits  (ainsi, la propriété est vraiment définie par défaut). Ceci peut créer des artefacts pour les éclairages specular. Si c&#039;est inacceptable et si le GPU le supporte, mettez false pour avoir une meilleure précision pour les normales et les effets s&#039;appuyant sur une direction normale.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Lignes directrices pour les écritures shader ==&lt;br /&gt;
=== Uniformes prédéfinis ===&lt;br /&gt;
Ces uniformes glsl n&#039;ont pas besoin d&#039;être déclarés dans le fichier effet&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Nom&lt;br /&gt;
!Type&lt;br /&gt;
!Objectif&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;fg_ViewMatrix&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;mat4&amp;lt;/tt&amp;gt;&lt;br /&gt;
|En pass plein écran seulement, view matrix utilisé our transformer la position écran en direction vue&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;fg_ViewMatrixInverse&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;mat4&amp;lt;/tt&amp;gt;&lt;br /&gt;
|En pass plein écran seulement, view matrix inverse employé pour transformer la position écran en direction vue&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;fg_ProjectionMatrixInverse&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;mat4&amp;lt;/tt&amp;gt;&lt;br /&gt;
|En pass plein écran seulement, projection matri inverse employé pour transformer la position écran en direction vue&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;fg_CameraPositionCart&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;vec3&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Position de la caméra en coordonnées cartésiennes&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;fg_CameraPositionGeod&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;vec3&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Position de la caméra dans l&#039;espace, exprimé en coordonnées géodésiques (longitude et latitude en radians, élévation en mètres)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;fg_SunAmbientColor&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;vec4&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;fg_SunDiffuseColor&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;vec4&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;fg_SunSpecularColor&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;vec4&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;fg_SunDirection&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;vec3&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;fg_FogColor&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;vec4&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;fg_FogDensity&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;float&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;fg_ShadowNumber&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;int&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;fg_ShadowDistances&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;vec4&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;fg_DepthInColor&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;bool&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Dire si la profondeur est rangée dans une texture profondeur ou une texture couleur&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;fg_Planes&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;vec3&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Utilisé pour convertir la valeur du tampon profondeur en une profondeur qui peut être utilisée pour calculer la position dans l&#039;espace du fragment.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;fg_BufferSize&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;vec2&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Dimensions du tampon, utilisé pour convertir  gl_FragCoord dans la taille [0..1][0..1]&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;osg_ViewMatrix&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;mat4&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Definie par OSG, employé seulement lors du travail sur la géométrie réelle&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;osg_ViewMatrixInverse&amp;lt;/tt&amp;gt;&lt;br /&gt;
|&amp;lt;tt&amp;gt;mat4&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Definie par OSG, employé seulement lors du travail sur la géométrie réelle&lt;br /&gt;
|}&lt;br /&gt;
.Ils doivent encore être déclarés dans le fragment du vertex shader&lt;br /&gt;
&lt;br /&gt;
=== Fonctions utilitaires ===&lt;br /&gt;
&lt;br /&gt;
Pour faciliter la maintenance des shaders plusieurs fonctions utilitaires sont disponibles pour le fragment shader. Ces fonctions sont placées ensemble dans deux fichiers : &amp;lt;tt&amp;gt;gbuffer-functions.frag&amp;lt;/tt&amp;gt; et &amp;lt;tt&amp;gt;gbuffer-encode.frag&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== gbuffer-encode.frag ====&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;tt&amp;gt;void encode_gbuffer(vec3 normal, vec3 color, int mId, float specular, float shininess, float emission, float depth)&amp;lt;/tt&amp;gt;&lt;br /&gt;
:Utilisé pour encoder youtes les valeurs de  G-Buffer dans material shaders&lt;br /&gt;
&lt;br /&gt;
==== gbuffer-functions.frag ====&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;tt&amp;gt;vec2 normal_encode(vec3 n)&amp;lt;/tt&amp;gt;&lt;br /&gt;
:Employé pour compresser normals à l&#039;intérieur de G-Buffer dans material shaders. Normalement appelé de &amp;lt;tt&amp;gt;encode_gbuffer()&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;tt&amp;gt;vec3 normal_decode(vec2 enc)&amp;lt;/tt&amp;gt;&lt;br /&gt;
:Reconstruit normals à partir de G-Buffer. Employé dans shaders plein écran et shaders lumière&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;tt&amp;gt;vec3 float_to_color(in float f)&amp;lt;/tt&amp;gt;&lt;br /&gt;
:Encode les valeurs float dans la taille [0..1] dans les  24 bits d&#039;une couleur. cette fonction est employée par &amp;lt;tt&amp;gt;encode_gbuffer()&amp;lt;/tt&amp;gt; si le &amp;lt;tt&amp;gt;/sim/rendering/use-color-for_depth&amp;lt;/tt&amp;gt; est vrai, pour les vieilles cartes qui ne fournissent pas d&#039;information profondeur avec assez de résolution dans les shaders fullscreen ou lumière.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;tt&amp;gt;float color_to_float(vec3 color)&amp;lt;/tt&amp;gt;&lt;br /&gt;
:Décode les valeurs float dans la taille [0..1] dans les  24 bits d&#039;une couleur. cette fonction est employée par &amp;lt;tt&amp;gt;position()&amp;lt;/tt&amp;gt; si le &amp;lt;tt&amp;gt;/sim/rendering/use-color-for_depth&amp;lt;/tt&amp;gt; est vrai, pour les vieilles cartes qui ne fournissent pas d&#039;information profondeur avec assez de résolution dans les shaders fullscreen ou lumière.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;tt&amp;gt;vec3 position( vec3 viewDir, float depth )&amp;lt;/tt&amp;gt;&lt;br /&gt;
:Reconstruit la position eye space à partir de la direction view position a partir de la view direction et la profondeur lue du tampon profondeur &lt;br /&gt;
&lt;br /&gt;
;&amp;lt;tt&amp;gt;vec3 position( vec3 viewDir, vec3 depthColor )&amp;lt;/tt&amp;gt;&lt;br /&gt;
::Reconstruit la position eye space à partir de la direction view et la profondeur encodée dans une couleur lue du tampon profondeur&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;tt&amp;gt;vec3 position( vec3 viewDir, vec2 coords, sampler2D depth_tex )&amp;lt;/tt&amp;gt;&lt;br /&gt;
:Reconstruit la position eye space à partir de la direction vue et du tampon profondeur (profondeur réelle ou couleur selon la valeur de &amp;lt;tt&amp;gt;/sim/rendering/use-color-for_depth&amp;lt;/tt&amp;gt;) à un fragment donné sur l&#039;écran, donné par &amp;lt;tt&amp;gt;coords&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Usage ====&lt;br /&gt;
&lt;br /&gt;
Pour les shaders material, il faut fournir à la fois  &amp;lt;tt&amp;gt;gbuffer-functions.frag&amp;lt;/tt&amp;gt; et &amp;lt;tt&amp;gt;gbuffer-encode.frag&amp;lt;/tt&amp;gt; dans le fichier effet, comme suit :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;program&amp;gt;&lt;br /&gt;
		&amp;lt;vertex-shader&amp;gt;Shaders/ubershader.vert&amp;lt;/vertex-shader&amp;gt;&lt;br /&gt;
		&amp;lt;fragment-shader&amp;gt;Shaders/ubershader-gbuffer.frag&amp;lt;/fragment-shader&amp;gt;&lt;br /&gt;
		&amp;lt;fragment-shader&amp;gt;Shaders/gbuffer-functions.frag&amp;lt;/fragment-shader&amp;gt;&lt;br /&gt;
		&amp;lt;fragment-shader&amp;gt;Shaders/gbuffer-encode.frag&amp;lt;/fragment-shader&amp;gt;&lt;br /&gt;
	&amp;lt;/program&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les shaders fullscreen passes, on doit fournir seulement &amp;lt;tt&amp;gt;gbuffer-functions.frag&amp;lt;/tt&amp;gt;, comme ceci  :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;program&amp;gt;&lt;br /&gt;
		&amp;lt;vertex-shader&amp;gt;Shaders/sunlight.vert&amp;lt;/vertex-shader&amp;gt;&lt;br /&gt;
		&amp;lt;fragment-shader&amp;gt;Shaders/sunlight.frag&amp;lt;/fragment-shader&amp;gt;&lt;br /&gt;
		&amp;lt;fragment-shader&amp;gt;Shaders/gbuffer-functions.frag&amp;lt;/fragment-shader&amp;gt;&lt;br /&gt;
	&amp;lt;/program&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans la principale fonction du shader, les fonctions référencées doivent être écrites en premier. Avec no #include files, le prototype de la fonction entière nécessite d&#039;être typé :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;glsl&amp;quot;&amp;gt;&lt;br /&gt;
void encode_gbuffer(vec3 normal, vec3 color, int mId, float specular, float shininess, float emission, float depth);&lt;br /&gt;
main() {&lt;br /&gt;
    vec3 normal;&lt;br /&gt;
    vec3 color;&lt;br /&gt;
    int mId;&lt;br /&gt;
    float specular;&lt;br /&gt;
    float shininess;&lt;br /&gt;
    float emission;&lt;br /&gt;
    float depth;&lt;br /&gt;
&lt;br /&gt;
    // Do shader computations&lt;br /&gt;
&lt;br /&gt;
    encode_gbuffer(normal, color, mId, specular, shininess, emission, depth);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Phase Geometry  ===&lt;br /&gt;
La phase Geometry est là pour remplir le G-tampon.  &#039;&#039;&#039;L&#039;ombrage n&#039;intervient pas à cette phase, et le calcul lumière ou brouillard ne doit pas faire partie du shader &#039;&#039;&#039;. L&#039;opération requise dans le fragment Shader est de remplir avec une valeur sensible chaque tampon individuel :&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
|pràfondeur (gl_FragDepth)||GL_DEPTH_COMPONENT32||colspan=&amp;quot;4&amp;quot;|Fragment profondeur&lt;br /&gt;
|-&lt;br /&gt;
|gl_FragData[0]||GL_RG16||colspan=&amp;quot;2&amp;quot;|normal.x * 0.5 + 0.5||colspan=&amp;quot;2&amp;quot;|normal.y * 0.5 + 0.5&lt;br /&gt;
|-&lt;br /&gt;
|gl_FragData[1]||GL_RGBA8||diffuse.r||diffuse.g||diffuse.b||material id * 1/255.0&lt;br /&gt;
|-&lt;br /&gt;
|gl_FragData[2]||GL_RGBA8||specular.l||specular.s||emission.l||pixel valid if != 0&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Ceci est la couche par défaut attendue par le shader . material Id peut être utilisé pour détecter une couche différente&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Pass lumière additionnelle ===&lt;br /&gt;
Il y aura là un seul shader pour chaque type de lumière utilisé. L&#039;objectif est de créer des lumières comme animations dans le fichier model XML.   Le shader lumière retrouvera la scène geometry en combinant la position espace écran en vue de rayon espace par l&#039;inversion de la matrix projection (une fonction plus secourable sera fournie), et le fragment profondeur à cette  position écran lit à partir du tampon profondeur. Avec l&#039;aide du fragment normal, la couleur diffuse et specular et les propriétés de la lumière que le shader introduit, il sera possible d&#039;ajouter au tampon lumière l&#039;apport du rendu lumière.&lt;br /&gt;
&lt;br /&gt;
===Pass brouillard===&lt;br /&gt;
En utilisant le fragment profondeur, il sera possible de calculer une distribution brouillard. Pour le moment, il n&#039;y a que l&#039;équation simple brouillard.&lt;br /&gt;
&lt;br /&gt;
===Pass fleur===&lt;br /&gt;
C&#039;est un effet double pass qui rend flou le tampon lumière dans une petite texture. Cette texture est ensuite ajoutée au tampon lumière lors de la phase affichage.&lt;br /&gt;
&lt;br /&gt;
=== Effets requis ===&lt;br /&gt;
Plusieurs pass sont mis en œuvre pour l&#039;utilisation du système effet. Dans ce but , des effets sont référencés dans le code core utilisant des noms réservés. Ces effets sont:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; cellpadding=&amp;quot;3&amp;quot;&lt;br /&gt;
!Nom&lt;br /&gt;
!Type&lt;br /&gt;
!But&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;Effects/ssao&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Agit sur un quad plein écran&lt;br /&gt;
|Calcule l&#039;occlusion ambiante à partir du tampon normal et du tampon profondeur&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;Effects/ambient&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Agit sur un quad plein écran &lt;br /&gt;
|Copie le tampon couleur diffuse  multiplié par la lumière ambiante au tampon éclairage. L&#039;occlusion ambiante peut aussi affecter la lumière ambiante .&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;Effects/light-spot&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Agit sur la géométrie réeelle du volume de la lumière&lt;br /&gt;
|Calcule la contribution lumière d&#039;un point lumineux défini dans une animation &amp;lt;tt&amp;gt;light&amp;lt;/tt&amp;gt;ayant un &amp;lt;tt&amp;gt;light-type&amp;lt;/tt&amp;gt; de &#039;&#039;&#039;&amp;lt;tt&amp;gt;spot&amp;lt;/tt&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;Effects/fog&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Agit sur un quad de plein écran&lt;br /&gt;
|Calcule le brouillard à partir du C-buffer et les paramètres de l&#039;éclairage&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;Effects/display&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Agit sur un quad de plein écran&lt;br /&gt;
|Rends l&#039;image finale composite à partir du G-buffer et du buffer éclairage&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Lignes-guide pour modeleurs ==&lt;br /&gt;
&lt;br /&gt;
=== Portage d&#039;avion ===&lt;br /&gt;
* Rembrandt calcule les ombres =&amp;gt; plus de fausses ombres dans le modèle&lt;br /&gt;
* Rembrandt calcule l&#039;occlusion ambiante =&amp;gt; pas d&#039;occlusion ambiante incluse dans les textures&lt;br /&gt;
* Rembrandt est en lumière =&amp;gt; les cartes lumière static ne sont pas nécéssaires, la couleur émissive pour voir les modèles n&#039;est pas nécessaire, et pourrait interférer&lt;br /&gt;
* Rembrandt est brillant =&amp;gt; les couleurs émissives incorrectement utilisées peuvent rendre flou, et rendre du texte illisible. L&#039;intensité de la lumière devra être réglée&lt;br /&gt;
* Rembrandt a des besoins précis avec les shaders =&amp;gt; les shaders nécessitent un ajustement pour se conformer au nouveau cadre, sinon la vue sera faussée&lt;br /&gt;
* Rembrandt ne peut faire des surfaces transparentes =&amp;gt; les surfaces transparentes doivent être dûment enregistrées pour les atteindre avec le chemin classique&lt;br /&gt;
&lt;br /&gt;
=== Enregistrement de toutes les surfaces translucides ===&lt;br /&gt;
&lt;br /&gt;
Chaque modèle est par défaut rendu en utilisant l&#039;effet  &amp;lt;tt&amp;gt;Effects/model-default&amp;lt;/tt&amp;gt;. Cet effet initialise le G-buffer, en ignorant les surfaces transparentes, en mettant  alpha test et  rendu de toute la geometrie dans la poubelle. Il n&#039;est pas possible de rediriger le rendu vers les bacs transparents lorsque la texture associée a un canal alpha car la plupart des modeles emploient un atlas simple texture et même les parties opaques sont rendues avec texture avec alpha canal.&lt;br /&gt;
&lt;br /&gt;
Si un modèle nécessite des surfaces translucides ou transparentes , ces objets surface doivent être assignés à un effet différent  qui place explicitement le bac rendu à &amp;quot;DepthSortedBin&amp;quot;, ou met la suggestion rendu à &amp;quot;transparent&amp;quot;. Ceci dit au moteur de rendu de rendre cet objet opérant avant le rendu, ainsi, la clarté et le brouillard doivent être activés, et si un programme shader est utilisé, et s&#039;ils ont été calculés en manière classique. Le   &amp;lt;tt&amp;gt;Effects/model-transparent&amp;lt;/tt&amp;gt; peut être utilisé pour enregistrer simlement les surfaces transparentes/translucides. Vous attribuez cet effet à un objet (ou à de multiples objets) comme:&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;TheObject&amp;lt;/object-name&amp;gt;&lt;br /&gt;
 &amp;lt;/effect&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Attention: &amp;lt;Effect&amp;gt; agit seulement sur les objets réels, pas sur des groupes d&#039;objets ou des animations.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Si la surface opaque a besoin d&#039;un effet spécial, par exemple appliquer un &amp;quot;bump mapping&amp;quot; (effet de relief sur des textures) cet effet devra utiliser le bac  &amp;quot;RenderBin&amp;quot;, ou le rendu suggéré met à &amp;quot;opaque&amp;quot;, et le G-buffer a besoin d&#039;être initialisé correctement dans la phase Geometry.&lt;br /&gt;
&lt;br /&gt;
=== Soyez sûr que toute la Geometry distribuera l&#039;ombre ===&lt;br /&gt;
&lt;br /&gt;
Pour limiter la quantité de rendu geometry dans la carte shadow, et aussi pour réduire les artefacts (acnée shadow), seulement les faces ne regardant pas le soleil distribuent les ombres. Le test est effectué en utilisant l&#039;orientation normale. Cela veut dire que les polygones à double côté, ou mesh non fermés, seront transparents à la lumière sous certains angles de soleil. Pour éviter ça, les modeleurs peuvent:&lt;br /&gt;
*s&#039;assurer que l&#039;objet est toujours dans l&#039;ombre d&#039;autres objets,&lt;br /&gt;
*fermer leur mesh, ou&lt;br /&gt;
*doubler les polygones avec l&#039;endroit normal à l&#039;opposé&lt;br /&gt;
&lt;br /&gt;
=== Ajouts de lumière à un modèle===&lt;br /&gt;
&lt;br /&gt;
Deux points sont à considérer: l&#039;apparence de la sourceet la zone illuminée. Pour l&#039;apparence de la source lumière, (ce que vous voyez quand vous regardez le bulbe) vous avez besoin d&#039;un modèle avec un emissive material qui produira  l&#039;effet brillant et ceci est visible de nuit.&lt;br /&gt;
&lt;br /&gt;
Pour l&#039;effet de la source dans son environnement (l&#039;aire lumineuse), nous devons avoir dans le modèle 3D (le fichier .ac) un volume qui inclut l&#039;effet (Volume Lumière). Cela peut être un grand cône pour les aires lumineuses ou une spère pour une lumière ponctuelle. Il est important que le volume lumière soit fermé, convexe et les normals orientés vers l&#039;extérieur.&lt;br /&gt;
&lt;br /&gt;
Le volume lumière doit être partie de la geometry du modèle et être référencé dans le fichier animation. Pas besoin d&#039;ajouter une couleur ou un effet à ce volume. Le calcul lumière est seulement fait sur les fragments couverts par le volume lumière, mais n&#039;a aucune influence sur la couleur ou l&#039;atténuation de la lumière .&lt;br /&gt;
&lt;br /&gt;
Toutes les animations disponibles sont possibles sur le volume lumière sauf &#039;&#039;&#039;material&#039;&#039;&#039; et &#039;&#039;&#039;texture&#039;&#039;&#039;. Il n&#039;est pas possible de changer couleur et lumières, pour le moment; sauf en se branchant sur une autre animation. L&#039;axe et la position sont dans l&#039;espace objet et sont transformés par les animations qui suivent.&lt;br /&gt;
&lt;br /&gt;
==== Taches lumineuses ====&lt;br /&gt;
{|cellpadding=10|&lt;br /&gt;
|valign=top|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;animation&amp;gt;&lt;br /&gt;
   &amp;lt;type&amp;gt;light&amp;lt;/type&amp;gt;&lt;br /&gt;
   &amp;lt;light-type&amp;gt;spot&amp;lt;/light-type&amp;gt;&lt;br /&gt;
   &amp;lt;name&amp;gt;LightSrcRight&amp;lt;/name&amp;gt;&lt;br /&gt;
   &amp;lt;object-name&amp;gt;LightRight&amp;lt;/object-name&amp;gt;&lt;br /&gt;
   &amp;lt;nopreview/&amp;gt;&lt;br /&gt;
   &amp;lt;position&amp;gt;&lt;br /&gt;
     &amp;lt;x&amp;gt;0.169&amp;lt;/x&amp;gt;&lt;br /&gt;
     &amp;lt;y&amp;gt;0.570&amp;lt;/y&amp;gt;&lt;br /&gt;
     &amp;lt;z&amp;gt;0.713&amp;lt;/z&amp;gt;&lt;br /&gt;
   &amp;lt;/position&amp;gt;&lt;br /&gt;
   &amp;lt;direction&amp;gt;&lt;br /&gt;
     &amp;lt;x&amp;gt;-0.9988&amp;lt;/x&amp;gt;&lt;br /&gt;
     &amp;lt;y&amp;gt;0.0349&amp;lt;/y&amp;gt;&lt;br /&gt;
     &amp;lt;z&amp;gt;-0.0349&amp;lt;/z&amp;gt;&lt;br /&gt;
   &amp;lt;/direction&amp;gt;&lt;br /&gt;
   &amp;lt;ambient&amp;gt;&lt;br /&gt;
     &amp;lt;r&amp;gt;0.03&amp;lt;/r&amp;gt;&lt;br /&gt;
     &amp;lt;g&amp;gt;0.03&amp;lt;/g&amp;gt;&lt;br /&gt;
     &amp;lt;b&amp;gt;0.03&amp;lt;/b&amp;gt;&lt;br /&gt;
     &amp;lt;a&amp;gt;1.0&amp;lt;/a&amp;gt;&lt;br /&gt;
   &amp;lt;/ambient&amp;gt;&lt;br /&gt;
   &amp;lt;diffuse&amp;gt;&lt;br /&gt;
     &amp;lt;r&amp;gt;0.7&amp;lt;/r&amp;gt;&lt;br /&gt;
     &amp;lt;g&amp;gt;0.7&amp;lt;/g&amp;gt;&lt;br /&gt;
     &amp;lt;b&amp;gt;0.6&amp;lt;/b&amp;gt;&lt;br /&gt;
     &amp;lt;a&amp;gt;1.0&amp;lt;/a&amp;gt;&lt;br /&gt;
   &amp;lt;/diffuse&amp;gt;&lt;br /&gt;
   &amp;lt;specular&amp;gt;&lt;br /&gt;
     &amp;lt;r&amp;gt;0.7&amp;lt;/r&amp;gt;&lt;br /&gt;
     &amp;lt;g&amp;gt;0.7&amp;lt;/g&amp;gt;&lt;br /&gt;
     &amp;lt;b&amp;gt;0.7&amp;lt;/b&amp;gt;&lt;br /&gt;
     &amp;lt;a&amp;gt;1.0&amp;lt;/a&amp;gt;&lt;br /&gt;
   &amp;lt;/specular&amp;gt;&lt;br /&gt;
   &amp;lt;dim-factor&amp;gt;&lt;br /&gt;
      &amp;lt;property&amp;gt;dimming/property&amp;lt;/property&amp;gt;&lt;br /&gt;
      &amp;lt;!-- optional begin --&amp;gt;&lt;br /&gt;
      &amp;lt;expression /&amp;gt;&lt;br /&gt;
      &amp;lt;interpolation /&amp;gt;&lt;br /&gt;
      &amp;lt;factor&amp;gt;1&amp;lt;/factor&amp;gt;&lt;br /&gt;
      &amp;lt;offset&amp;gt;0&amp;lt;/offset&amp;gt;&lt;br /&gt;
      &amp;lt;min&amp;gt;0&amp;lt;/min&amp;gt;&lt;br /&gt;
      &amp;lt;max&amp;gt;1&amp;lt;/max&amp;gt;&lt;br /&gt;
      &amp;lt;!-- optional end --&amp;gt;&lt;br /&gt;
   &amp;lt;/dim-factor&amp;gt;&lt;br /&gt;
   &amp;lt;attenuation&amp;gt;&lt;br /&gt;
     &amp;lt;c&amp;gt;1.0&amp;lt;/c&amp;gt;&lt;br /&gt;
     &amp;lt;l&amp;gt;0.002&amp;lt;/l&amp;gt;&lt;br /&gt;
     &amp;lt;q&amp;gt;0.00005&amp;lt;/q&amp;gt;&lt;br /&gt;
   &amp;lt;/attenuation&amp;gt;&lt;br /&gt;
   &amp;lt;exponent&amp;gt;30.0&amp;lt;/exponent&amp;gt;&lt;br /&gt;
   &amp;lt;cutoff&amp;gt;39&amp;lt;/cutoff&amp;gt;&lt;br /&gt;
   &amp;lt;near-m&amp;gt;3.5&amp;lt;/near-m&amp;gt;&lt;br /&gt;
   &amp;lt;far-m&amp;gt;39&amp;lt;/far-m&amp;gt;&lt;br /&gt;
 &amp;lt;/animation&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|valign=top|&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; cellpadding=&amp;quot;3&amp;quot;&lt;br /&gt;
!Nom&lt;br /&gt;
!Objectif&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;type&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Installe l&#039;animation &amp;lt;tt&amp;gt;&#039;&#039;&#039;light&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;light-type&amp;lt;/tt&amp;gt;&lt;br /&gt;
|C&#039;est une lumière &amp;lt;tt&amp;gt;&#039;&#039;&#039;spot&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Nom donné à cette animation&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;object-name&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Nom du volume lumière dans le modèle 3D (typiquement un cône avec un sommet à &amp;lt;tt&amp;gt;position&amp;lt;/tt&amp;gt;, le long de l&#039;axe &amp;lt;tt&amp;gt;direction&amp;lt;/tt&amp;gt; si &amp;lt;tt&amp;gt;cutoff&amp;lt;/tt&amp;gt; est inférieur à 90 degrés, ou une sphère centrée à  &amp;lt;tt&amp;gt;position&amp;lt;/tt&amp;gt; si &amp;lt;tt&amp;gt;cutoff&amp;lt;/tt&amp;gt; est supérieur à 90 degrés )&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;nopreview&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Cache le volume lumière dans  fgrun 3d preview&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;position&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Dans espace objet, position de la lumière&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;direction&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Dans espace objet, direction vers le centre de la tache&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;ambient&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Couleur ambiante de la lumière&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;diffuse&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Couleur diffuse de la lumière&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;specular&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Couleur specular de la lumière&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;dim-factor&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Groupe de paramètres pour contrôler un facteur appliqué en même temps à  ambient, diffuse et specular &lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;attenuation&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Trois element vector. &amp;lt;c&amp;gt; element est le facteur constant, &amp;lt;l&amp;gt; element est le facteur linéaire et &amp;lt;q&amp;gt; element est le facteur quadratique.&amp;lt;br /&amp;gt;&lt;br /&gt;
Attenuation de couleur à distance d est [[File:Spotlight_attenuation.png]]&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;exponent&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Attenuation is multiplié par &amp;lt;tt&amp;gt;pow( dot( lightDir, &amp;lt;direction&amp;gt; ), &amp;lt;exponent&amp;gt; )&amp;lt;/tt&amp;gt;, lightDir étant vector from light position to point, in camera space.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;cutoff&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Point is lit by this source if &amp;lt;tt&amp;gt;dot( lightDir, &amp;lt;direction&amp;gt; ) &amp;gt; &amp;lt;cutoff&amp;gt;&amp;lt;/tt&amp;gt; , lightDir being vecteur à partir de la position lumière vers le point, dans l&#039;espace caméra.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;near-m&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Distance minimum d&#039;influence, à partir de la position, en mètres&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;far-m&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Distance maximum d&#039;influence, à partir de la position, en mètres&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Points lumineux ====&lt;br /&gt;
{|cellpadding=10|&lt;br /&gt;
|valign=top|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;animation&amp;gt;&lt;br /&gt;
   &amp;lt;type&amp;gt;light&amp;lt;/type&amp;gt;&lt;br /&gt;
   &amp;lt;light-type&amp;gt;point&amp;lt;/light-type&amp;gt;&lt;br /&gt;
   &amp;lt;name&amp;gt;LightSrcRight&amp;lt;/name&amp;gt;&lt;br /&gt;
   &amp;lt;object-name&amp;gt;LightRight&amp;lt;/object-name&amp;gt;&lt;br /&gt;
   &amp;lt;nopreview/&amp;gt;&lt;br /&gt;
   &amp;lt;position&amp;gt;&lt;br /&gt;
     &amp;lt;x&amp;gt;0.169&amp;lt;/x&amp;gt;&lt;br /&gt;
     &amp;lt;y&amp;gt;0.570&amp;lt;/y&amp;gt;&lt;br /&gt;
     &amp;lt;z&amp;gt;0.713&amp;lt;/z&amp;gt;&lt;br /&gt;
   &amp;lt;/position&amp;gt;&lt;br /&gt;
   &amp;lt;ambient&amp;gt;&lt;br /&gt;
     &amp;lt;r&amp;gt;0.03&amp;lt;/r&amp;gt;&lt;br /&gt;
     &amp;lt;g&amp;gt;0.03&amp;lt;/g&amp;gt;&lt;br /&gt;
     &amp;lt;b&amp;gt;0.03&amp;lt;/b&amp;gt;&lt;br /&gt;
     &amp;lt;a&amp;gt;1.0&amp;lt;/a&amp;gt;&lt;br /&gt;
   &amp;lt;/ambient&amp;gt;&lt;br /&gt;
   &amp;lt;diffuse&amp;gt;&lt;br /&gt;
     &amp;lt;r&amp;gt;0.7&amp;lt;/r&amp;gt;&lt;br /&gt;
     &amp;lt;g&amp;gt;0.7&amp;lt;/g&amp;gt;&lt;br /&gt;
     &amp;lt;b&amp;gt;0.6&amp;lt;/b&amp;gt;&lt;br /&gt;
     &amp;lt;a&amp;gt;1.0&amp;lt;/a&amp;gt;&lt;br /&gt;
   &amp;lt;/diffuse&amp;gt;&lt;br /&gt;
   &amp;lt;specular&amp;gt;&lt;br /&gt;
     &amp;lt;r&amp;gt;0.7&amp;lt;/r&amp;gt;&lt;br /&gt;
     &amp;lt;g&amp;gt;0.7&amp;lt;/g&amp;gt;&lt;br /&gt;
     &amp;lt;b&amp;gt;0.7&amp;lt;/b&amp;gt;&lt;br /&gt;
     &amp;lt;a&amp;gt;1.0&amp;lt;/a&amp;gt;&lt;br /&gt;
   &amp;lt;/specular&amp;gt;&lt;br /&gt;
   &amp;lt;dim-factor&amp;gt;&lt;br /&gt;
      &amp;lt;property&amp;gt;dimming/property&amp;lt;/property&amp;gt;&lt;br /&gt;
      &amp;lt;!-- optional begin --&amp;gt;&lt;br /&gt;
      &amp;lt;expression /&amp;gt;&lt;br /&gt;
      &amp;lt;interpolation /&amp;gt;&lt;br /&gt;
      &amp;lt;factor&amp;gt;1&amp;lt;/factor&amp;gt;&lt;br /&gt;
      &amp;lt;offset&amp;gt;0&amp;lt;/offset&amp;gt;&lt;br /&gt;
      &amp;lt;min&amp;gt;0&amp;lt;/min&amp;gt;&lt;br /&gt;
      &amp;lt;max&amp;gt;1&amp;lt;/max&amp;gt;&lt;br /&gt;
      &amp;lt;!-- optional end --&amp;gt;&lt;br /&gt;
   &amp;lt;/dim-factor&amp;gt;&lt;br /&gt;
   &amp;lt;attenuation&amp;gt;&lt;br /&gt;
     &amp;lt;c&amp;gt;1.0&amp;lt;/c&amp;gt;&lt;br /&gt;
     &amp;lt;l&amp;gt;0.002&amp;lt;/l&amp;gt;&lt;br /&gt;
     &amp;lt;q&amp;gt;0.00005&amp;lt;/q&amp;gt;&lt;br /&gt;
   &amp;lt;/attenuation&amp;gt;&lt;br /&gt;
   &amp;lt;near-m&amp;gt;3.5&amp;lt;/near-m&amp;gt;&lt;br /&gt;
   &amp;lt;far-m&amp;gt;39&amp;lt;/far-m&amp;gt;&lt;br /&gt;
 &amp;lt;/animation&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|valign=top|&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; cellpadding=&amp;quot;3&amp;quot;&lt;br /&gt;
!Nom&lt;br /&gt;
!Objectif&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;type&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Installe l&#039;animation &amp;lt;tt&amp;gt;&#039;&#039;&#039;light&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;light-type&amp;lt;/tt&amp;gt;&lt;br /&gt;
|C&#039;est une lumière &amp;lt;tt&amp;gt;&#039;&#039;&#039;point&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Nom donné à cette animation&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;object-name&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Nom du volume lumière  dans le modèle 3D ( typiquement une sphère centrée sur &amp;lt;tt&amp;gt;position&amp;lt;/tt&amp;gt;, avec un rayon de &amp;lt;tt&amp;gt;far-m&amp;lt;/tt&amp;gt;)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;nopreview&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Volume lumière cachée dans fgrun 3d preview&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;position&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Dans espace object , position de la lumière&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;ambient&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Couleur ambiante de la lumière &lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;diffuse&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Couleur diffuse de la lumière&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;specular&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Couleur specular de la lumièret&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;dim-factor&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Groupe de paramètres pour contrôler un facteur appliqué à   ambient, diffuse et specular en même temps&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;attenuation&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Trois element vector. &amp;lt;c&amp;gt; element est le facteur constant &amp;lt;l&amp;gt; element est le facteur linéaire et &amp;lt;q&amp;gt; element est le facteur quadratiquer.&amp;lt;br /&amp;gt;&lt;br /&gt;
Attenuation de couleur à distance d est [[File:Spotlight_attenuation.png]]&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;near-m&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Distance minimum d&#039;influence, à partir de la position, en mètres&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;tt&amp;gt;far-m&amp;lt;/tt&amp;gt;&lt;br /&gt;
|Distance maximum d&#039;influence, à partir de la position, en mètres&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Considérations de performance et de compatibilité ====&lt;br /&gt;
Chaque lumière sur écran équivaut, pour le GPU à redessiner le volume lumière avec un shader, sans recueillir de buffer. Ainsi, chaque lumière vient avec un coût, ce qui est minime individuellement parlant, mais non négligeable quand jl y en a beaucoup. Ce coût augmente  avec la taille du volume lumière&lt;br /&gt;
&lt;br /&gt;
De plus, il est raisonnable de permettre à un modèle de fonctionner avec le moteur de rendu classique qui ne sait rien des lumières et rendrait les volumes lumière comme une autre géométrie. Ainsi, c&#039;est une bonne pratique de compléter chaque animation lumière par une animation sélective vérifiant :&lt;br /&gt;
*si Rembrandt est activé&lt;br /&gt;
*si le mode de qualité choisi correspond avec les possibilités de la lumière&lt;br /&gt;
*si la lumi§re doit être on ou off selon les autres paramètres de la simulation (position du soleil; position de du commutateur, présence de puissance...)&lt;br /&gt;
&lt;br /&gt;
Une bonne propriété est de crèer  un reflet des préférences de l&#039;utilisateur sur  qualité vs performance concernant les lumières, et un curseur dédié est ajouté dans le dialogue shader.&lt;br /&gt;
[[File:Fgfs-shaders-with-light.jpg|thumb|Light quality slider]]&lt;br /&gt;
La propriété à utiliser est:&lt;br /&gt;
 /sim/rendering/shaders/lights&lt;br /&gt;
Le curseur qualité va de 0 (pas de lumière) à 4 (pleine lumière). Un simple réverbère d&#039;aéroport apparaît à 1. Quelques lampes de pont à 2. Toutes les lampes de pont simples à 3, et les plus sophistiquées à 4&lt;br /&gt;
&lt;br /&gt;
Exemple:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;animation&amp;gt;&lt;br /&gt;
   &amp;lt;type&amp;gt;light&amp;lt;/type&amp;gt;&lt;br /&gt;
   &amp;lt;light-type&amp;gt;spot&amp;lt;/light-type&amp;gt;&lt;br /&gt;
   &amp;lt;name&amp;gt;LightSource&amp;lt;/name&amp;gt;&lt;br /&gt;
   &amp;lt;object-name&amp;gt;LightVolume&amp;lt;/object-name&amp;gt;&lt;br /&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;select&amp;lt;/type&amp;gt;&lt;br /&gt;
   &amp;lt;!-- Select the named animation --&amp;gt;&lt;br /&gt;
   &amp;lt;object-name&amp;gt;LightSource&amp;lt;/object-name&amp;gt;&lt;br /&gt;
   &amp;lt;condition&amp;gt;&lt;br /&gt;
      &amp;lt;and&amp;gt;&lt;br /&gt;
         &amp;lt;!-- Rembrandt enabled ? --&amp;gt;&lt;br /&gt;
         &amp;lt;property&amp;gt;/sim/rendering/rembrandt/enabled&amp;lt;/property&amp;gt;&lt;br /&gt;
         &amp;lt;!-- Quality ok ? --&amp;gt;&lt;br /&gt;
         &amp;lt;greater-than&amp;gt;&lt;br /&gt;
            &amp;lt;property&amp;gt;/sim/rendering/shaders/lights&amp;lt;/property&amp;gt;&lt;br /&gt;
            &amp;lt;value&amp;gt;3.0&amp;lt;/value&amp;gt;&lt;br /&gt;
         &amp;lt;/greater-than&amp;gt;&lt;br /&gt;
         &amp;lt;!-- Simulation conditions ? --&amp;gt;&lt;br /&gt;
         &amp;lt;greater-than&amp;gt;&lt;br /&gt;
            &amp;lt;property&amp;gt;/sim/time/sun-angle-rad&amp;lt;/property&amp;gt;&lt;br /&gt;
            &amp;lt;value&amp;gt;1.57&amp;lt;/value&amp;gt;&lt;br /&gt;
         &amp;lt;/greater-than&amp;gt;&lt;br /&gt;
      &amp;lt;/and&amp;gt;&lt;br /&gt;
   &amp;lt;/condition&amp;gt;&lt;br /&gt;
&amp;lt;/animation&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Tutoriels ===&lt;br /&gt;
[[User:F-JJTH|F-JJTH]] a compilé son expérience et celle de l&#039;équipe de la PAF d&#039;amélioration d&#039;avions dans {{fr}} [http://equipe-flightgear.forumactif.com/t1034-howto-adapter-un-appareil-pour-rembrandt this tutorial].&lt;br /&gt;
&lt;br /&gt;
== TODO Liste ==&lt;br /&gt;
&lt;br /&gt;
=== Tâches à compléter ===&lt;br /&gt;
*Fixer le rendu shadow quand on emploie plusieurs liens en  OSG&lt;br /&gt;
*Implementer Cascaded Shadow Map (a besoin d&#039;être optimisée - frustum calculation et nuit)&lt;br /&gt;
*Voir ce qui arrive avec brillance dans le brouillard: une sorte de terrain inconnu crée des patches blancs  dans le buffer emission-problème de génération de scène &lt;br /&gt;
*Test multi-écran (mostly done)&lt;br /&gt;
*Restorer splashscreen&lt;br /&gt;
*Dessiner des objets transparents avec rendu en premier (peut nécessiter la capture du bac transparence à partir de la phase géométrie et le placer dans la phase affichage)  (OK - nécessite une contribution modèle)&lt;br /&gt;
*Trouver une solution pour couleur ambient et emissive de material (peut nécessiter un buffer additionnel)&lt;br /&gt;
*Fournir un shader pour objets transparents qui puisse rendre le buffer emissive infaisable (en utilisant MRT) La phase lumière ne peut utiliser MRT &lt;br /&gt;
*Utiliser un buffer stencil pour limiter la taille lumière (non fait dans shader lumière)&lt;br /&gt;
**nécessaire pour la lumière de cockpit pour réaliser des faux shadowws et éviter d&#039;éclairer le runway de la cabine&lt;br /&gt;
*Utiliser un système effet à la place des shaders lourdement codés&lt;br /&gt;
*Intensités globales de brillance, ou occlusion ambiante via curseur dans le dialogue rendu &lt;br /&gt;
&lt;br /&gt;
=== Tâches à court terme ===&lt;br /&gt;
*Convertir les shaders existants en rendu différé&lt;br /&gt;
*Éviter de redessiner les objets opaques dans la phase lumière. Améliorer le masque node OSG .&lt;br /&gt;
*S&#039;occuper des particules et précipitations&lt;br /&gt;
*Fixer le brouillard sur les nuages &lt;br /&gt;
*Fixer les matrices shadow dans multi-screen&lt;br /&gt;
*IMettre en œuvre un lightfield shader&lt;br /&gt;
&lt;br /&gt;
=== Idées à long terme (non classées) ===&lt;br /&gt;
*implement strength of glow (in the emissive buffer alpha channel)&lt;br /&gt;
**provide levels 0 to 5 - we are currently at level 5&lt;br /&gt;
**level 0 should be ok for MFDs that are currenly unreadable because blurred&lt;br /&gt;
*Modify shadows to allow multiple casters (limited list)&lt;br /&gt;
**Implement a priority list of light sources, based on priority and distance from the viewer&lt;br /&gt;
*Restore depth partitioning using depth ranges&lt;br /&gt;
*Restore stereo and other options currently available in CameraGroup&lt;br /&gt;
*Implement quality vs performance user control&lt;br /&gt;
&lt;br /&gt;
== Gallerie ==&lt;br /&gt;
{{#ev:youtube|PXHhtQb5yzc}} {{#ev:youtube|peEzEapavkg}} {{#ev:youtube|RIetPh8iJXk}} {{#ev:youtube|oaNFrxgQY1c}} {{#ev:youtube|8xGzy12hlis}} {{#ev:youtube|ZyuHBlm3xXU}} {{#ev:youtube|RgH9GZRukOI}} {{#ev:youtube|UQvbHnBkpaM}} {{#ev:youtube|v02phoOqWHE}}{{#ev:youtube|dlSo4sBa7Nk}}&lt;br /&gt;
&lt;br /&gt;
== Appendice ==&lt;br /&gt;
{{Appendix|all|&lt;br /&gt;
* {{cite web |url=http://http.download.nvidia.com/developer/presentations/2004/6800_Leagues/6800_Leagues_Deferred_Shading.pdf |title=Deferred Shading |author=Shawn Hargreaves and Mark Harris }}&lt;br /&gt;
* {{cite web |url=http://bat710.univ-lyon1.fr/~jciehl/Public/educ/GAMA/2007/Deferred_Shading_Tutorial_SBGAMES2005.pdf |title=Deferred Shading Tutorial |author=Fabio Policarpo and Francisco Fonseca }}&lt;br /&gt;
* {{cite web |url=http://www.guerrilla-games.com/publications/dr_kz2_rsx_dev07.pdf |title=Deferred Rendering in Killzone 2 |author=Michal Valient |month=July |year=2007 }}&lt;br /&gt;
* {{cite web |url=http://www.anandtech.com/show/5011/nvidiaea-posts-battlefield-3-graphics-tech-talk |title=Battlefield 3 Graphics Tech Talk |author=Johan Andersson |month=October |year=2011 }}&lt;br /&gt;
* {{cite web |url=http://www.disney.co.uk/cms_res/blackrockstudio/pdf/Rendering_Techniques_in_SplitSecond.pdf |title=Rendering Techniques in Split/Second |author=Jeremy Moore and David Jefferies |year=2009 }}&lt;br /&gt;
* {{cite web |url=http://www.crytek.com/sites/default/files/A_bit_more_deferred_-_CryEngine3.ppt |title=&amp;quot;A bit more Deferred&amp;quot; - CryEngine 3 (PPT) |author=Martin Mittring }}&lt;br /&gt;
* {{cite web |url=http://http.developer.nvidia.com/GPUGems2/gpugems2_chapter09.html |title=Deferred Shading in S.T.A.L.K.E.R. |author=Oles Shishkovtsov }}&lt;br /&gt;
* {{cite web |url=http://http.developer.nvidia.com/GPUGems3/gpugems3_ch19.html |title=Deferred Shading in Tabula Rasa |author=Rusty Koonce }}&lt;br /&gt;
* {{cite web |url=http://aras-p.info/texts/CompactNormalStorage.html |title=Compact Normal Storage for small g-buffers |author=Aras Pranckevičius |date=4 August 2009 |accessdate=12 April 2012 }}&lt;br /&gt;
* {{cite web |url=http://the-witness.net/news/2010/03/graphics-tech-shadow-maps-part-1/ |title=Graphics Tech: Shadow Maps (part 1) |author=Jonathan Blow |date=3 March 2010 |accessdate=13 April 2012 }}&lt;br /&gt;
* {{cite web |url=http://directtovideo.wordpress.com/2009/11/13/deferred-rendering-in-frameranger/ |title=deferred rendering in frameranger. |author=Matt Swoboda |date=13 November 2009 |accessdate=8 July 2012 }}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Shader development]]&lt;br /&gt;
[[Category:Core development projects]]&lt;br /&gt;
[[en:Project Rembrandt]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/Shadows&amp;diff=143903</id>
		<title>Fr/Shadows</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/Shadows&amp;diff=143903"/>
		<updated>2026-04-05T15:19:57Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Link updates to Fr versions&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Les &#039;&#039;&#039;ombres&#039;&#039;&#039; étaient disponibles depuis  [[FlightGear 1.0]]. Cette fonctionnalité a été abandonnée avec la version [[FlightGear 1.9.0|1.9.0 de FlightGear]], basée sur [[OSG]]. Cependant, le passage à OSG a ouvert la voie à une réimplémentation des ombres et de nombreuses autres nouvelles fonctionnalités graphiques dans les futures versions de FlightGear (comme cela a été le cas avec les [[Fr/Nuages 3D|nuages en 3D]]).&lt;br /&gt;
&lt;br /&gt;
À un moment donné, les ombres des objets de décor ont été réintroduites, probablement lorsque des objets de décor tels que la végétation et les bâtiments aléatoires ont commencé à être rendus sous forme d&#039;instances plutôt que d&#039;objets distincts.&lt;br /&gt;
&lt;br /&gt;
Avec FlightGear 2024.1 ([https://www.flightgear.org/download/releases/2024-1/ voir le journal des modifications]), les ombres des avions ont été réintroduites.&lt;br /&gt;
&lt;br /&gt;
== Empreinte de l&#039;ombre ==&lt;br /&gt;
L&#039;empreinte de l&#039;ombre est une technique qui utilise une texture dans laquelle la distance des objets par rapport à la source lumineuse a été calculée. Lors du rendu, la distance entre le fragment rendu et la source lumineuse est comparée à la distance la plus courte entre le décor et la source lumineuse ; si elle est supérieure, le fragment est dessiné en utilisant uniquement la lumière ambiante. Dans le cas contraire, il est entièrement éclairé.&lt;br /&gt;
&lt;br /&gt;
Le [[Fr/Projet Rembrandt|projet Rembrandt]] était un nouveau projet visant à implémenter le traitement des ombres pour FlightGear.&lt;br /&gt;
&lt;br /&gt;
Un autre projet qui a permis aux développeurs d&#039;avions d&#039;implémenter les ombres des avions était le projet [[ALS technical notes#ALS fuselage shadow effect|Atmospheric Light Scattering (ALS)]].&lt;br /&gt;
&lt;br /&gt;
== À ce sujet ==&lt;br /&gt;
* [[Howto: Add smooth (&amp;quot;Ambient Occlusion&amp;quot;) shadows in Blender]]&lt;br /&gt;
&lt;br /&gt;
[[Category:FlightGear feature]]&lt;br /&gt;
[[en:Shadows]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/Shadows&amp;diff=143902</id>
		<title>Fr/Shadows</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/Shadows&amp;diff=143902"/>
		<updated>2026-04-05T15:11:58Z</updated>

		<summary type="html">&lt;p&gt;Adaz: FR translation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Les &#039;&#039;&#039;ombres&#039;&#039;&#039; étaient disponibles depuis  [[FlightGear 1.0]]. Cette fonctionnalité a été abandonnée avec la version [[FlightGear 1.9.0|1.9.0 de FlightGear]], basée sur [[OSG]]. Cependant, le passage à OSG a ouvert la voie à une réimplémentation des ombres et de nombreuses autres nouvelles fonctionnalités graphiques dans les futures versions de FlightGear (comme cela a été le cas avec les [[3D clouds|nuages en 3D]]).&lt;br /&gt;
&lt;br /&gt;
À un moment donné, les ombres des objets de décor ont été réintroduites, probablement lorsque des objets de décor tels que la végétation et les bâtiments aléatoires ont commencé à être rendus sous forme d&#039;instances plutôt que d&#039;objets distincts.&lt;br /&gt;
&lt;br /&gt;
Avec FlightGear 2024.1 ([https://www.flightgear.org/download/releases/2024-1/ voir le journal des modifications]), les ombres des avions ont été réintroduites.&lt;br /&gt;
&lt;br /&gt;
== Empreinte de l&#039;ombre ==&lt;br /&gt;
L&#039;empreinte de l&#039;ombre est une technique qui utilise une texture dans laquelle la distance des objets par rapport à la source lumineuse a été enregistrée. Lors du rendu, la distance entre le fragment rendu et la source lumineuse est comparée à la distance la plus courte entre le décor et la source lumineuse ; si elle est supérieure, le fragment est dessiné en utilisant uniquement la lumière ambiante. Dans le cas contraire, il est entièrement éclairé.&lt;br /&gt;
&lt;br /&gt;
Le [[Project Rembrandt|projet Rembrandt]] était un nouveau projet visant à implémenter le traitement des ombres pour FlightGear.&lt;br /&gt;
&lt;br /&gt;
Un autre projet qui a permis aux développeurs d&#039;avions d&#039;implémenter les ombres des avions était le projet [[ALS technical notes#ALS fuselage shadow effect|Atmospheric Light Scattering (ALS)]].&lt;br /&gt;
&lt;br /&gt;
== À ce sujet ==&lt;br /&gt;
* [[Howto: Add smooth (&amp;quot;Ambient Occlusion&amp;quot;) shadows in Blender]]&lt;br /&gt;
&lt;br /&gt;
[[Category:FlightGear feature]]&lt;br /&gt;
[[en:Shadows]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/Shadows&amp;diff=143901</id>
		<title>Fr/Shadows</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/Shadows&amp;diff=143901"/>
		<updated>2026-04-05T14:56:23Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Creation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Shadows&#039;&#039;&#039; were available until [[FlightGear 1.0]]. The feature became deprecated with the [[OSG]] based [[FlightGear 1.9.0]]. However, the shift to OSG opened up the possibility for re-implementing shadows and many other new graphical features in future FlightGear versions (such as happened with [[3D Clouds]]).&lt;br /&gt;
&lt;br /&gt;
At some point scenery object shadows was reintroduced, probably when scenery objects like for example vegetation and random buildings became rendered instantiated rather then as separate objects.&lt;br /&gt;
&lt;br /&gt;
With FlightGear 2024.1 ([https://www.flightgear.org/download/releases/2024-1/ link to changelog]) aircraft shadows was reintroduced.&lt;br /&gt;
&lt;br /&gt;
== Shadow mapping ==&lt;br /&gt;
Shadow mapping is a technique that use a texture where distance of objects from the light has been recorded. During rendering, the distance to the light of the fragment rendered is compared to the shortest distance of the scene to the light, and if it is higher, the fragment is drawn using only ambient light. Otherwise, it is fully lit.&lt;br /&gt;
&lt;br /&gt;
[[Project Rembrandt]] was a new project that implemented shadow mapping for FlightGear.&lt;br /&gt;
&lt;br /&gt;
Another project which allowed aircraft developers to implement aircraft shadows was the [[ALS technical notes#ALS fuselage shadow effect|Atmospheric Light Scattering (ALS)]] project.&lt;br /&gt;
&lt;br /&gt;
== Related ==&lt;br /&gt;
* [[Howto: Add smooth (&amp;quot;Ambient Occlusion&amp;quot;) shadows in Blender]]&lt;br /&gt;
&lt;br /&gt;
[[Category:FlightGear feature]]&lt;br /&gt;
[[en:Shadows]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Shadows&amp;diff=143900</id>
		<title>Shadows</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Shadows&amp;diff=143900"/>
		<updated>2026-04-05T14:55:19Z</updated>

		<summary type="html">&lt;p&gt;Adaz: add link to FR translation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Shadows&#039;&#039;&#039; were available until [[FlightGear 1.0]]. The feature became deprecated with the [[OSG]] based [[FlightGear 1.9.0]]. However, the shift to OSG opened up the possibility for re-implementing shadows and many other new graphical features in future FlightGear versions (such as happened with [[3D Clouds]]).&lt;br /&gt;
&lt;br /&gt;
At some point scenery object shadows was reintroduced, probably when scenery objects like for example vegetation and random buildings became rendered instantiated rather then as separate objects.&lt;br /&gt;
&lt;br /&gt;
With FlightGear 2024.1 ([https://www.flightgear.org/download/releases/2024-1/ link to changelog]) aircraft shadows was reintroduced.&lt;br /&gt;
&lt;br /&gt;
== Shadow mapping ==&lt;br /&gt;
Shadow mapping is a technique that use a texture where distance of objects from the light has been recorded. During rendering, the distance to the light of the fragment rendered is compared to the shortest distance of the scene to the light, and if it is higher, the fragment is drawn using only ambient light. Otherwise, it is fully lit.&lt;br /&gt;
&lt;br /&gt;
[[Project Rembrandt]] was a new project that implemented shadow mapping for FlightGear.&lt;br /&gt;
&lt;br /&gt;
Another project which allowed aircraft developers to implement aircraft shadows was the [[ALS technical notes#ALS fuselage shadow effect|Atmospheric Light Scattering (ALS)]] project.&lt;br /&gt;
&lt;br /&gt;
== Related ==&lt;br /&gt;
* [[Howto: Add smooth (&amp;quot;Ambient Occlusion&amp;quot;) shadows in Blender]]&lt;br /&gt;
&lt;br /&gt;
[[Category:FlightGear feature]]&lt;br /&gt;
[[fr:Shadows]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/FlightGear_Newsletter_February_2026&amp;diff=143896</id>
		<title>Fr/FlightGear Newsletter February 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/FlightGear_Newsletter_February_2026&amp;diff=143896"/>
		<updated>2026-04-04T16:09:29Z</updated>

		<summary type="html">&lt;p&gt;Adaz: FR final version&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{User:Skybike/Template:Newsletter-header-translate|2026-02}}&lt;br /&gt;
{{TOC_right|limit=2}}&lt;br /&gt;
&#039;&#039;Nous tenons à souligner que le bulletin mensuel ne peut exister sans les contributions des utilisateurs et développeurs de FlightGear. Toute personne disposant d&#039;un compte wiki (inscription gratuite) est invitée à contribuer au bulletin. Si vous êtes au courant de toute actualité ou projet lié à FlightGear, par exemple des décors ou des avions mis à jour, n&#039;hésitez pas à ajouter ces nouvelles au bulletin.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Le nouvel Éditeur Visuel rend l&#039;édition du wiki aussi simple que l&#039;utilisation d&#039;un traitement de texte, et même plus facile que l&#039;utilisation du forum car vous n&#039;avez même pas besoin de connaître la syntaxe d&#039;une URL. Cliquez simplement sur le lien « modifier » et commencez&#039;&#039;&lt;br /&gt;
==Nouvelles de la communauté==&lt;br /&gt;
&amp;lt;!-- === FlightGear on YouTube === --&amp;gt;&lt;br /&gt;
&amp;lt;!-- embed video as {{#ev:youtube|VCc6PwRI1LA}}--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- === Forum news === --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- === Wiki updates === --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- === Article of the month === --&amp;gt;FlightGear sur Facebook&lt;br /&gt;
===FlightGear sur Facebook===&lt;br /&gt;
Depuis début décembre 2010, FlightGear a une  [https://www.facebook.com/FlightGear page officielle facebook]. Si vous avez un compte Facebook, n&#039;hésitez pas à rejoindre la page.&lt;br /&gt;
&lt;br /&gt;
===FlightGear Sur Instagram===&lt;br /&gt;
En janvier 2018 le compte Instagram  [https://www.instagram.com/flightgear_sim/ @flightgear_sim] a été réactivé. Si vous avez de belles captures d&#039;écran à présenter, n&#039;hésitez pas à {{Forum link|text=contacter e gestionnaire|f=33636}} .&lt;br /&gt;
&lt;br /&gt;
===FlightGear sur FlightSim.com===&lt;br /&gt;
FlightGear a également un [https://www.flightsim.com/vbfs/forumdisplay.php?102-FlightGear sous-forum] sur flightsim.com - tout comme les simulateurs de vol commerciaux. C&#039;est l&#039;occasion de montrer ce que Flightgear peut faire, d&#039;éveiller la curiosité des gens et de répondre à toutes leurs questions concernant le logiciel ou le projet.&lt;br /&gt;
==Contribuer==&lt;br /&gt;
=== Appel aux traducteurs !===&lt;br /&gt;
{|&lt;br /&gt;
|[[File:en.gif]]&lt;br /&gt;
|The FlightGear Wiki still needs help for translating it into various languages. If you are interested in making the FlightGear Wiki multilingual, you can start by looking at [[Help:Translate]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:fr.gif]]&lt;br /&gt;
|Le wiki de FlightGear a toujours besoin d&#039;aide pour être traduit en différentes langues. Si vous êtes intéressé par le rendre multilingue, commencez par lire [[:fr:Help:Traduire|Help:Traduire]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:de.gif]] &lt;br /&gt;
| Das FlightGear Wiki benötigt immer noch Hilfe bei der Übersetzung in verschiedene Sprachen. Wenn Du Interesse daran hast, das FlightGear Wiki mehrsprachig zu machen, dann fang mit dem [[:de:Help:Übersetzen|Help:Übersetzen]] an.&lt;br /&gt;
|-&lt;br /&gt;
|[[File:nl.gif]]&lt;br /&gt;
| De FlightGear Wiki kan nog steed hulp gebruiken bij het vertalen van artikelen. Als je interesse hebt om de wiki meertalig te maken, raden we je aan om een kijkje te nemen bij [[:nl:Help:Vertalen|Help:Vertalen]].&lt;br /&gt;
|-&lt;br /&gt;
| [[File:es.gif]]&lt;br /&gt;
|La wiki de FlightGear todavía necesita ayuda para traducirla a varios lenguajes. Si estás interesado en hacer la FlightGear wiki multilingüe, entonces comienza en [[:es:Help:Traducir|Help:Traducir]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:cat.gif]]&lt;br /&gt;
|La wiki de FlightGear encara necessita ajuda per traduir-la a diverses llengües. Si esteu interessat en fer la wiki de FlightGear multilingüe, llavors comenceu a [[:ca:Help:Traduir|Help:Traduir]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:pt.gif]] &lt;br /&gt;
| A wiki de FlightGear ainda necessita de ajuda para traduzi-la em vários idiomas. Se estás interessado em tornar a wiki de FlightGear multi-lingual, por favor começa em [[:pt:Help:Traduzir|Help:Traduzir]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:zh.gif]] &lt;br /&gt;
| FlightGear 百科仍然需要志愿者将其翻译为各种语言。如果你有兴趣让FlightGear百科支持更多语言, 你可以查看 [[Help:Translate]].&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Les logos de FlightGear&lt;br /&gt;
&lt;br /&gt;
Si vous souhaitez obtenir des éléments graphiques pour votre site lié à FlightGear (tel qu&#039;un hangar ou une chaîne YouTube), n&#039;hésitez pas à consulter la page [[FlightGear logos|Logos FlightGear]] pour accéder à une bibliothèque de logos. Et si vous avez des talents artistiques, n&#039;hésitez pas à contribuer en partageant vos propres créations.&lt;br /&gt;
&lt;br /&gt;
==Capture d&#039;écran du mois==&lt;br /&gt;
&amp;lt;!--FlightGear&#039;s Screenshot of the Month {{#time: F | 2025-05}} 2025 is FIXME by {{usr|FIXME}}&lt;br /&gt;
ADD IMAGE --&amp;gt;&lt;br /&gt;
La capture d&#039;écran du mois de février2026 de FlightGear est Patrouille à l&#039;aube en Haute Marne par Lester-Boffo.&lt;br /&gt;
[[File:Dawn Patrol Northern Marne by @Lester-Boffo.jpg|thumb|Patrouille à l&#039;aube en Haute Marne par Lester-Boffo]]&lt;br /&gt;
Si vous souhaitez participer au concours mensuel de captures d&#039;écran, vous pouvez soumettre votre candidature à ce {{Forum link|text=sous-forum|f=88}}. Assurez-vous de lire le premier message pour les règles de participation. Pour des raisons de commodité et d&#039;organisation, à la fin du mois ou après 20 participations soumises, un nouveau billet de forum sera créé contenant toutes les prises présentées dans une mise en page facile à consulter. Le vote aura alors lieu dans ce billet.&amp;lt;!--Once the voting has finished, the best screenshot will be presented in the Newsletter edition of {{#time: F | 2025-05 + 1month}}--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[en:FlightGear_Newsletter_February_2026]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Changes after 2024.3]]&lt;br /&gt;
[[Category:FlightGear Newsletter|2026 02]]&lt;br /&gt;
&amp;lt;!--[[de:FlightGear Newsletter {{#time: F Y | 2026-01 | de }}]]--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/FlightGear_Newsletter_January_2026&amp;diff=143895</id>
		<title>Fr/FlightGear Newsletter January 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/FlightGear_Newsletter_January_2026&amp;diff=143895"/>
		<updated>2026-04-04T16:04:00Z</updated>

		<summary type="html">&lt;p&gt;Adaz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{User:Skybike/Template:Newsletter-header-translate|2026-01}}&lt;br /&gt;
{{TOC_right|limit=2}}&lt;br /&gt;
&#039;&#039;Nous tenons à souligner que le bulletin mensuel ne peut exister sans les contributions des utilisateurs et développeurs de FlightGear. Toute personne disposant d&#039;un compte wiki (inscription gratuite) est invitée à contribuer au bulletin. Si vous êtes au courant de toute actualité ou projet lié à FlightGear, par exemple des décors ou des avions mis à jour, n&#039;hésitez pas à ajouter ces nouvelles au bulletin.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Le nouvel Éditeur Visuel rend l&#039;édition du wiki aussi simple que l&#039;utilisation d&#039;un traitement de texte, et même plus facile que l&#039;utilisation du forum car vous n&#039;avez même pas besoin de connaître la syntaxe d&#039;une URL. Cliquez simplement sur le lien « modifier » et commencez&#039;&#039;&amp;lt;!-- {{Disclaimer|id=final-fixed-function-release}}--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Outils logiciels et projets connexes ==&lt;br /&gt;
&amp;lt;!-- Those not being part of FlightGear itself, like for example OpenRadar, TerreMaster or flightgear-atc.alwaysdata.net. --&amp;gt;&lt;br /&gt;
===Serveur FG MCP===&lt;br /&gt;
[[File:FG-MCP.png|thumb|Logo du serveur FG MCP]]&lt;br /&gt;
&lt;br /&gt;
Avec l&#039;aide de l&#039;OpenCode IDE, en utilisant le modèle gratuit intégré dans cet éditeur — nommé Big Pickle — et sous le contrôle strict de la boucle via l&#039;utilitaire Ralf Wiggum, Michat a développé un serveur MCP pour FlightGear.&lt;br /&gt;
&lt;br /&gt;
Le serveur nécessite python = &amp;quot;&amp;gt;=3.10&amp;quot; et fastmcp&amp;gt;=2.0.0. Initialement, nous avons rencontré des problèmes avec la connexion Telnet, nous avons donc choisi de modifier les spécifications pour utiliser HTTP à la place.&lt;br /&gt;
&lt;br /&gt;
Grâce à ses fonctionnalités, ce serveur MCP permet de contrôler diverses fonctions de FlightGear via des invites textuelles. Les principales incluent :  &lt;br /&gt;
&lt;br /&gt;
*Démarrage du moteur&lt;br /&gt;
*Changement de vue&lt;br /&gt;
* Rotation de la vue cockpit jusqu&#039;à 30 degrés dans n&#039;importe quelle direction&lt;br /&gt;
* Contrôle et sélection du panneau radio&lt;br /&gt;
*Contrôle basique du pilote automatique&lt;br /&gt;
*Gestion des éclairages&lt;br /&gt;
*Gestion du temps&lt;br /&gt;
*Ouverture de la carte Phi dans le navigateur&lt;br /&gt;
&lt;br /&gt;
Nous continuerons à étendre les définitions MCP et travaillons actuellement à la génération d&#039;un rapport de compatibilité, car tous les éléments ne sont pas accessibles par chaque méthode. Par exemple, lorsque l&#039;on utilise le menu de FlightGear, un manque de compatibilité devient évident sur certains aspects.&lt;br /&gt;
&lt;br /&gt;
Nous vous tiendrons informés des progrès du [[FG-MCP_Server]].&lt;br /&gt;
&lt;br /&gt;
==Echos du hangar==&lt;br /&gt;
&amp;lt;!-- News about new and upgraded aircraft and related stuff. The official forum and other ones usually are a good source for this. --&amp;gt;&lt;br /&gt;
&amp;lt;!-- === New aircraft === --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- === Updated aircraft === --&amp;gt;&lt;br /&gt;
===Avions mis à jour ===&lt;br /&gt;
&lt;br /&gt;
====Boeing 777====&lt;br /&gt;
Les changements annoncés dans la [[Fr/FlightGear Newsletter December 2025|newsletter précédente]] ont été intégrés à FGAddon (trunk et stable 2024.1) depuis le 4 février 2026. Profitez du CDU amélioré (par Liang Sidi), de la gestion VNAV (par Jean-Yves Lebleu) et des systèmes hydrauliques (par Isaak Dieleman) ! D&#039;autres mises à jour arriveront probablement dans un avenir proche. Le développement se déroule dans [https://gitlab.com/sidi762/flightgear-777 ce dépôt Gitlab]. Veuillez signaler tout problème via [https://gitlab.com/sidi762/flightgear-777/-/issues le suivi des problèmes] .&amp;lt;!-- === Liveries === --&amp;gt;&lt;br /&gt;
&amp;lt;!-- === Instruments === --&amp;gt;&lt;br /&gt;
&amp;lt;!-- === Aircraft reviews === --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Nouvelles de la communauté ==&lt;br /&gt;
&amp;lt;!-- === FlightGear on YouTube === --&amp;gt;&lt;br /&gt;
&amp;lt;!-- embed video as {{#ev:youtube|VCc6PwRI1LA}}--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- === Forum news === --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- === Wiki updates === --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- === Article of the month === --&amp;gt;FlightGear sur Facebook&lt;br /&gt;
===FlightGear sur Facebook===&lt;br /&gt;
Depuis début décembre 2010, FlightGear a une  [https://www.facebook.com/FlightGear page officielle facebook]. Si vous avez un compte Facebook, n&#039;hésitez pas à rejoindre la page.&lt;br /&gt;
&lt;br /&gt;
===FlightGear Sur Instagram===&lt;br /&gt;
En janvier 2018 le compte Instagram  [https://www.instagram.com/flightgear_sim/ @flightgear_sim] a été réactivé. Si vous avez de belles captures d&#039;écran à présenter, n&#039;hésitez pas à {{Forum link|text=contacter e gestionnaire|f=33636}} .&lt;br /&gt;
&lt;br /&gt;
===FlightGear sur FlightSim.com===&lt;br /&gt;
FlightGear a également un [https://www.flightsim.com/vbfs/forumdisplay.php?102-FlightGear sous-forum] sur flightsim.com - tout comme les simulateurs de vol commerciaux. C&#039;est l&#039;occasion de montrer ce que Flightgear peut faire, d&#039;éveiller la curiosité des gens et de répondre à toutes leurs questions concernant le logiciel ou le projet.&lt;br /&gt;
==Contribuer==&lt;br /&gt;
=== Appel aux traducteurs !===&lt;br /&gt;
{|&lt;br /&gt;
|[[File:en.gif]]&lt;br /&gt;
|The FlightGear Wiki still needs help for translating it into various languages. If you are interested in making the FlightGear Wiki multilingual, you can start by looking at [[Help:Translate]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:fr.gif]]&lt;br /&gt;
|Le wiki de FlightGear a toujours besoin d&#039;aide pour être traduit en différentes langues. Si vous êtes intéressé par le rendre multilingue, commencez par lire [[:fr:Help:Traduire|Help:Traduire]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:de.gif]] &lt;br /&gt;
| Das FlightGear Wiki benötigt immer noch Hilfe bei der Übersetzung in verschiedene Sprachen. Wenn Du Interesse daran hast, das FlightGear Wiki mehrsprachig zu machen, dann fang mit dem [[:de:Help:Übersetzen|Help:Übersetzen]] an.&lt;br /&gt;
|-&lt;br /&gt;
|[[File:nl.gif]]&lt;br /&gt;
| De FlightGear Wiki kan nog steed hulp gebruiken bij het vertalen van artikelen. Als je interesse hebt om de wiki meertalig te maken, raden we je aan om een kijkje te nemen bij [[:nl:Help:Vertalen|Help:Vertalen]].&lt;br /&gt;
|-&lt;br /&gt;
| [[File:es.gif]]&lt;br /&gt;
|La wiki de FlightGear todavía necesita ayuda para traducirla a varios lenguajes. Si estás interesado en hacer la FlightGear wiki multilingüe, entonces comienza en [[:es:Help:Traducir|Help:Traducir]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:cat.gif]]&lt;br /&gt;
|La wiki de FlightGear encara necessita ajuda per traduir-la a diverses llengües. Si esteu interessat en fer la wiki de FlightGear multilingüe, llavors comenceu a [[:ca:Help:Traduir|Help:Traduir]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:pt.gif]] &lt;br /&gt;
| A wiki de FlightGear ainda necessita de ajuda para traduzi-la em vários idiomas. Se estás interessado em tornar a wiki de FlightGear multi-lingual, por favor começa em [[:pt:Help:Traduzir|Help:Traduzir]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:zh.gif]] &lt;br /&gt;
| FlightGear 百科仍然需要志愿者将其翻译为各种语言。如果你有兴趣让FlightGear百科支持更多语言, 你可以查看 [[Help:Translate]].&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Les logos de FlightGear&lt;br /&gt;
&lt;br /&gt;
Si vous souhaitez obtenir des éléments graphiques pour votre site lié à FlightGear (tel qu&#039;un hangar ou une chaîne YouTube), n&#039;hésitez pas à consulter la page [[FlightGear logos|Logos FlightGear]] pour accéder à une bibliothèque de logos. Et si vous avez des talents artistiques, n&#039;hésitez pas à contribuer en partageant vos propres créations.&lt;br /&gt;
&lt;br /&gt;
==Capture d&#039;écran du mois==&lt;br /&gt;
&amp;lt;!--FlightGear&#039;s Screenshot of the Month {{#time: F | 2025-05}} 2025 is FIXME by {{usr|FIXME}}&lt;br /&gt;
ADD IMAGE --&amp;gt;&lt;br /&gt;
La capture d&#039;écran du mois de janvier 2026 de FlightGear est UPS MD-11 en finale à LBSF Sofia Airport par fatomann.&lt;br /&gt;
[[File:UPS MD-11 on final LBSF Sofia Airport by fatomann.jpg|thumb|UPS MD-11 en finale à LBSF Sofia Airport par fatomann]]&lt;br /&gt;
Si vous souhaitez participer au concours mensuel de captures d&#039;écran, vous pouvez soumettre votre candidature à ce {{Forum link|text=sous-forum|f=88}}. Assurez-vous de lire le premier message pour les règles de participation. Pour des raisons de commodité et d&#039;organisation, à la fin du mois ou après 20 participations soumises, un nouveau billet de forum sera créé contenant toutes les prises présentées dans une mise en page facile à consulter. Le vote aura alors lieu dans ce billet.&amp;lt;!--Once the voting has finished, the best screenshot will be presented in the Newsletter edition of {{#time: F | 2025-05 + 1month}}--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Appendix}}&lt;br /&gt;
&lt;br /&gt;
[[Category:FlightGear Newsletter|2026 01]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--[[de:FlightGear Newsletter {{#time: F Y | 2025-05 | de }}]]--&amp;gt;&lt;br /&gt;
[[en:FlightGear_Newsletter_January_2026]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Changes after 2024.2]]&lt;br /&gt;
[[Category:FlightGear Newsletter|2026 01]]&lt;br /&gt;
&amp;lt;!--[[de:FlightGear Newsletter {{#time: F Y | 2026-01 | de }}]]--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/FlightGear_Newsletter_January_2026&amp;diff=143894</id>
		<title>Fr/FlightGear Newsletter January 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/FlightGear_Newsletter_January_2026&amp;diff=143894"/>
		<updated>2026-04-04T16:02:31Z</updated>

		<summary type="html">&lt;p&gt;Adaz: FR final version&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{User:Skybike/Template:Newsletter-header-translate|2026-01}}&lt;br /&gt;
{{TOC_right|limit=2}}&lt;br /&gt;
&#039;&#039;Nous tenons à souligner que le bulletin mensuel ne peut exister sans les contributions des utilisateurs et développeurs de FlightGear. Toute personne disposant d&#039;un compte wiki (inscription gratuite) est invitée à contribuer au bulletin. Si vous êtes au courant de toute actualité ou projet lié à FlightGear, par exemple des décors ou des avions mis à jour, n&#039;hésitez pas à ajouter ces nouvelles au bulletin.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Le nouvel Éditeur Visuel rend l&#039;édition du wiki aussi simple que l&#039;utilisation d&#039;un traitement de texte, et même plus facile que l&#039;utilisation du forum car vous n&#039;avez même pas besoin de connaître la syntaxe d&#039;une URL. Cliquez simplement sur le lien « modifier » et commencez&#039;&#039;&amp;lt;!-- {{Disclaimer|id=final-fixed-function-release}}--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Outils logiciels et projets connexes ==&lt;br /&gt;
&amp;lt;!-- Those not being part of FlightGear itself, like for example OpenRadar, TerreMaster or flightgear-atc.alwaysdata.net. --&amp;gt;&lt;br /&gt;
===Serveur FG MCP===&lt;br /&gt;
[[File:FG-MCP.png|thumb|Logo du serveur FG MCP]]&lt;br /&gt;
&lt;br /&gt;
Avec l&#039;aide de l&#039;OpenCode IDE, en utilisant le modèle gratuit intégré dans cet éditeur — nommé Big Pickle — et sous le contrôle strict de la boucle via l&#039;utilitaire Ralf Wiggum, Michat a développé un serveur MCP pour FlightGear.&lt;br /&gt;
&lt;br /&gt;
Le serveur nécessite python = &amp;quot;&amp;gt;=3.10&amp;quot; et fastmcp&amp;gt;=2.0.0. Initialement, nous avons rencontré des problèmes avec la connexion Telnet, nous avons donc choisi de modifier les spécifications pour utiliser HTTP à la place.&lt;br /&gt;
&lt;br /&gt;
Grâce à ses fonctionnalités, ce serveur MCP permet de contrôler diverses fonctions de FlightGear via des invites textuelles. Les principales incluent :  &lt;br /&gt;
&lt;br /&gt;
*Démarrage du moteur&lt;br /&gt;
*Changement de vue&lt;br /&gt;
* Rotation de la vue cockpit jusqu&#039;à 30 degrés dans n&#039;importe quelle direction&lt;br /&gt;
* Contrôle et sélection du panneau radio&lt;br /&gt;
*Contrôle basique du pilote automatique&lt;br /&gt;
*Gestion des éclairages&lt;br /&gt;
*Gestion du temps&lt;br /&gt;
*Ouverture de la carte Phi dans le navigateur&lt;br /&gt;
&lt;br /&gt;
Nous continuerons à étendre les définitions MCP et travaillons actuellement à la génération d&#039;un rapport de compatibilité, car tous les éléments ne sont pas accessibles par chaque méthode. Par exemple, lorsque l&#039;on utilise le menu de FlightGear, un manque de compatibilité devient évident sur certains aspects.&lt;br /&gt;
&lt;br /&gt;
Nous vous tiendrons informés des progrès du [[FG-MCP_Server]].&lt;br /&gt;
&lt;br /&gt;
==Echos du hangar==&lt;br /&gt;
&amp;lt;!-- News about new and upgraded aircraft and related stuff. The official forum and other ones usually are a good source for this. --&amp;gt;&lt;br /&gt;
&amp;lt;!-- === New aircraft === --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- === Updated aircraft === --&amp;gt;&lt;br /&gt;
===Avions mis à jour ===&lt;br /&gt;
&lt;br /&gt;
====Boeing 777====&lt;br /&gt;
Les changements annoncés dans la [[Fr/FlightGear Newsletter December 2025|newsletter précédente]] ont été intégrés à FGAddon (trunk et stable 2024.1) depuis le 4 février 2026. Profitez du CDU amélioré (par Liang Sidi), de la gestion VNAV (par Jean-Yves Lebleu) et des systèmes hydrauliques (par Isaak Dieleman) ! D&#039;autres mises à jour arriveront probablement dans un avenir proche. Le développement se déroule dans [https://gitlab.com/sidi762/flightgear-777 ce dépôt Gitlab]. Veuillez signaler tout problème via [https://gitlab.com/sidi762/flightgear-777/-/issues le suivi des problèmes] .&amp;lt;!-- === Liveries === --&amp;gt;&lt;br /&gt;
&amp;lt;!-- === Instruments === --&amp;gt;&lt;br /&gt;
&amp;lt;!-- === Aircraft reviews === --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Nouvelles de la communauté ==&lt;br /&gt;
&amp;lt;!-- === FlightGear on YouTube === --&amp;gt;&lt;br /&gt;
&amp;lt;!-- embed video as {{#ev:youtube|VCc6PwRI1LA}}--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- === Forum news === --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- === Wiki updates === --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- === Article of the month === --&amp;gt;FlightGear sur Facebook&lt;br /&gt;
===FlightGear sur Facebook===&lt;br /&gt;
Depuis début décembre 2010, FlightGear a une  [https://www.facebook.com/FlightGear page officielle facebook]. Si vous avez un compte Facebook, n&#039;hésitez pas à rejoindre la page.&lt;br /&gt;
&lt;br /&gt;
===FlightGear Sur Instagram===&lt;br /&gt;
En janvier 2018 le compte Instagram  [https://www.instagram.com/flightgear_sim/ @flightgear_sim] a été réactivé. Si vous avez de belles captures d&#039;écran à présenter, n&#039;hésitez pas à {{Forum link|text=contacter e gestionnaire|f=33636}} .&lt;br /&gt;
&lt;br /&gt;
===FlightGear sur FlightSim.com===&lt;br /&gt;
FlightGear a également un [https://www.flightsim.com/vbfs/forumdisplay.php?102-FlightGear sous-forum] sur flightsim.com - tout comme les simulateurs de vol commerciaux. C&#039;est l&#039;occasion de montrer ce que Flightgear peut faire, d&#039;éveiller la curiosité des gens et de répondre à toutes leurs questions concernant le logiciel ou le projet.&lt;br /&gt;
==Contribuer==&lt;br /&gt;
=== Appel aux traducteurs !===&lt;br /&gt;
{|&lt;br /&gt;
|[[File:en.gif]]&lt;br /&gt;
|The FlightGear Wiki still needs help for translating it into various languages. If you are interested in making the FlightGear Wiki multilingual, you can start by looking at [[Help:Translate]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:fr.gif]]&lt;br /&gt;
|Le wiki de FlightGear a toujours besoin d&#039;aide pour être traduit en différentes langues. Si vous êtes intéressé par le rendre multilingue, commencez par lire [[:fr:Help:Traduire|Help:Traduire]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:de.gif]] &lt;br /&gt;
| Das FlightGear Wiki benötigt immer noch Hilfe bei der Übersetzung in verschiedene Sprachen. Wenn Du Interesse daran hast, das FlightGear Wiki mehrsprachig zu machen, dann fang mit dem [[:de:Help:Übersetzen|Help:Übersetzen]] an.&lt;br /&gt;
|-&lt;br /&gt;
|[[File:nl.gif]]&lt;br /&gt;
| De FlightGear Wiki kan nog steed hulp gebruiken bij het vertalen van artikelen. Als je interesse hebt om de wiki meertalig te maken, raden we je aan om een kijkje te nemen bij [[:nl:Help:Vertalen|Help:Vertalen]].&lt;br /&gt;
|-&lt;br /&gt;
| [[File:es.gif]]&lt;br /&gt;
|La wiki de FlightGear todavía necesita ayuda para traducirla a varios lenguajes. Si estás interesado en hacer la FlightGear wiki multilingüe, entonces comienza en [[:es:Help:Traducir|Help:Traducir]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:cat.gif]]&lt;br /&gt;
|La wiki de FlightGear encara necessita ajuda per traduir-la a diverses llengües. Si esteu interessat en fer la wiki de FlightGear multilingüe, llavors comenceu a [[:ca:Help:Traduir|Help:Traduir]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:pt.gif]] &lt;br /&gt;
| A wiki de FlightGear ainda necessita de ajuda para traduzi-la em vários idiomas. Se estás interessado em tornar a wiki de FlightGear multi-lingual, por favor começa em [[:pt:Help:Traduzir|Help:Traduzir]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:zh.gif]] &lt;br /&gt;
| FlightGear 百科仍然需要志愿者将其翻译为各种语言。如果你有兴趣让FlightGear百科支持更多语言, 你可以查看 [[Help:Translate]].&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Les logos de FlightGear&lt;br /&gt;
&lt;br /&gt;
Si vous souhaitez obtenir des éléments graphiques pour votre site lié à FlightGear (tel qu&#039;un hangar ou une chaîne YouTube), n&#039;hésitez pas à consulter la page [[FlightGear logos|Logos FlightGear]] pour accéder à une bibliothèque de logos. Et si vous avez des talents artistiques, n&#039;hésitez pas à contribuer en partageant vos propres créations.&lt;br /&gt;
&lt;br /&gt;
==Capture d&#039;écran du mois==&lt;br /&gt;
&amp;lt;!--FlightGear&#039;s Screenshot of the Month {{#time: F | 2025-05}} 2025 is FIXME by {{usr|FIXME}}&lt;br /&gt;
ADD IMAGE --&amp;gt;&lt;br /&gt;
La capture d&#039;écran du mois de janvier 2026 de FlightGear est UPS MD-11 en finale à LBSF Sofia Airport par fatomann.&lt;br /&gt;
[[File:UPS MD-11 on final LBSF Sofia Airport by fatomann.jpg|thumb|UPS MD-11 en finale à LBSF Sofia Airport par fatomann]]&lt;br /&gt;
Si vous souhaitez participer au concours mensuel de captures d&#039;écran, vous pouvez soumettre votre candidature à ce {{Forum link|text=sous-forum|f=88}}. Assurez-vous de lire le premier message pour les règles de participation. Pour des raisons de commodité et d&#039;organisation, à la fin du mois ou après 20 participations soumises, un nouveau billet de forum sera créé contenant toutes les prises présentées dans une mise en page facile à consulter. Le vote aura alors lieu dans ce billet.&amp;lt;!--Once the voting has finished, the best screenshot will be presented in the Newsletter edition of {{#time: F | 2025-05 + 1month}}--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Appendix}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Changes after 2024.2]]&lt;br /&gt;
[[Category:FlightGear Newsletter|2026 01]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--[[de:FlightGear Newsletter {{#time: F Y | 2025-05 | de }}]]--&amp;gt;&lt;br /&gt;
[[en:FlightGear_Newsletter_January_2026]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Changes after 2024.1]]&amp;lt;!--Has a new version been released this month? Use previous version!--&amp;gt;&lt;br /&gt;
[[Category:FlightGear Newsletter|2026 01]]&lt;br /&gt;
&amp;lt;!--[[de:FlightGear Newsletter {{#time: F Y | 2026-01 | de }}]]--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/FlightGear_Newsletter_January_2026&amp;diff=143893</id>
		<title>Fr/FlightGear Newsletter January 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/FlightGear_Newsletter_January_2026&amp;diff=143893"/>
		<updated>2026-04-04T15:46:23Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Remove blank sections&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
NOTES TO EDITORS&lt;br /&gt;
&lt;br /&gt;
* Headings&lt;br /&gt;
  * DO NOT DELETE HEADINGS prior to final cleanup&lt;br /&gt;
  * Current headings and their order is merely a suggestion based on what have been used earlier&lt;br /&gt;
  * Changes made to headings or structure should also be copied the Newsletter template http://wiki.flightgear.org/User:Skybike/Template:This_months_newsletter/Newsletter_example&lt;br /&gt;
&lt;br /&gt;
* Final cleanup before write protecting&lt;br /&gt;
  * Remove unused headings&lt;br /&gt;
  * Remove {{Appendix}} if not used.&lt;br /&gt;
  * Update &amp;quot;Category: Changes after&amp;quot; to the FG version current at the 1st of this month&lt;br /&gt;
  * Finally remove this comment&lt;br /&gt;
  * Update [[Next Newsletter]] and [[FlightGear Newsletter]]&lt;br /&gt;
&lt;br /&gt;
* Discussion, issues and suggestions&lt;br /&gt;
  * Regarding this newsletter issue, please use the discussion page&lt;br /&gt;
  * Regarding the newsletter in general, primarily use the FlightGear Newsletter discussion page (Talk:FlightGear Newsletter)&lt;br /&gt;
  * Regarding this Newsletter template, please use FIXME&lt;br /&gt;
&lt;br /&gt;
+++   {{Newsletter-header|{{#time: F | 2026-01}}}}   +++&lt;br /&gt;
--&amp;gt;{{User:Skybike/Template:Newsletter-header-translate|2026-01}}&lt;br /&gt;
{{TOC_right|limit=2}}&lt;br /&gt;
&#039;&#039;Nous tenons à souligner que le bulletin mensuel ne peut exister sans les contributions des utilisateurs et développeurs de FlightGear. Toute personne disposant d&#039;un compte wiki (inscription gratuite) est invitée à contribuer au bulletin. Si vous êtes au courant de toute actualité ou projet lié à FlightGear, par exemple des décors ou des avions mis à jour, n&#039;hésitez pas à ajouter ces nouvelles au bulletin.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Le nouvel Éditeur Visuel rend l&#039;édition du wiki aussi simple que l&#039;utilisation d&#039;un traitement de texte, et même plus facile que l&#039;utilisation du forum car vous n&#039;avez même pas besoin de connaître la syntaxe d&#039;une URL. Cliquez simplement sur le lien « modifier » et commencez&#039;&#039;&amp;lt;!-- {{Disclaimer|id=final-fixed-function-release}}--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Outils logiciels et projets connexes ==&lt;br /&gt;
&amp;lt;!-- Those not being part of FlightGear itself, like for example OpenRadar, TerreMaster or flightgear-atc.alwaysdata.net. --&amp;gt;&lt;br /&gt;
===Serveur FG MCP===&lt;br /&gt;
[[File:FG-MCP.png|thumb|Logo du serveur FG MCP]]&lt;br /&gt;
&lt;br /&gt;
Avec l&#039;aide de l&#039;OpenCode IDE, en utilisant le modèle gratuit intégré dans cet éditeur — nommé Big Pickle — et sous le contrôle strict de la boucle via l&#039;utilitaire Ralf Wiggum, Michat a développé un serveur MCP pour FlightGear.&lt;br /&gt;
&lt;br /&gt;
Le serveur nécessite python = &amp;quot;&amp;gt;=3.10&amp;quot; et fastmcp&amp;gt;=2.0.0. Initialement, nous avons rencontré des problèmes avec la connexion Telnet, nous avons donc choisi de modifier les spécifications pour utiliser HTTP à la place.&lt;br /&gt;
&lt;br /&gt;
Grâce à ses fonctionnalités, ce serveur MCP permet de contrôler diverses fonctions de FlightGear via des invites textuelles. Les principales incluent :  &lt;br /&gt;
&lt;br /&gt;
*Démarrage du moteur&lt;br /&gt;
*Changement de vue&lt;br /&gt;
* Rotation de la vue cockpit jusqu&#039;à 30 degrés dans n&#039;importe quelle direction&lt;br /&gt;
* Contrôle et sélection du panneau radio&lt;br /&gt;
*Contrôle basique du pilote automatique&lt;br /&gt;
*Gestion des éclairages&lt;br /&gt;
*Gestion du temps&lt;br /&gt;
*Ouverture de la carte Phi dans le navigateur&lt;br /&gt;
&lt;br /&gt;
Nous continuerons à étendre les définitions MCP et travaillons actuellement à la génération d&#039;un rapport de compatibilité, car tous les éléments ne sont pas accessibles par chaque méthode. Par exemple, lorsque l&#039;on utilise le menu de FlightGear, un manque de compatibilité devient évident sur certains aspects.&lt;br /&gt;
&lt;br /&gt;
Nous vous tiendrons informés des progrès du [[FG-MCP_Server]].&lt;br /&gt;
&lt;br /&gt;
==Echos du hangar==&lt;br /&gt;
&amp;lt;!-- News about new and upgraded aircraft and related stuff. The official forum and other ones usually are a good source for this. --&amp;gt;&lt;br /&gt;
&amp;lt;!-- === New aircraft === --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- === Updated aircraft === --&amp;gt;&lt;br /&gt;
===Avions mis à jour ===&lt;br /&gt;
&lt;br /&gt;
====Boeing 777====&lt;br /&gt;
Les changements annoncés dans la [[Fr/FlightGear Newsletter December 2025|newsletter précédente]] ont été intégrés à FGAddon (trunk et stable 2024.1) depuis le 4 février 2026. Profitez du CDU amélioré (par Liang Sidi), de la gestion VNAV (par Jean-Yves Lebleu) et des systèmes hydrauliques (par Isaak Dieleman) ! D&#039;autres mises à jour arriveront probablement dans un avenir proche. Le développement se déroule dans [https://gitlab.com/sidi762/flightgear-777 ce dépôt Gitlab]. Veuillez signaler tout problème via [https://gitlab.com/sidi762/flightgear-777/-/issues le suivi des problèmes] .&amp;lt;!-- === Liveries === --&amp;gt;&lt;br /&gt;
&amp;lt;!-- === Instruments === --&amp;gt;&lt;br /&gt;
&amp;lt;!-- === Aircraft reviews === --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Nouvelles de la communauté ==&lt;br /&gt;
&amp;lt;!-- === FlightGear on YouTube === --&amp;gt;&lt;br /&gt;
&amp;lt;!-- embed video as {{#ev:youtube|VCc6PwRI1LA}}--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- === Forum news === --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- === Wiki updates === --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- === Article of the month === --&amp;gt;FlightGear sur Facebook&lt;br /&gt;
===FlightGear sur Facebook===&lt;br /&gt;
Depuis début décembre 2010, FlightGear a une  [https://www.facebook.com/FlightGear page officielle facebook]. Si vous avez un compte Facebook, n&#039;hésitez pas à rejoindre la page.&lt;br /&gt;
&lt;br /&gt;
===FlightGear Sur Instagram===&lt;br /&gt;
En janvier 2018 le compte Instagram  [https://www.instagram.com/flightgear_sim/ @flightgear_sim] a été réactivé. Si vous avez de belles captures d&#039;écran à présenter, n&#039;hésitez pas à {{Forum link|text=contacter e gestionnaire|f=33636}} .&lt;br /&gt;
&lt;br /&gt;
===FlightGear sur FlightSim.com===&lt;br /&gt;
FlightGear a également un [https://www.flightsim.com/vbfs/forumdisplay.php?102-FlightGear sous-forum] sur flightsim.com - tout comme les simulateurs de vol commerciaux. C&#039;est l&#039;occasion de montrer ce que Flightgear peut faire, d&#039;éveiller la curiosité des gens et de répondre à toutes leurs questions concernant le logiciel ou le projet.&lt;br /&gt;
==Contribuer==&lt;br /&gt;
=== Appel aux traducteurs !===&lt;br /&gt;
{|&lt;br /&gt;
|[[File:en.gif]]&lt;br /&gt;
|The FlightGear Wiki still needs help for translating it into various languages. If you are interested in making the FlightGear Wiki multilingual, you can start by looking at [[Help:Translate]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:fr.gif]]&lt;br /&gt;
|Le wiki de FlightGear a toujours besoin d&#039;aide pour être traduit en différentes langues. Si vous êtes intéressé par le rendre multilingue, commencez par lire [[:fr:Help:Traduire|Help:Traduire]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:de.gif]] &lt;br /&gt;
| Das FlightGear Wiki benötigt immer noch Hilfe bei der Übersetzung in verschiedene Sprachen. Wenn Du Interesse daran hast, das FlightGear Wiki mehrsprachig zu machen, dann fang mit dem [[:de:Help:Übersetzen|Help:Übersetzen]] an.&lt;br /&gt;
|-&lt;br /&gt;
|[[File:nl.gif]]&lt;br /&gt;
| De FlightGear Wiki kan nog steed hulp gebruiken bij het vertalen van artikelen. Als je interesse hebt om de wiki meertalig te maken, raden we je aan om een kijkje te nemen bij [[:nl:Help:Vertalen|Help:Vertalen]].&lt;br /&gt;
|-&lt;br /&gt;
| [[File:es.gif]]&lt;br /&gt;
|La wiki de FlightGear todavía necesita ayuda para traducirla a varios lenguajes. Si estás interesado en hacer la FlightGear wiki multilingüe, entonces comienza en [[:es:Help:Traducir|Help:Traducir]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:cat.gif]]&lt;br /&gt;
|La wiki de FlightGear encara necessita ajuda per traduir-la a diverses llengües. Si esteu interessat en fer la wiki de FlightGear multilingüe, llavors comenceu a [[:ca:Help:Traduir|Help:Traduir]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:pt.gif]] &lt;br /&gt;
| A wiki de FlightGear ainda necessita de ajuda para traduzi-la em vários idiomas. Se estás interessado em tornar a wiki de FlightGear multi-lingual, por favor começa em [[:pt:Help:Traduzir|Help:Traduzir]].&lt;br /&gt;
|-&lt;br /&gt;
|[[File:zh.gif]] &lt;br /&gt;
| FlightGear 百科仍然需要志愿者将其翻译为各种语言。如果你有兴趣让FlightGear百科支持更多语言, 你可以查看 [[Help:Translate]].&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Les logos de FlightGear&lt;br /&gt;
&lt;br /&gt;
Si vous souhaitez obtenir des éléments graphiques pour votre site lié à FlightGear (tel qu&#039;un hangar ou une chaîne YouTube), n&#039;hésitez pas à consulter la page [[FlightGear logos|Logos FlightGear]] pour accéder à une bibliothèque de logos. Et si vous avez des talents artistiques, n&#039;hésitez pas à contribuer en partageant vos propres créations.&lt;br /&gt;
&lt;br /&gt;
==Capture d&#039;écran du mois==&lt;br /&gt;
&amp;lt;!--FlightGear&#039;s Screenshot of the Month {{#time: F | 2025-05}} 2025 is FIXME by {{usr|FIXME}}&lt;br /&gt;
ADD IMAGE --&amp;gt;&lt;br /&gt;
La capture d&#039;écran du mois de janvier 2026 de FlightGear est UPS MD-11 en finale à LBSF Sofia Airport par fatomann.&lt;br /&gt;
[[File:UPS MD-11 on final LBSF Sofia Airport by fatomann.jpg|thumb|UPS MD-11 en finale à LBSF Sofia Airport par fatomann]]&lt;br /&gt;
Si vous souhaitez participer au concours mensuel de captures d&#039;écran, vous pouvez soumettre votre candidature à ce {{Forum link|text=sous-forum|f=88}}. Assurez-vous de lire le premier message pour les règles de participation. Pour des raisons de commodité et d&#039;organisation, à la fin du mois ou après 20 participations soumises, un nouveau billet de forum sera créé contenant toutes les prises présentées dans une mise en page facile à consulter. Le vote aura alors lieu dans ce billet.&amp;lt;!--Once the voting has finished, the best screenshot will be presented in the Newsletter edition of {{#time: F | 2025-05 + 1month}}--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Appendix}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Changes after 2024.1]]&amp;lt;!--Has a new version been released this month? Use previous version!--&amp;gt;&lt;br /&gt;
[[Category:FlightGear Newsletter|2025 05]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--[[de:FlightGear Newsletter {{#time: F Y | 2025-05 | de }}]]--&amp;gt;&lt;br /&gt;
[[en:FlightGear_Newsletter_January_2026]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Appendix}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Changes after 2024.1]]&amp;lt;!--Has a new version been released this month? Use previous version!--&amp;gt;&lt;br /&gt;
[[Category:FlightGear Newsletter|2026 01]]&lt;br /&gt;
&amp;lt;!--[[de:FlightGear Newsletter {{#time: F Y | 2026-01 | de }}]]--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/Input_helpers&amp;diff=143892</id>
		<title>Fr/Input helpers</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/Input_helpers&amp;diff=143892"/>
		<updated>2026-04-04T15:24:12Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Add En link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Aperçu ==&lt;br /&gt;
Cette page traite du code Nasal destiné aux périphériques d&#039;entrée tels que les manettes, les manches, les manettes des gaz et les pédales. Si de petits scripts peuvent être facilement ajoutés directement dans la balise &amp;lt;code&amp;gt;&amp;lt;binding&amp;gt;&amp;lt;/code&amp;gt; de la manette, les blocs de code plus volumineux doivent être organisés un peu différemment. &lt;br /&gt;
&lt;br /&gt;
Comme toujours : « ne vous répétez pas » = pour faciliter la vie de tout le monde, le code ne doit pas être copié-collé, mais regroupé dans un emplacement « centralisé » sous forme de fonctions ou de classes, et appelé chaque fois que cela est nécessaire, où que ce soit. De cette façon, la maintenance ne s&#039;effectue qu&#039;à un seul endroit.&lt;br /&gt;
&lt;br /&gt;
== Le namespace input_helpers ==&lt;br /&gt;
Le code &#039;&#039;&#039;&#039;&#039;Input helper&#039;&#039;&#039;&#039;&#039; doit être stocké dans &#039;&#039;&#039;FGDATA/Nasal/input_helpers/&amp;lt;vendorname&amp;gt;.nas.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Pour éviter tout conflit, il convient de créer un fichier par fournisseur et, dans chacun de ces fichiers, un espace de noms (hachage) dédié à ce fournisseur.&lt;br /&gt;
&lt;br /&gt;
Voir honeycomb.nas ci-dessous comme exemple :&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
# &lt;br /&gt;
# Helpers for Honeycomb input devices&lt;br /&gt;
#&lt;br /&gt;
&lt;br /&gt;
# !!! Abbreviated sample !!! &lt;br /&gt;
# Check FGDATA repository for latest full version&lt;br /&gt;
&lt;br /&gt;
# namespace&lt;br /&gt;
var honeycomb = {};&lt;br /&gt;
&lt;br /&gt;
# Helper for the Honeycomb Alpha Yoke&lt;br /&gt;
honeycomb[&amp;quot;alpha&amp;quot;] = {&lt;br /&gt;
    new: func(cfgnode) {&lt;br /&gt;
        var m = {&lt;br /&gt;
            parents: [me, input_helpers.config_manager.new(cfgnode)],&lt;br /&gt;
        };&lt;br /&gt;
        return m;&lt;br /&gt;
    },&lt;br /&gt;
    # abreviated file&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== config_manager - prise en charge des variantes de configuration pour un appareil ==&lt;br /&gt;
La classe &amp;lt;code&amp;gt;input_helpers.config_manager&amp;lt;/code&amp;gt; est conçue pour permettre de définir différentes configurations pour un périphérique d&#039;entrée au sein d&#039;un seul fichier de configuration XML. &lt;br /&gt;
&lt;br /&gt;
Pourquoi ? Prenons l&#039;exemple du quadrant de commande Honeycomb Bravo. Il prend en charge six manettes dotées de « têtes » interchangeables : un jeu pour les avions de ligne et un autre pour les modèles monomoteurs et bimoteurs de l&#039;aviation générale. Vous pouvez ainsi configurer le matériel avec des manettes allant d&#039;une seule commande de puissance/mélange jusqu&#039;à quatre moteurs à réaction.&lt;br /&gt;
&lt;br /&gt;
Il vous faut maintenant trouver un moyen d&#039;indiquer à FlightGear quels leviers vous avez installés sur votre quadrant de commande des gaz et comment interpréter les actions sur ces leviers. Pour éviter d&#039;avoir à jongler avec des fichiers XML, nous avons simplement intégré le nombre limité de variantes dans le fichier XML et laissé le gestionnaire de configuration s&#039;occuper du reste.&lt;br /&gt;
&lt;br /&gt;
Si des fichiers XML contenant des balises &amp;lt;code&amp;gt;&amp;lt;config-variants&amp;gt;&amp;lt;/code&amp;gt; sont chargés au démarrage, config_manager affichera une fenêtre contextuelle pour signaler ce fait et ouvrira une boîte de dialogue permettant de sélectionner la variante de configuration souhaitée. &lt;br /&gt;
&lt;br /&gt;
La sélection est ajoutée au fichier &#039;&#039;&#039;&#039;&#039;aircraft.data&#039;&#039;&#039;&#039;&#039; et est ainsi enregistrée pour chaque avion, pour plus de souplesse.&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;!-- shortened version for illustration only --&amp;gt;&lt;br /&gt;
&amp;lt;PropertyList&amp;gt;&lt;br /&gt;
  &amp;lt;vendor-name&amp;gt;honeycomb&amp;lt;/vendor-name&amp;gt;&lt;br /&gt;
  &amp;lt;model-name&amp;gt;bravo&amp;lt;/model-name&amp;gt;&lt;br /&gt;
  &amp;lt;name&amp;gt;Honeycomb Aeronautical Bravo Throttle Quadrant&amp;lt;/name&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;debug-events type=&amp;quot;bool&amp;quot;&amp;gt;false&amp;lt;/debug-events&amp;gt;&lt;br /&gt;
  &amp;lt;hid-debug-raw type=&amp;quot;bool&amp;quot;&amp;gt;false&amp;lt;/hid-debug-raw&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
  we need &amp;lt;nasal&amp;gt; to load the config_manager or a vendor&lt;br /&gt;
  specific derived class of it&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
  &amp;lt;nasal&amp;gt;&lt;br /&gt;
    &amp;lt;open&amp;gt;&lt;br /&gt;
      &amp;lt;![CDATA[&lt;br /&gt;
      print(&amp;quot;Honeycomb Bravo Nasal (event) open&amp;quot;);&lt;br /&gt;
      bravo = input_helpers.honeycomb.bravo.new(cmdarg());&lt;br /&gt;
      ]]&amp;gt;&lt;br /&gt;
    &amp;lt;/open&amp;gt;&lt;br /&gt;
    &amp;lt;close&amp;gt;&lt;br /&gt;
      &amp;lt;![CDATA[&lt;br /&gt;
      print(&amp;quot;Honeycomb Bravo Nasal (event) close&amp;quot;);&lt;br /&gt;
      if (ishash(bravo) and isfunc(bravo[&#039;close&#039;]))&lt;br /&gt;
        bravo.close(cmdarg());&lt;br /&gt;
      ]]&amp;gt;&lt;br /&gt;
    &amp;lt;/close&amp;gt;&lt;br /&gt;
  &amp;lt;/nasal&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
  now we can add &amp;lt;config-variants&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
  &amp;lt;config-variants&amp;gt;&lt;br /&gt;
    &amp;lt;variant&amp;gt;&lt;br /&gt;
&amp;lt;!-- id must be a single word, no special chars, useable as hash key in Nasal --&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;jet2&amp;lt;/id&amp;gt; &lt;br /&gt;
&amp;lt;!-- text for the GUI dialog --&amp;gt;&lt;br /&gt;
      &amp;lt;description&amp;gt;Airliner (two engines)&amp;lt;/description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
  add property mappings for this variant. &lt;br /&gt;
  &amp;lt;input&amp;gt; is used in the &amp;lt;event&amp;gt; elements&lt;br /&gt;
  &amp;lt;output&amp;gt; is the target property input will be aliased to&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[0]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/flight/speed-brake&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[3]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[1]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever-down-button[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/cutoff&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever-down-button[3]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[1]/cutoff&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/reverser[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/reverser&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/reverser[3]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[1]/reverser&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[5]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/flaps-lever-continuous&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
    &amp;lt;/variant&amp;gt;&lt;br /&gt;
    &amp;lt;variant&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;tm&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;description&amp;gt;Throttle/Mixture&amp;lt;/description&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[0]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[1]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/mixture&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
    &amp;lt;/variant&amp;gt;&lt;br /&gt;
    &amp;lt;variant&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;tpm&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;description&amp;gt;Throttle/Prop/Mixture&amp;lt;/description&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[0]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[1]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/propeller-pitch&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/mixture&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
    &amp;lt;/variant&amp;gt;   &lt;br /&gt;
  &amp;lt;/config-variants&amp;gt;&lt;br /&gt;
&amp;lt;!-- events cut; see latest version in FGDATA repository --&amp;gt;&lt;br /&gt;
&amp;lt;/PropertyList&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Voir aussi ==&lt;br /&gt;
[[USB-HID]]&lt;br /&gt;
&lt;br /&gt;
[[Honeycomb Input Devices]]&lt;br /&gt;
[[Category:Nasal]]&lt;br /&gt;
[[Category:Joysticks and Yokes]]&lt;br /&gt;
&lt;br /&gt;
[[en:Input_helpers]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/Input_helpers&amp;diff=143891</id>
		<title>Fr/Input helpers</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/Input_helpers&amp;diff=143891"/>
		<updated>2026-04-04T15:23:00Z</updated>

		<summary type="html">&lt;p&gt;Adaz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Aperçu ==&lt;br /&gt;
Cette page traite du code Nasal destiné aux périphériques d&#039;entrée tels que les manettes, les manches, les manettes des gaz et les pédales. Si de petits scripts peuvent être facilement ajoutés directement dans la balise &amp;lt;code&amp;gt;&amp;lt;binding&amp;gt;&amp;lt;/code&amp;gt; de la manette, les blocs de code plus volumineux doivent être organisés un peu différemment. &lt;br /&gt;
&lt;br /&gt;
Comme toujours : « ne vous répétez pas » = pour faciliter la vie de tout le monde, le code ne doit pas être copié-collé, mais regroupé dans un emplacement « centralisé » sous forme de fonctions ou de classes, et appelé chaque fois que cela est nécessaire, où que ce soit. De cette façon, la maintenance ne s&#039;effectue qu&#039;à un seul endroit.&lt;br /&gt;
&lt;br /&gt;
== Le namespace input_helpers ==&lt;br /&gt;
Le code &#039;&#039;&#039;&#039;&#039;Input helper&#039;&#039;&#039;&#039;&#039; doit être stocké dans &#039;&#039;&#039;FGDATA/Nasal/input_helpers/&amp;lt;vendorname&amp;gt;.nas.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Pour éviter tout conflit, il convient de créer un fichier par fournisseur et, dans chacun de ces fichiers, un espace de noms (hachage) dédié à ce fournisseur.&lt;br /&gt;
&lt;br /&gt;
Voir honeycomb.nas ci-dessous comme exemple :&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
# &lt;br /&gt;
# Helpers for Honeycomb input devices&lt;br /&gt;
#&lt;br /&gt;
&lt;br /&gt;
# !!! Abbreviated sample !!! &lt;br /&gt;
# Check FGDATA repository for latest full version&lt;br /&gt;
&lt;br /&gt;
# namespace&lt;br /&gt;
var honeycomb = {};&lt;br /&gt;
&lt;br /&gt;
# Helper for the Honeycomb Alpha Yoke&lt;br /&gt;
honeycomb[&amp;quot;alpha&amp;quot;] = {&lt;br /&gt;
    new: func(cfgnode) {&lt;br /&gt;
        var m = {&lt;br /&gt;
            parents: [me, input_helpers.config_manager.new(cfgnode)],&lt;br /&gt;
        };&lt;br /&gt;
        return m;&lt;br /&gt;
    },&lt;br /&gt;
    # abreviated file&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== config_manager - prise en charge des variantes de configuration pour un appareil ==&lt;br /&gt;
La classe &amp;lt;code&amp;gt;input_helpers.config_manager&amp;lt;/code&amp;gt; est conçue pour permettre de définir différentes configurations pour un périphérique d&#039;entrée au sein d&#039;un seul fichier de configuration XML. &lt;br /&gt;
&lt;br /&gt;
Pourquoi ? Prenons l&#039;exemple du quadrant de commande Honeycomb Bravo. Il prend en charge six manettes dotées de « têtes » interchangeables : un jeu pour les avions de ligne et un autre pour les modèles monomoteurs et bimoteurs de l&#039;aviation générale. Vous pouvez ainsi configurer le matériel avec des manettes allant d&#039;une seule commande de puissance/mélange jusqu&#039;à quatre moteurs à réaction.&lt;br /&gt;
&lt;br /&gt;
Il vous faut maintenant trouver un moyen d&#039;indiquer à FlightGear quels leviers vous avez installés sur votre quadrant de commande des gaz et comment interpréter les actions sur ces leviers. Pour éviter d&#039;avoir à jongler avec des fichiers XML, nous avons simplement intégré le nombre limité de variantes dans le fichier XML et laissé le gestionnaire de configuration s&#039;occuper du reste.&lt;br /&gt;
&lt;br /&gt;
Si des fichiers XML contenant des balises &amp;lt;code&amp;gt;&amp;lt;config-variants&amp;gt;&amp;lt;/code&amp;gt; sont chargés au démarrage, config_manager affichera une fenêtre contextuelle pour signaler ce fait et ouvrira une boîte de dialogue permettant de sélectionner la variante de configuration souhaitée. &lt;br /&gt;
&lt;br /&gt;
La sélection est ajoutée au fichier &#039;&#039;&#039;&#039;&#039;aircraft.data&#039;&#039;&#039;&#039;&#039; et est ainsi enregistrée pour chaque avion, pour plus de souplesse.&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;!-- shortened version for illustration only --&amp;gt;&lt;br /&gt;
&amp;lt;PropertyList&amp;gt;&lt;br /&gt;
  &amp;lt;vendor-name&amp;gt;honeycomb&amp;lt;/vendor-name&amp;gt;&lt;br /&gt;
  &amp;lt;model-name&amp;gt;bravo&amp;lt;/model-name&amp;gt;&lt;br /&gt;
  &amp;lt;name&amp;gt;Honeycomb Aeronautical Bravo Throttle Quadrant&amp;lt;/name&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;debug-events type=&amp;quot;bool&amp;quot;&amp;gt;false&amp;lt;/debug-events&amp;gt;&lt;br /&gt;
  &amp;lt;hid-debug-raw type=&amp;quot;bool&amp;quot;&amp;gt;false&amp;lt;/hid-debug-raw&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
  we need &amp;lt;nasal&amp;gt; to load the config_manager or a vendor&lt;br /&gt;
  specific derived class of it&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
  &amp;lt;nasal&amp;gt;&lt;br /&gt;
    &amp;lt;open&amp;gt;&lt;br /&gt;
      &amp;lt;![CDATA[&lt;br /&gt;
      print(&amp;quot;Honeycomb Bravo Nasal (event) open&amp;quot;);&lt;br /&gt;
      bravo = input_helpers.honeycomb.bravo.new(cmdarg());&lt;br /&gt;
      ]]&amp;gt;&lt;br /&gt;
    &amp;lt;/open&amp;gt;&lt;br /&gt;
    &amp;lt;close&amp;gt;&lt;br /&gt;
      &amp;lt;![CDATA[&lt;br /&gt;
      print(&amp;quot;Honeycomb Bravo Nasal (event) close&amp;quot;);&lt;br /&gt;
      if (ishash(bravo) and isfunc(bravo[&#039;close&#039;]))&lt;br /&gt;
        bravo.close(cmdarg());&lt;br /&gt;
      ]]&amp;gt;&lt;br /&gt;
    &amp;lt;/close&amp;gt;&lt;br /&gt;
  &amp;lt;/nasal&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
  now we can add &amp;lt;config-variants&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
  &amp;lt;config-variants&amp;gt;&lt;br /&gt;
    &amp;lt;variant&amp;gt;&lt;br /&gt;
&amp;lt;!-- id must be a single word, no special chars, useable as hash key in Nasal --&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;jet2&amp;lt;/id&amp;gt; &lt;br /&gt;
&amp;lt;!-- text for the GUI dialog --&amp;gt;&lt;br /&gt;
      &amp;lt;description&amp;gt;Airliner (two engines)&amp;lt;/description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
  add property mappings for this variant. &lt;br /&gt;
  &amp;lt;input&amp;gt; is used in the &amp;lt;event&amp;gt; elements&lt;br /&gt;
  &amp;lt;output&amp;gt; is the target property input will be aliased to&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[0]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/flight/speed-brake&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[3]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[1]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever-down-button[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/cutoff&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever-down-button[3]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[1]/cutoff&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/reverser[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/reverser&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/reverser[3]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[1]/reverser&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[5]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/flaps-lever-continuous&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
    &amp;lt;/variant&amp;gt;&lt;br /&gt;
    &amp;lt;variant&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;tm&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;description&amp;gt;Throttle/Mixture&amp;lt;/description&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[0]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[1]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/mixture&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
    &amp;lt;/variant&amp;gt;&lt;br /&gt;
    &amp;lt;variant&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;tpm&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;description&amp;gt;Throttle/Prop/Mixture&amp;lt;/description&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[0]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[1]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/propeller-pitch&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/mixture&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
    &amp;lt;/variant&amp;gt;   &lt;br /&gt;
  &amp;lt;/config-variants&amp;gt;&lt;br /&gt;
&amp;lt;!-- events cut; see latest version in FGDATA repository --&amp;gt;&lt;br /&gt;
&amp;lt;/PropertyList&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Voir aussi ==&lt;br /&gt;
[[USB-HID]]&lt;br /&gt;
&lt;br /&gt;
[[Honeycomb Input Devices]]&lt;br /&gt;
[[Category:Nasal]]&lt;br /&gt;
[[Category:Joysticks and Yokes]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/Input_helpers&amp;diff=143890</id>
		<title>Fr/Input helpers</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/Input_helpers&amp;diff=143890"/>
		<updated>2026-04-04T15:22:30Z</updated>

		<summary type="html">&lt;p&gt;Adaz: FR Translation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{BeingTranslated}}&lt;br /&gt;
== Aperçu ==&lt;br /&gt;
Cette page traite du code Nasal destiné aux périphériques d&#039;entrée tels que les manettes, les manches, les manettes des gaz et les pédales. Si de petits scripts peuvent être facilement ajoutés directement dans la balise &amp;lt;code&amp;gt;&amp;lt;binding&amp;gt;&amp;lt;/code&amp;gt; de la manette, les blocs de code plus volumineux doivent être organisés un peu différemment. &lt;br /&gt;
&lt;br /&gt;
Comme toujours : « ne vous répétez pas » = pour faciliter la vie de tout le monde, le code ne doit pas être copié-collé, mais regroupé dans un emplacement « centralisé » sous forme de fonctions ou de classes, et appelé chaque fois que cela est nécessaire, où que ce soit. De cette façon, la maintenance ne s&#039;effectue qu&#039;à un seul endroit.&lt;br /&gt;
&lt;br /&gt;
== Le namespace input_helpers ==&lt;br /&gt;
Le code &#039;&#039;&#039;&#039;&#039;Input helper&#039;&#039;&#039;&#039;&#039; doit être stocké dans &#039;&#039;&#039;FGDATA/Nasal/input_helpers/&amp;lt;vendorname&amp;gt;.nas.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Pour éviter tout conflit, il convient de créer un fichier par fournisseur et, dans chacun de ces fichiers, un espace de noms (hachage) dédié à ce fournisseur.&lt;br /&gt;
&lt;br /&gt;
Voir honeycomb.nas ci-dessous comme exemple :&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
# &lt;br /&gt;
# Helpers for Honeycomb input devices&lt;br /&gt;
#&lt;br /&gt;
&lt;br /&gt;
# !!! Abbreviated sample !!! &lt;br /&gt;
# Check FGDATA repository for latest full version&lt;br /&gt;
&lt;br /&gt;
# namespace&lt;br /&gt;
var honeycomb = {};&lt;br /&gt;
&lt;br /&gt;
# Helper for the Honeycomb Alpha Yoke&lt;br /&gt;
honeycomb[&amp;quot;alpha&amp;quot;] = {&lt;br /&gt;
    new: func(cfgnode) {&lt;br /&gt;
        var m = {&lt;br /&gt;
            parents: [me, input_helpers.config_manager.new(cfgnode)],&lt;br /&gt;
        };&lt;br /&gt;
        return m;&lt;br /&gt;
    },&lt;br /&gt;
    # abreviated file&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== config_manager - prise en charge des variantes de configuration pour un appareil ==&lt;br /&gt;
La classe &amp;lt;code&amp;gt;input_helpers.config_manager&amp;lt;/code&amp;gt; est conçue pour permettre de définir différentes configurations pour un périphérique d&#039;entrée au sein d&#039;un seul fichier de configuration XML. &lt;br /&gt;
&lt;br /&gt;
Pourquoi ? Prenons l&#039;exemple du quadrant de commande Honeycomb Bravo. Il prend en charge six manettes dotées de « têtes » interchangeables : un jeu pour les avions de ligne et un autre pour les modèles monomoteurs et bimoteurs de l&#039;aviation générale. Vous pouvez ainsi configurer le matériel avec des manettes allant d&#039;une seule commande de puissance/mélange jusqu&#039;à quatre moteurs à réaction.&lt;br /&gt;
&lt;br /&gt;
Il vous faut maintenant trouver un moyen d&#039;indiquer à FlightGear quels leviers vous avez installés sur votre quadrant de commande des gaz et comment interpréter les actions sur ces leviers. Pour éviter d&#039;avoir à jongler avec des fichiers XML, nous avons simplement intégré le nombre limité de variantes dans le fichier XML et laissé le gestionnaire de configuration s&#039;occuper du reste.&lt;br /&gt;
&lt;br /&gt;
Si des fichiers XML contenant des balises &amp;lt;code&amp;gt;&amp;lt;config-variants&amp;gt;&amp;lt;/code&amp;gt; sont chargés au démarrage, config_manager affichera une fenêtre contextuelle pour signaler ce fait et ouvrira une boîte de dialogue permettant de sélectionner la variante de configuration souhaitée. &lt;br /&gt;
&lt;br /&gt;
La sélection est ajoutée au fichier &#039;&#039;&#039;&#039;&#039;aircraft.data&#039;&#039;&#039;&#039;&#039; et est ainsi enregistrée pour chaque avion, pour plus de souplesse.&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;!-- shortened version for illustration only --&amp;gt;&lt;br /&gt;
&amp;lt;PropertyList&amp;gt;&lt;br /&gt;
  &amp;lt;vendor-name&amp;gt;honeycomb&amp;lt;/vendor-name&amp;gt;&lt;br /&gt;
  &amp;lt;model-name&amp;gt;bravo&amp;lt;/model-name&amp;gt;&lt;br /&gt;
  &amp;lt;name&amp;gt;Honeycomb Aeronautical Bravo Throttle Quadrant&amp;lt;/name&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;debug-events type=&amp;quot;bool&amp;quot;&amp;gt;false&amp;lt;/debug-events&amp;gt;&lt;br /&gt;
  &amp;lt;hid-debug-raw type=&amp;quot;bool&amp;quot;&amp;gt;false&amp;lt;/hid-debug-raw&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
  we need &amp;lt;nasal&amp;gt; to load the config_manager or a vendor&lt;br /&gt;
  specific derived class of it&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
  &amp;lt;nasal&amp;gt;&lt;br /&gt;
    &amp;lt;open&amp;gt;&lt;br /&gt;
      &amp;lt;![CDATA[&lt;br /&gt;
      print(&amp;quot;Honeycomb Bravo Nasal (event) open&amp;quot;);&lt;br /&gt;
      bravo = input_helpers.honeycomb.bravo.new(cmdarg());&lt;br /&gt;
      ]]&amp;gt;&lt;br /&gt;
    &amp;lt;/open&amp;gt;&lt;br /&gt;
    &amp;lt;close&amp;gt;&lt;br /&gt;
      &amp;lt;![CDATA[&lt;br /&gt;
      print(&amp;quot;Honeycomb Bravo Nasal (event) close&amp;quot;);&lt;br /&gt;
      if (ishash(bravo) and isfunc(bravo[&#039;close&#039;]))&lt;br /&gt;
        bravo.close(cmdarg());&lt;br /&gt;
      ]]&amp;gt;&lt;br /&gt;
    &amp;lt;/close&amp;gt;&lt;br /&gt;
  &amp;lt;/nasal&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
  now we can add &amp;lt;config-variants&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
  &amp;lt;config-variants&amp;gt;&lt;br /&gt;
    &amp;lt;variant&amp;gt;&lt;br /&gt;
&amp;lt;!-- id must be a single word, no special chars, useable as hash key in Nasal --&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;jet2&amp;lt;/id&amp;gt; &lt;br /&gt;
&amp;lt;!-- text for the GUI dialog --&amp;gt;&lt;br /&gt;
      &amp;lt;description&amp;gt;Airliner (two engines)&amp;lt;/description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
  add property mappings for this variant. &lt;br /&gt;
  &amp;lt;input&amp;gt; is used in the &amp;lt;event&amp;gt; elements&lt;br /&gt;
  &amp;lt;output&amp;gt; is the target property input will be aliased to&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[0]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/flight/speed-brake&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[3]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[1]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever-down-button[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/cutoff&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever-down-button[3]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[1]/cutoff&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/reverser[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/reverser&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/reverser[3]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[1]/reverser&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[5]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/flaps-lever-continuous&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
    &amp;lt;/variant&amp;gt;&lt;br /&gt;
    &amp;lt;variant&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;tm&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;description&amp;gt;Throttle/Mixture&amp;lt;/description&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[0]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[1]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/mixture&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
    &amp;lt;/variant&amp;gt;&lt;br /&gt;
    &amp;lt;variant&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;tpm&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;description&amp;gt;Throttle/Prop/Mixture&amp;lt;/description&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[0]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[1]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/propeller-pitch&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/mixture&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
    &amp;lt;/variant&amp;gt;   &lt;br /&gt;
  &amp;lt;/config-variants&amp;gt;&lt;br /&gt;
&amp;lt;!-- events cut; see latest version in FGDATA repository --&amp;gt;&lt;br /&gt;
&amp;lt;/PropertyList&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Voir aussi ==&lt;br /&gt;
[[USB-HID]]&lt;br /&gt;
&lt;br /&gt;
[[Honeycomb Input Devices]]&lt;br /&gt;
[[Category:Nasal]]&lt;br /&gt;
[[Category:Joysticks and Yokes]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Input_helpers&amp;diff=143889</id>
		<title>Input helpers</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Input_helpers&amp;diff=143889"/>
		<updated>2026-04-04T14:57:39Z</updated>

		<summary type="html">&lt;p&gt;Adaz: add FR translation link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Overview ==&lt;br /&gt;
This page is about Nasal script code for input devices like joysticks, yokes, throttle quadrants and pedals. While small scripts can be easily added directly into joystick &amp;lt;binding&amp;gt;, larger code blocks should be organized a bit differently. &lt;br /&gt;
&lt;br /&gt;
As always: &amp;quot;do not repeat yourself&amp;quot; = to make everyones live easier, code should not be copy&amp;amp;pasted but put into a &amp;quot;central&amp;quot; place as functions or classes and be called whenever, wherever needed. This way maintenance has to be done only in one place.&lt;br /&gt;
&lt;br /&gt;
== input_helpers namespace ==&lt;br /&gt;
Input helper code should be stored in FGDATA/Nasal/input_helpers/&amp;lt;vendorname&amp;gt;.nas&lt;br /&gt;
&lt;br /&gt;
To avoid clashes, there should be one file per vendor and in each of these files a namespace (hash) for this vendor shall be created.&lt;br /&gt;
&lt;br /&gt;
See honeycomb.nas for an example:&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
# &lt;br /&gt;
# Helpers for Honeycomb input devices&lt;br /&gt;
#&lt;br /&gt;
&lt;br /&gt;
# !!! Abbreviated sample !!! &lt;br /&gt;
# Check FGDATA repository for latest full version&lt;br /&gt;
&lt;br /&gt;
# namespace&lt;br /&gt;
var honeycomb = {};&lt;br /&gt;
&lt;br /&gt;
# Helper for the Honeycomb Alpha Yoke&lt;br /&gt;
honeycomb[&amp;quot;alpha&amp;quot;] = {&lt;br /&gt;
    new: func(cfgnode) {&lt;br /&gt;
        var m = {&lt;br /&gt;
            parents: [me, input_helpers.config_manager.new(cfgnode)],&lt;br /&gt;
        };&lt;br /&gt;
        return m;&lt;br /&gt;
    },&lt;br /&gt;
    # abreviated file&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== config_manager - supporting config variants for a device ==&lt;br /&gt;
The &amp;lt;code&amp;gt;input_helpers.config_manager&amp;lt;/code&amp;gt; class is designed to allow configuration variants for an input device to be defined within a single XML config file.&lt;br /&gt;
&lt;br /&gt;
Why? Take the Honeycomb Bravo throttle quadrant as an example. It supports six levers with replaceable lever &amp;quot;heads&amp;quot;, one set for airliners and another one for GA single and dual engine models, so you can configure the hardware with levers from single throttle/mixture up to four jet engines.&lt;br /&gt;
&lt;br /&gt;
Now, you need a way to tell FlightGear, what levers you put onto your throttle quadrant and how to interprete the lever inputs. To avoid juggling with XML files, we simply put the limited number of variants into the XML and let the config_manager do the rest.&lt;br /&gt;
&lt;br /&gt;
If XML files containing &amp;lt;config-variants&amp;gt; are loaded during startup, config_manager will show a popup hint about this fact and open a dialog to select the desired config variant. &lt;br /&gt;
&lt;br /&gt;
The selection is added to aircraft.data and thus is safed per aircraft for convenience.&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;!-- shortened version for illustration only --&amp;gt;&lt;br /&gt;
&amp;lt;PropertyList&amp;gt;&lt;br /&gt;
  &amp;lt;vendor-name&amp;gt;honeycomb&amp;lt;/vendor-name&amp;gt;&lt;br /&gt;
  &amp;lt;model-name&amp;gt;bravo&amp;lt;/model-name&amp;gt;&lt;br /&gt;
  &amp;lt;name&amp;gt;Honeycomb Aeronautical Bravo Throttle Quadrant&amp;lt;/name&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;debug-events type=&amp;quot;bool&amp;quot;&amp;gt;false&amp;lt;/debug-events&amp;gt;&lt;br /&gt;
  &amp;lt;hid-debug-raw type=&amp;quot;bool&amp;quot;&amp;gt;false&amp;lt;/hid-debug-raw&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
  we need &amp;lt;nasal&amp;gt; to load the config_manager or a vendor&lt;br /&gt;
  specific derived class of it&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
  &amp;lt;nasal&amp;gt;&lt;br /&gt;
    &amp;lt;open&amp;gt;&lt;br /&gt;
      &amp;lt;![CDATA[&lt;br /&gt;
      print(&amp;quot;Honeycomb Bravo Nasal (event) open&amp;quot;);&lt;br /&gt;
      bravo = input_helpers.honeycomb.bravo.new(cmdarg());&lt;br /&gt;
      ]]&amp;gt;&lt;br /&gt;
    &amp;lt;/open&amp;gt;&lt;br /&gt;
    &amp;lt;close&amp;gt;&lt;br /&gt;
      &amp;lt;![CDATA[&lt;br /&gt;
      print(&amp;quot;Honeycomb Bravo Nasal (event) close&amp;quot;);&lt;br /&gt;
      if (ishash(bravo) and isfunc(bravo[&#039;close&#039;]))&lt;br /&gt;
        bravo.close(cmdarg());&lt;br /&gt;
      ]]&amp;gt;&lt;br /&gt;
    &amp;lt;/close&amp;gt;&lt;br /&gt;
  &amp;lt;/nasal&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
  now we can add &amp;lt;config-variants&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
  &amp;lt;config-variants&amp;gt;&lt;br /&gt;
    &amp;lt;variant&amp;gt;&lt;br /&gt;
&amp;lt;!-- id must be a single word, no special chars, useable as hash key in Nasal --&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;jet2&amp;lt;/id&amp;gt; &lt;br /&gt;
&amp;lt;!-- text for the GUI dialog --&amp;gt;&lt;br /&gt;
      &amp;lt;description&amp;gt;Airliner (two engines)&amp;lt;/description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
  add property mappings for this variant. &lt;br /&gt;
  &amp;lt;input&amp;gt; is used in the &amp;lt;event&amp;gt; elements&lt;br /&gt;
  &amp;lt;output&amp;gt; is the target property input will be aliased to&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[0]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/flight/speed-brake&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[3]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[1]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever-down-button[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/cutoff&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever-down-button[3]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[1]/cutoff&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/reverser[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/reverser&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/reverser[3]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[1]/reverser&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[5]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/flaps-lever-continuous&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
    &amp;lt;/variant&amp;gt;&lt;br /&gt;
    &amp;lt;variant&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;tm&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;description&amp;gt;Throttle/Mixture&amp;lt;/description&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[0]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[1]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/mixture&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
    &amp;lt;/variant&amp;gt;&lt;br /&gt;
    &amp;lt;variant&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;tpm&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;description&amp;gt;Throttle/Prop/Mixture&amp;lt;/description&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[0]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[1]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/propeller-pitch&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/mixture&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
    &amp;lt;/variant&amp;gt;   &lt;br /&gt;
  &amp;lt;/config-variants&amp;gt;&lt;br /&gt;
&amp;lt;!-- events cut; see latest version in FGDATA repository --&amp;gt;&lt;br /&gt;
&amp;lt;/PropertyList&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== see also ==&lt;br /&gt;
[[USB-HID]]&lt;br /&gt;
&lt;br /&gt;
[[Honeycomb Input Devices]]&lt;br /&gt;
[[Category:Nasal]]&lt;br /&gt;
[[Category:Joysticks and Yokes]]&lt;br /&gt;
&lt;br /&gt;
[[fr:Input_helpers]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/Input_helpers&amp;diff=143888</id>
		<title>Fr/Input helpers</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/Input_helpers&amp;diff=143888"/>
		<updated>2026-04-04T14:56:26Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Created page with &amp;quot; {{BeingTranslated}} == Overview == This page is about Nasal script code for input devices like joysticks, yokes, throttle quadrants and pedals. While small scripts can be easily added directly into joystick &amp;lt;binding&amp;gt;, larger code blocks should be organized a bit differently.   As always: &amp;quot;do not repeat yourself&amp;quot; = to make everyones live easier, code should not be copy&amp;amp;pasted but put into a &amp;quot;central&amp;quot; place as functions or classes and be called whenever, wherever needed....&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{BeingTranslated}}&lt;br /&gt;
== Overview ==&lt;br /&gt;
This page is about Nasal script code for input devices like joysticks, yokes, throttle quadrants and pedals. While small scripts can be easily added directly into joystick &amp;lt;binding&amp;gt;, larger code blocks should be organized a bit differently. &lt;br /&gt;
&lt;br /&gt;
As always: &amp;quot;do not repeat yourself&amp;quot; = to make everyones live easier, code should not be copy&amp;amp;pasted but put into a &amp;quot;central&amp;quot; place as functions or classes and be called whenever, wherever needed. This way maintenance has to be done only in one place.&lt;br /&gt;
&lt;br /&gt;
== input_helpers namespace ==&lt;br /&gt;
Input helper code should be stored in FGDATA/Nasal/input_helpers/&amp;lt;vendorname&amp;gt;.nas&lt;br /&gt;
&lt;br /&gt;
To avoid clashes, there should be one file per vendor and in each of these files a namespace (hash) for this vendor shall be created.&lt;br /&gt;
&lt;br /&gt;
See honeycomb.nas for an example:&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot;&amp;gt;&lt;br /&gt;
# &lt;br /&gt;
# Helpers for Honeycomb input devices&lt;br /&gt;
#&lt;br /&gt;
&lt;br /&gt;
# !!! Abbreviated sample !!! &lt;br /&gt;
# Check FGDATA repository for latest full version&lt;br /&gt;
&lt;br /&gt;
# namespace&lt;br /&gt;
var honeycomb = {};&lt;br /&gt;
&lt;br /&gt;
# Helper for the Honeycomb Alpha Yoke&lt;br /&gt;
honeycomb[&amp;quot;alpha&amp;quot;] = {&lt;br /&gt;
    new: func(cfgnode) {&lt;br /&gt;
        var m = {&lt;br /&gt;
            parents: [me, input_helpers.config_manager.new(cfgnode)],&lt;br /&gt;
        };&lt;br /&gt;
        return m;&lt;br /&gt;
    },&lt;br /&gt;
    # abreviated file&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== config_manager - supporting config variants for a device ==&lt;br /&gt;
The &amp;lt;code&amp;gt;input_helpers.config_manager&amp;lt;/code&amp;gt; class is designed to allow configuration variants for an input device to be defined within a single XML config file.&lt;br /&gt;
&lt;br /&gt;
Why? Take the Honeycomb Bravo throttle quadrant as an example. It supports six levers with replaceable lever &amp;quot;heads&amp;quot;, one set for airliners and another one for GA single and dual engine models, so you can configure the hardware with levers from single throttle/mixture up to four jet engines.&lt;br /&gt;
&lt;br /&gt;
Now, you need a way to tell FlightGear, what levers you put onto your throttle quadrant and how to interprete the lever inputs. To avoid juggling with XML files, we simply put the limited number of variants into the XML and let the config_manager do the rest.&lt;br /&gt;
&lt;br /&gt;
If XML files containing &amp;lt;config-variants&amp;gt; are loaded during startup, config_manager will show a popup hint about this fact and open a dialog to select the desired config variant. &lt;br /&gt;
&lt;br /&gt;
The selection is added to aircraft.data and thus is safed per aircraft for convenience.&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;!-- shortened version for illustration only --&amp;gt;&lt;br /&gt;
&amp;lt;PropertyList&amp;gt;&lt;br /&gt;
  &amp;lt;vendor-name&amp;gt;honeycomb&amp;lt;/vendor-name&amp;gt;&lt;br /&gt;
  &amp;lt;model-name&amp;gt;bravo&amp;lt;/model-name&amp;gt;&lt;br /&gt;
  &amp;lt;name&amp;gt;Honeycomb Aeronautical Bravo Throttle Quadrant&amp;lt;/name&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;debug-events type=&amp;quot;bool&amp;quot;&amp;gt;false&amp;lt;/debug-events&amp;gt;&lt;br /&gt;
  &amp;lt;hid-debug-raw type=&amp;quot;bool&amp;quot;&amp;gt;false&amp;lt;/hid-debug-raw&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
  we need &amp;lt;nasal&amp;gt; to load the config_manager or a vendor&lt;br /&gt;
  specific derived class of it&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
  &amp;lt;nasal&amp;gt;&lt;br /&gt;
    &amp;lt;open&amp;gt;&lt;br /&gt;
      &amp;lt;![CDATA[&lt;br /&gt;
      print(&amp;quot;Honeycomb Bravo Nasal (event) open&amp;quot;);&lt;br /&gt;
      bravo = input_helpers.honeycomb.bravo.new(cmdarg());&lt;br /&gt;
      ]]&amp;gt;&lt;br /&gt;
    &amp;lt;/open&amp;gt;&lt;br /&gt;
    &amp;lt;close&amp;gt;&lt;br /&gt;
      &amp;lt;![CDATA[&lt;br /&gt;
      print(&amp;quot;Honeycomb Bravo Nasal (event) close&amp;quot;);&lt;br /&gt;
      if (ishash(bravo) and isfunc(bravo[&#039;close&#039;]))&lt;br /&gt;
        bravo.close(cmdarg());&lt;br /&gt;
      ]]&amp;gt;&lt;br /&gt;
    &amp;lt;/close&amp;gt;&lt;br /&gt;
  &amp;lt;/nasal&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
  now we can add &amp;lt;config-variants&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
  &amp;lt;config-variants&amp;gt;&lt;br /&gt;
    &amp;lt;variant&amp;gt;&lt;br /&gt;
&amp;lt;!-- id must be a single word, no special chars, useable as hash key in Nasal --&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;jet2&amp;lt;/id&amp;gt; &lt;br /&gt;
&amp;lt;!-- text for the GUI dialog --&amp;gt;&lt;br /&gt;
      &amp;lt;description&amp;gt;Airliner (two engines)&amp;lt;/description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
  add property mappings for this variant. &lt;br /&gt;
  &amp;lt;input&amp;gt; is used in the &amp;lt;event&amp;gt; elements&lt;br /&gt;
  &amp;lt;output&amp;gt; is the target property input will be aliased to&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[0]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/flight/speed-brake&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[3]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[1]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever-down-button[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/cutoff&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever-down-button[3]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[1]/cutoff&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/reverser[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/reverser&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/reverser[3]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[1]/reverser&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[5]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/flaps-lever-continuous&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
    &amp;lt;/variant&amp;gt;&lt;br /&gt;
    &amp;lt;variant&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;tm&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;description&amp;gt;Throttle/Mixture&amp;lt;/description&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[0]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[1]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/mixture&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
    &amp;lt;/variant&amp;gt;&lt;br /&gt;
    &amp;lt;variant&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;tpm&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;description&amp;gt;Throttle/Prop/Mixture&amp;lt;/description&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[0]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/throttle&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[1]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/propeller-pitch&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
      &amp;lt;mapping&amp;gt;&lt;br /&gt;
        &amp;lt;input&amp;gt;/input/honeycomb/bravo/lever[2]&amp;lt;/input&amp;gt;&lt;br /&gt;
        &amp;lt;output&amp;gt;/controls/engines/engine[0]/mixture&amp;lt;/output&amp;gt;&lt;br /&gt;
      &amp;lt;/mapping&amp;gt;&lt;br /&gt;
    &amp;lt;/variant&amp;gt;   &lt;br /&gt;
  &amp;lt;/config-variants&amp;gt;&lt;br /&gt;
&amp;lt;!-- events cut; see latest version in FGDATA repository --&amp;gt;&lt;br /&gt;
&amp;lt;/PropertyList&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== see also ==&lt;br /&gt;
[[USB-HID]]&lt;br /&gt;
&lt;br /&gt;
[[Honeycomb Input Devices]]&lt;br /&gt;
[[Category:Nasal]]&lt;br /&gt;
[[Category:Joysticks and Yokes]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/FlightGear&amp;diff=143887</id>
		<title>Fr/FlightGear</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/FlightGear&amp;diff=143887"/>
		<updated>2026-04-04T13:13:58Z</updated>

		<summary type="html">&lt;p&gt;Adaz: /* Décors */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox Software&lt;br /&gt;
| title             = Simulateur de Vol FlightGear&lt;br /&gt;
| logo              = FlightGear logo.png&lt;br /&gt;
| logosize          = 200px&lt;br /&gt;
| image             = Boeing 777-200ER cockpit.jpg&lt;br /&gt;
| alt               = Le cockpit du [[Boeing 777-200ER]]&lt;br /&gt;
| developedby       = FlightGear développeurs &amp;amp; contributeurs&lt;br /&gt;
| initialrelease    = 17 juillet 1997&lt;br /&gt;
| latestrelease     = {{current release|full}} ({{#time: j F Y |{{current release|fulldate}}}})&lt;br /&gt;
|writtenin         = C/C++/Nasal&lt;br /&gt;
|os                = Windows, macOS, Linux, and FreeBSD&lt;br /&gt;
| platform          = Multiplateforme&lt;br /&gt;
| developmentstatus = Actif (1996-ajourd&#039;hui)&lt;br /&gt;
| type              = Simulateur de vol&lt;br /&gt;
| license           = [[GNU General Public License]]&lt;br /&gt;
| website           = http://www.flightgear.org/&lt;br /&gt;
}}[[File:OV10A-NASA-in-action.jpg|thumb|right|270px|NASA [[OV-10]] in FlightGear 1.0]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;FlightGear&#039;&#039;&#039; ( Souvent nommé &#039;&#039;&#039;Flightgear&#039;&#039;&#039; ou &#039;&#039;&#039;FGFS&#039;&#039;&#039;) est un simulateur de vol sophistiqué, libre, et créé par des bénévoles. FlightGear est distribué sous les termes de la [[GNU General Public License]]. Le logiciel est principalement codé en C++.&lt;br /&gt;
&lt;br /&gt;
Depuis le lancement du projet en 1996, des versions de plus en plus détaillées et réalistes de FlightGear sont publiées chaque année.&lt;br /&gt;
&lt;br /&gt;
La dernière version publique est [https://www.flightgear.org/download disponible en téléchargement gratuit], avec des paquets faciles à installer pour divers systèmes d&#039;exploitation, notamment Microsoft Windows, macOS et Linux.&lt;br /&gt;
&lt;br /&gt;
== Histoire ==&lt;br /&gt;
{{main article|Fr/FlightGear history}}&lt;br /&gt;
&lt;br /&gt;
Le développement de FlightGear a débuté en 1996 par une proposition en ligne, utilisant un code graphique 3D personnalisé. Le développement d&#039;une version basée sur [[OpenGL]] a été mené par Curtis Olson à partir de 1997. De nombreuses personnes ont contribué au projet au cours des années qui ont suivi sa création.&lt;br /&gt;
&lt;br /&gt;
FlightGear a intégré d&#039;autres ressources du monde libre, notamment le modèle de vol [[LaRCsim]] de la NASA et des données altimétriques librement accessibles. Les premiers binaires fonctionnels, utilisant OpenGL pour le rendu graphique 3D, ont vu le jour en 1997.  Le développement intensif de nouvelles versions pendant plusieurs années a abouti à des versions de plus en plus stables et avancées. En 2001, l&#039;équipe publiait régulièrement de nouvelles versions bêta, et en 2005, la maturité du logiciel a donné lieu à des critiques plus nombreuses et à une popularité croissante. L&#039;année 2007 a marqué la sortie officielle de la phase de développement bêta avec la publication de la version 1.0.0, dix ans après la première version de FlightGear en 1997.&lt;br /&gt;
&lt;br /&gt;
[[File:FG-A-10.jpg|thumb|270px|Tableau de bord 3D du [[A-10]] dans sa version 1.0.0 en 2008]]&lt;br /&gt;
&lt;br /&gt;
En 2008, la version 1.9.0 de FlightGear introduit un majeur changement de [[PLIB]] à [[OSG]], qui causa temporairement la perte de fonctionalités comme les nuages 3D ou les ombres, tandis que les nouvelles, comme les particules, impacte sur le degré de réalisme de la simulation. &lt;br /&gt;
&lt;br /&gt;
== Software ==&lt;br /&gt;
&lt;br /&gt;
Le moteur de simulation dans FlightGear est appelé [[SimGear]]. Il est utile à la fois pour l&#039;utilisateur normal et dans les milieux universitaires et de recherche, pour le developpement et la recherche d&#039;idées sur la simulation de vol.&lt;br /&gt;
&lt;br /&gt;
La flexibité de FlightGear est illustrée par la grande quantité d&#039;appareils, qui y sont disponibles: Nous pouvons compter plusieurs catégories, dont: [[:Category:Gliders|glider]]s,[[Helicopter]]s, [[:Category:Airliners|airliners]],[[Military aircraft|fighter jets]]. Ces modèles ont été créés par des développeurs différents.&lt;br /&gt;
&lt;br /&gt;
Les aéronefs de Flightgear utilisent un au moins des trois modèles de vols JSBSim, YAsim, ou UIUC depuis la version 0.9.10. Pour l&#039;instant seulement un seul moteur de simulation est utilisé, TerraGear. Les effects météo (cf.[[Weather]]) sont très complexes et réalistes, de même que les effects visuels qui y sont liés: nuages 3D, effects lumineux, effects d&#039;horizon, et heure de la journée.&lt;br /&gt;
&lt;br /&gt;
=== Flight Dynamics Models, alias...FDM ===&lt;br /&gt;
&lt;br /&gt;
Le modèle de vol [[Fr/Modèles de dynamique de vol|Flight Dynamics Models]] ou FDM simule le comportement de l&#039;avion dans une situation précise. FlightGear utilise beaucoup de scripts et de FDM codés de manière interne au programme . &lt;br /&gt;
Tout aéronef &#039;&#039;doit&#039;&#039; être programmé pour obéir à un de ces modèles de vol. Actuellement FlightGear est le seul simulateur utilisant autant de FDMs, et dont au moins trois sont créés de manière spécifique pour le logiciel.&lt;br /&gt;
Les plus anciennes versions utilisaient [[LaRCsim]], FDM créé par la NASA, mais il fut remplacé par des modèles plus flexibles. &lt;br /&gt;
&lt;br /&gt;
* [[JSBSim]] - Depuis 2000, le FDM par défaut de Flightgear.&lt;br /&gt;
* [[YASim]] - Autre FDM utilisant une approche différente. Fait partie de la version 0.7.9 en 2002.&lt;br /&gt;
* [[UIUC]] - Developpé par le &#039;&#039;UIUC Applied Aerodynamics Group&#039;&#039; à l&#039; Université de l&#039;Illinois à Urbana-Champaign, a également utilisé LaRCsim. Autrefois très répandu, il n&#039;est plus inclus dans FlightGear.&lt;br /&gt;
&lt;br /&gt;
* FlightGear peut aussi être configuré pour utiliser des entrées de FDM externes, comme [[MATLAB]].&lt;br /&gt;
* D&#039;autres FDM marginaux pour un aéronef spécifique ont été écrits, comme les &amp;quot;plus légers que l&#039;air&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Aéronefs ===&lt;br /&gt;
{{Main article|Table of models}}&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
FlightGear commença avec un seul avion issu du FDM LaRCsim de la NASA, Navion, qui a été remplacé par un [[Cessna 172]] dès l&#039;an 2000. Les développements de l&#039;UIUC et de JSBsim ont apporté plusieurs autres avions, tout comme le développement de YASim, qui est depuis devenu le principal modèle de dynamique de vol (FDM) utilisé dans FG. Plus de 400 avions, dans plus de 900 livrées uniques, sont disponibles pour la version 2.12, bien que seuls quelques-uns soient inclus dans le package de base.&lt;br /&gt;
[[File:EHAM.jpg|thumb|270px|[[Boeing 737-300|Boeing 733]] parqué dans le décor [[EHAM]]]]&lt;br /&gt;
&lt;br /&gt;
=== Décors ===&lt;br /&gt;
{{Main article|Fr/Scenery}}&lt;br /&gt;
Le projet [[world scenery]] de FlightGear contient des données d&#039;altitude et de classification du terrain pour le monde entier. Les objets — tels que les terminaux, les éoliennes et les ponts — sont regroupés dans la [[FlightGear Scenery Database|base de données des décors]].&lt;br /&gt;
&lt;br /&gt;
=== Mise en réseau et multi-écrans ===&lt;br /&gt;
&lt;br /&gt;
Plusieurs options de mise en réseau permettent à FlightGear de communiquer avec d&#039;autres instances de FlightGear. Un protocole [[Howto:Multiplayer|multijoueur]] est disponible pour utiliser FlightGear sur un réseau local dans un environnement multi-avions. Cela peut servir à simuler des vols en formation ou une [[ATC|tour de contrôle]]. Le mode multijoueur a rapidement été étendu pour permettre de jouer via Internet. Parmi les autres fonctionnalités, on trouve une carte dynamique basée sur Google Maps qui permet aux utilisateurs de voir où se trouvent les autres joueurs.&lt;br /&gt;
Plusieurs instances de FlightGear peuvent être synchronisées pour permettre une configuration multi-écrans. Si toutes les instances fonctionnent de manière constante à la même fréquence d&#039;images, il est possible d&#039;obtenir une synchronisation précise et fluide entre les écrans.&lt;br /&gt;
&lt;br /&gt;
==Applications et usages==&lt;br /&gt;
{{Main article|Professional and educational FlightGear users}}&lt;br /&gt;
FlightGear a été utilisé dans une série de projets dans le milieu universitaire et de l&#039;industrie (y compris la NASA) ainsi que dans des simulateurs &amp;quot;maison&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Liens externes ==&lt;br /&gt;
{{Main article|Links}}&lt;br /&gt;
* [https://www.flightgear.org Site Web officiel]&lt;br /&gt;
* {{forum link|text=Forum}}&lt;br /&gt;
* {{tickets|Bug tracker}}&lt;br /&gt;
* [https://www.flightgear.org/blog/proposal-1-0/ Original FlightGear proposal]&lt;br /&gt;
	&lt;br /&gt;
* {{Wikipedia|FlightGear}}&lt;br /&gt;
&lt;br /&gt;
[[Category:FlightGear| ]]&lt;br /&gt;
&lt;br /&gt;
[[ca:FlightGear]]&lt;br /&gt;
[[de:FlightGear]]&lt;br /&gt;
[[en:FlightGear]]&lt;br /&gt;
[[es:FlightGear]]&lt;br /&gt;
[[it:FlightGear]]&lt;br /&gt;
[[nl:FlightGear]]&lt;br /&gt;
[[pl:FlightGear]]&lt;br /&gt;
[[pt:FlightGear]]&lt;br /&gt;
[[ru:FlightGear]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/FlightGear&amp;diff=143886</id>
		<title>Fr/FlightGear</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/FlightGear&amp;diff=143886"/>
		<updated>2026-04-04T13:12:21Z</updated>

		<summary type="html">&lt;p&gt;Adaz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox Software&lt;br /&gt;
| title             = Simulateur de Vol FlightGear&lt;br /&gt;
| logo              = FlightGear logo.png&lt;br /&gt;
| logosize          = 200px&lt;br /&gt;
| image             = Boeing 777-200ER cockpit.jpg&lt;br /&gt;
| alt               = Le cockpit du [[Boeing 777-200ER]]&lt;br /&gt;
| developedby       = FlightGear développeurs &amp;amp; contributeurs&lt;br /&gt;
| initialrelease    = 17 juillet 1997&lt;br /&gt;
| latestrelease     = {{current release|full}} ({{#time: j F Y |{{current release|fulldate}}}})&lt;br /&gt;
|writtenin         = C/C++/Nasal&lt;br /&gt;
|os                = Windows, macOS, Linux, and FreeBSD&lt;br /&gt;
| platform          = Multiplateforme&lt;br /&gt;
| developmentstatus = Actif (1996-ajourd&#039;hui)&lt;br /&gt;
| type              = Simulateur de vol&lt;br /&gt;
| license           = [[GNU General Public License]]&lt;br /&gt;
| website           = http://www.flightgear.org/&lt;br /&gt;
}}[[File:OV10A-NASA-in-action.jpg|thumb|right|270px|NASA [[OV-10]] in FlightGear 1.0]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;FlightGear&#039;&#039;&#039; ( Souvent nommé &#039;&#039;&#039;Flightgear&#039;&#039;&#039; ou &#039;&#039;&#039;FGFS&#039;&#039;&#039;) est un simulateur de vol sophistiqué, libre, et créé par des bénévoles. FlightGear est distribué sous les termes de la [[GNU General Public License]]. Le logiciel est principalement codé en C++.&lt;br /&gt;
&lt;br /&gt;
Depuis le lancement du projet en 1996, des versions de plus en plus détaillées et réalistes de FlightGear sont publiées chaque année.&lt;br /&gt;
&lt;br /&gt;
La dernière version publique est [https://www.flightgear.org/download disponible en téléchargement gratuit], avec des paquets faciles à installer pour divers systèmes d&#039;exploitation, notamment Microsoft Windows, macOS et Linux.&lt;br /&gt;
&lt;br /&gt;
== Histoire ==&lt;br /&gt;
{{main article|Fr/FlightGear history}}&lt;br /&gt;
&lt;br /&gt;
Le développement de FlightGear a débuté en 1996 par une proposition en ligne, utilisant un code graphique 3D personnalisé. Le développement d&#039;une version basée sur [[OpenGL]] a été mené par Curtis Olson à partir de 1997. De nombreuses personnes ont contribué au projet au cours des années qui ont suivi sa création.&lt;br /&gt;
&lt;br /&gt;
FlightGear a intégré d&#039;autres ressources du monde libre, notamment le modèle de vol [[LaRCsim]] de la NASA et des données altimétriques librement accessibles. Les premiers binaires fonctionnels, utilisant OpenGL pour le rendu graphique 3D, ont vu le jour en 1997.  Le développement intensif de nouvelles versions pendant plusieurs années a abouti à des versions de plus en plus stables et avancées. En 2001, l&#039;équipe publiait régulièrement de nouvelles versions bêta, et en 2005, la maturité du logiciel a donné lieu à des critiques plus nombreuses et à une popularité croissante. L&#039;année 2007 a marqué la sortie officielle de la phase de développement bêta avec la publication de la version 1.0.0, dix ans après la première version de FlightGear en 1997.&lt;br /&gt;
&lt;br /&gt;
[[File:FG-A-10.jpg|thumb|270px|Tableau de bord 3D du [[A-10]] dans sa version 1.0.0 en 2008]]&lt;br /&gt;
&lt;br /&gt;
En 2008, la version 1.9.0 de FlightGear introduit un majeur changement de [[PLIB]] à [[OSG]], qui causa temporairement la perte de fonctionalités comme les nuages 3D ou les ombres, tandis que les nouvelles, comme les particules, impacte sur le degré de réalisme de la simulation. &lt;br /&gt;
&lt;br /&gt;
== Software ==&lt;br /&gt;
&lt;br /&gt;
Le moteur de simulation dans FlightGear est appelé [[SimGear]]. Il est utile à la fois pour l&#039;utilisateur normal et dans les milieux universitaires et de recherche, pour le developpement et la recherche d&#039;idées sur la simulation de vol.&lt;br /&gt;
&lt;br /&gt;
La flexibité de FlightGear est illustrée par la grande quantité d&#039;appareils, qui y sont disponibles: Nous pouvons compter plusieurs catégories, dont: [[:Category:Gliders|glider]]s,[[Helicopter]]s, [[:Category:Airliners|airliners]],[[Military aircraft|fighter jets]]. Ces modèles ont été créés par des développeurs différents.&lt;br /&gt;
&lt;br /&gt;
Les aéronefs de Flightgear utilisent un au moins des trois modèles de vols JSBSim, YAsim, ou UIUC depuis la version 0.9.10. Pour l&#039;instant seulement un seul moteur de simulation est utilisé, TerraGear. Les effects météo (cf.[[Weather]]) sont très complexes et réalistes, de même que les effects visuels qui y sont liés: nuages 3D, effects lumineux, effects d&#039;horizon, et heure de la journée.&lt;br /&gt;
&lt;br /&gt;
=== Flight Dynamics Models, alias...FDM ===&lt;br /&gt;
&lt;br /&gt;
Le modèle de vol [[Fr/Modèles de dynamique de vol|Flight Dynamics Models]] ou FDM simule le comportement de l&#039;avion dans une situation précise. FlightGear utilise beaucoup de scripts et de FDM codés de manière interne au programme . &lt;br /&gt;
Tout aéronef &#039;&#039;doit&#039;&#039; être programmé pour obéir à un de ces modèles de vol. Actuellement FlightGear est le seul simulateur utilisant autant de FDMs, et dont au moins trois sont créés de manière spécifique pour le logiciel.&lt;br /&gt;
Les plus anciennes versions utilisaient [[LaRCsim]], FDM créé par la NASA, mais il fut remplacé par des modèles plus flexibles. &lt;br /&gt;
&lt;br /&gt;
* [[JSBSim]] - Depuis 2000, le FDM par défaut de Flightgear.&lt;br /&gt;
* [[YASim]] - Autre FDM utilisant une approche différente. Fait partie de la version 0.7.9 en 2002.&lt;br /&gt;
* [[UIUC]] - Developpé par le &#039;&#039;UIUC Applied Aerodynamics Group&#039;&#039; à l&#039; Université de l&#039;Illinois à Urbana-Champaign, a également utilisé LaRCsim. Autrefois très répandu, il n&#039;est plus inclus dans FlightGear.&lt;br /&gt;
&lt;br /&gt;
* FlightGear peut aussi être configuré pour utiliser des entrées de FDM externes, comme [[MATLAB]].&lt;br /&gt;
* D&#039;autres FDM marginaux pour un aéronef spécifique ont été écrits, comme les &amp;quot;plus légers que l&#039;air&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Aéronefs ===&lt;br /&gt;
{{Main article|Table of models}}&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
FlightGear commença avec un seul avion issu du FDM LaRCsim de la NASA, Navion, qui a été remplacé par un [[Cessna 172]] dès l&#039;an 2000. Les développements de l&#039;UIUC et de JSBsim ont apporté plusieurs autres avions, tout comme le développement de YASim, qui est depuis devenu le principal modèle de dynamique de vol (FDM) utilisé dans FG. Plus de 400 avions, dans plus de 900 livrées uniques, sont disponibles pour la version 2.12, bien que seuls quelques-uns soient inclus dans le package de base.&lt;br /&gt;
[[File:EHAM.jpg|thumb|270px|[[Boeing 737-300|Boeing 733]] parqué dans le décor [[EHAM]]]]&lt;br /&gt;
&lt;br /&gt;
=== Décors ===&lt;br /&gt;
{{Main article|Scenery}}&lt;br /&gt;
Le projet [[world scenery]] de FlightGear contient des données d&#039;altitude et de classification du terrain pour le monde entier. Les objets — tels que les terminaux, les éoliennes et les ponts — sont regroupés dans la [[FlightGear Scenery Database|base de données des décors]].&lt;br /&gt;
&lt;br /&gt;
=== Mise en réseau et multi-écrans ===&lt;br /&gt;
&lt;br /&gt;
Plusieurs options de mise en réseau permettent à FlightGear de communiquer avec d&#039;autres instances de FlightGear. Un protocole [[Howto:Multiplayer|multijoueur]] est disponible pour utiliser FlightGear sur un réseau local dans un environnement multi-avions. Cela peut servir à simuler des vols en formation ou une [[ATC|tour de contrôle]]. Le mode multijoueur a rapidement été étendu pour permettre de jouer via Internet. Parmi les autres fonctionnalités, on trouve une carte dynamique basée sur Google Maps qui permet aux utilisateurs de voir où se trouvent les autres joueurs.&lt;br /&gt;
Plusieurs instances de FlightGear peuvent être synchronisées pour permettre une configuration multi-écrans. Si toutes les instances fonctionnent de manière constante à la même fréquence d&#039;images, il est possible d&#039;obtenir une synchronisation précise et fluide entre les écrans.&lt;br /&gt;
&lt;br /&gt;
==Applications et usages==&lt;br /&gt;
{{Main article|Professional and educational FlightGear users}}&lt;br /&gt;
FlightGear a été utilisé dans une série de projets dans le milieu universitaire et de l&#039;industrie (y compris la NASA) ainsi que dans des simulateurs &amp;quot;maison&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Liens externes ==&lt;br /&gt;
{{Main article|Links}}&lt;br /&gt;
* [https://www.flightgear.org Site Web officiel]&lt;br /&gt;
* {{forum link|text=Forum}}&lt;br /&gt;
* {{tickets|Bug tracker}}&lt;br /&gt;
* [https://www.flightgear.org/blog/proposal-1-0/ Original FlightGear proposal]&lt;br /&gt;
	&lt;br /&gt;
* {{Wikipedia|FlightGear}}&lt;br /&gt;
&lt;br /&gt;
[[Category:FlightGear| ]]&lt;br /&gt;
&lt;br /&gt;
[[ca:FlightGear]]&lt;br /&gt;
[[de:FlightGear]]&lt;br /&gt;
[[en:FlightGear]]&lt;br /&gt;
[[es:FlightGear]]&lt;br /&gt;
[[it:FlightGear]]&lt;br /&gt;
[[nl:FlightGear]]&lt;br /&gt;
[[pl:FlightGear]]&lt;br /&gt;
[[pt:FlightGear]]&lt;br /&gt;
[[ru:FlightGear]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/FlightGear&amp;diff=143885</id>
		<title>Fr/FlightGear</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/FlightGear&amp;diff=143885"/>
		<updated>2026-04-04T13:06:43Z</updated>

		<summary type="html">&lt;p&gt;Adaz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox Software&lt;br /&gt;
| title             = Simulateur de Vol FlightGear&lt;br /&gt;
| logo              = FlightGear logo.png&lt;br /&gt;
| logosize          = 200px&lt;br /&gt;
| image             = Boeing 777-200ER cockpit.jpg&lt;br /&gt;
| alt               = Le cockpit du [[Boeing 777-200ER]]&lt;br /&gt;
| developedby       = FlightGear développeurs &amp;amp; contributeurs&lt;br /&gt;
| initialrelease    = 17 juillet 1997&lt;br /&gt;
| latestrelease     = {{current release|full}} ({{#time: j F Y |{{current release|fulldate}}}})&lt;br /&gt;
|writtenin         = C/C++/Nasal&lt;br /&gt;
|os                = Windows, macOS, Linux, and FreeBSD&lt;br /&gt;
| platform          = Multiplateforme&lt;br /&gt;
| developmentstatus = Actif (1996-ajourd&#039;hui)&lt;br /&gt;
| type              = Simulateur de vol&lt;br /&gt;
| license           = [[GNU General Public License]]&lt;br /&gt;
| website           = http://www.flightgear.org/&lt;br /&gt;
}}[[File:OV10A-NASA-in-action.jpg|thumb|right|270px|NASA [[OV-10]] in FlightGear 1.0]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;FlightGear&#039;&#039;&#039; ( Souvent nommé &#039;&#039;&#039;Flightgear&#039;&#039;&#039; ou &#039;&#039;&#039;FGFS&#039;&#039;&#039;) est un simulateur de vol sophistiqué, libre, et créé par des bénévoles. FlightGear est distribué sous les termes de la [[GNU General Public License]]. Le logiciel est principalement codé en C++.&lt;br /&gt;
&lt;br /&gt;
Depuis le lancement du projet en 1996, des versions de plus en plus détaillées et réalistes de FlightGear sont publiées chaque année.&lt;br /&gt;
&lt;br /&gt;
La dernière version publique est [https://www.flightgear.org/download disponible en téléchargement gratuit], avec des paquets faciles à installer pour divers systèmes d&#039;exploitation, notamment Microsoft Windows, macOS et Linux.&lt;br /&gt;
&lt;br /&gt;
== Histoire ==&lt;br /&gt;
{{main article|Fr/FlightGear history}}&lt;br /&gt;
&lt;br /&gt;
Le développement de FlightGear a débuté en 1996 par une proposition en ligne, utilisant un code graphique 3D personnalisé. Le développement d&#039;une version basée sur [[OpenGL]] a été mené par Curtis Olson à partir de 1997. De nombreuses personnes ont contribué au projet au cours des années qui ont suivi sa création.&lt;br /&gt;
&lt;br /&gt;
FlightGear a intégré d&#039;autres ressources du monde libre, notamment le modèle de vol [[LaRCsim]] de la NASA et des données altimétriques librement accessibles. Les premiers binaires fonctionnels, utilisant OpenGL pour le rendu graphique 3D, ont vu le jour en 1997.  Le développement intensif de nouvelles versions pendant plusieurs années a abouti à des versions de plus en plus stables et avancées. En 2001, l&#039;équipe publiait régulièrement de nouvelles versions bêta, et en 2005, la maturité du logiciel a donné lieu à des critiques plus nombreuses et à une popularité croissante. L&#039;année 2007 a marqué la sortie officielle de la phase de développement bêta avec la publication de la version 1.0.0, dix ans après la première version de FlightGear en 1997.&lt;br /&gt;
&lt;br /&gt;
[[File:FG-A-10.jpg|thumb|270px|Tableau de bord 3D du [[A-10]] dans sa version 1.0.0 en 2008]]&lt;br /&gt;
&lt;br /&gt;
En 2008, la version 1.9.0 de FlightGear introduit un majeur changement de [[PLIB]] à [[OSG]], qui causa temporairement la perte de fonctionalités comme les nuages 3D ou les ombres, tandis que les nouvelles, comme les particules, impacte sur le degré de réalisme de la simulation. &lt;br /&gt;
&lt;br /&gt;
== Software ==&lt;br /&gt;
&lt;br /&gt;
Le moteur de simulation dans FlightGear est appelé [[SimGear]]. Il est utile à la fois pour l&#039;utilisateur normal et dans les milieux universitaires et de recherche, pour le developpement et la recherche d&#039;idées sur la simulation de vol.&lt;br /&gt;
&lt;br /&gt;
La flexibité de FlightGear est illustrée par la grande quantité d&#039;appareils, qui y sont disponibles: Nous pouvons compter plusieurs catégories, dont: [[:Category:Gliders|glider]]s,[[Helicopter]]s, [[:Category:Airliners|airliners]],[[Military aircraft|fighter jets]]. Ces modèles ont été créés par des développeurs différents.&lt;br /&gt;
&lt;br /&gt;
Les aéronefs de Flightgear utilisent un au moins des trois modèles de vols JSBSim, YAsim, ou UIUC depuis la version 0.9.10. Pour l&#039;instant seulement un seul moteur de simulation est utilisé, TerraGear. Les effects météo (cf.[[Weather]]) sont très complexes et réalistes, de même que les effects visuels qui y sont liés: nuages 3D, effects lumineux, effects d&#039;horizon, et heure de la journée.&lt;br /&gt;
&lt;br /&gt;
=== Flight Dynamics Models, alias...FDM ===&lt;br /&gt;
&lt;br /&gt;
Le modèle de vol [[Flight Dynamics Models]] ou (FDM) ) simule le comportement de l&#039;avion dans une situation précise. FlightGear utilise beaucoup de scripts et de FDM codés de manière interne au programme . &lt;br /&gt;
Tout aéronef &#039;&#039;doit&#039;&#039; être programmé pour obéir à un de ces modèles de vol. Actuellement FlightGear est le seul simulateur utilisant autant de FDMs, et dont au moins trois sont créés de manière spécifique pour le logiciel.&lt;br /&gt;
Les plus anciennes versions utilisaient [[LaRCsim]], FDM créé par la NASA, mais il fut remplacé par des modèles plus flexibles. &lt;br /&gt;
&lt;br /&gt;
* [[JSBSim]] - Depuis 2000, le FDM par défaut de flightgear.&lt;br /&gt;
* [[YASim]] - Autre FDM utilisant une approche différente. Fait partie de la version 0.7.9 en 2002.&lt;br /&gt;
* [[UIUC]] - Developpé par le &#039;&#039;UIUC Applied Aerodynamics Group&#039;&#039; à l&#039; Université de l&#039;Illinois à Urbana-Champaign, a également utilisé LaRCsim. Autrefois très répandu, il n&#039;est plus inclus dans FlightGear.&lt;br /&gt;
&lt;br /&gt;
* FlightGear peut aussi être configuré pour utiliser des entrées de FDM externes, comme [[MATLAB]].&lt;br /&gt;
* D&#039;autres FDM marginaux pour un aéronef spécifique ont été écrits, comme les &amp;quot;plus légers que l&#039;air&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Aéronefs ===&lt;br /&gt;
{{Main article|Table of models}}&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
FlightGear commença avec un seul avion issu du FDM LaRCsim de la NASA, Navion, qui a été remplacé par un [[Cessna 172]] dès l&#039;an 2000. Les développements de l&#039;UIUC et de JSBsim ont apporté plusieurs autres avions, tout comme le développement de YASim, qui est depuis devenu le principal modèle de dynamique de vol (FDM) utilisé dans FG. Plus de 400 avions, dans plus de 900 livrées uniques, sont disponibles pour la version 2.12, bien que seuls quelques-uns soient inclus dans le package de base.&lt;br /&gt;
[[File:EHAM.jpg|thumb|270px|[[Boeing 737-300|Boeing 733]] parqué dans le décor [[EHAM]]]]&lt;br /&gt;
&lt;br /&gt;
=== Décors ===&lt;br /&gt;
{{Main article|Scenery}}&lt;br /&gt;
Le projet [[world scenery]] de FlightGear contient des données d&#039;altitude et de classification du terrain pour le monde entier. Les objets — tels que les terminaux, les éoliennes et les ponts — sont regroupés dans la [[FlightGear Scenery Database|base de données des décors]].&lt;br /&gt;
&lt;br /&gt;
=== Mise en réseau et multi-écrans ===&lt;br /&gt;
&lt;br /&gt;
Plusieurs options de mise en réseau permettent à FlightGear de communiquer avec d&#039;autres instances de FlightGear. Un protocole [[Howto:Multiplayer|multijoueur]] est disponible pour utiliser FlightGear sur un réseau local dans un environnement multi-avions. Cela peut servir à simuler des vols en formation ou une [[ATC|tour de contrôle]]. Le mode multijoueur a rapidement été étendu pour permettre de jouer via Internet. Parmi les autres fonctionnalités, on trouve une carte dynamique basée sur Google Maps qui permet aux utilisateurs de voir où se trouvent les autres joueurs.&lt;br /&gt;
Plusieurs instances de FlightGear peuvent être synchronisées pour permettre une configuration multi-écrans. Si toutes les instances fonctionnent de manière constante à la même fréquence d&#039;images, il est possible d&#039;obtenir une synchronisation précise et fluide entre les écrans.&lt;br /&gt;
&lt;br /&gt;
==Applications et usages==&lt;br /&gt;
{{Main article|Professional and educational FlightGear users}}&lt;br /&gt;
FlightGear a été utilisé dans une série de projets dans le milieu universitaire et de l&#039;industrie (y compris la NASA) ainsi que dans des simulateurs &amp;quot;maison&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Liens externes ==&lt;br /&gt;
{{Main article|Links}}&lt;br /&gt;
* [https://www.flightgear.org Site Web officiel]&lt;br /&gt;
* {{forum link|text=Forum}}&lt;br /&gt;
* {{tickets|Bug tracker}}&lt;br /&gt;
* [https://www.flightgear.org/blog/proposal-1-0/ Original FlightGear proposal]&lt;br /&gt;
	&lt;br /&gt;
* {{Wikipedia|FlightGear}}&lt;br /&gt;
&lt;br /&gt;
[[Category:FlightGear| ]]&lt;br /&gt;
&lt;br /&gt;
[[ca:FlightGear]]&lt;br /&gt;
[[de:FlightGear]]&lt;br /&gt;
[[en:FlightGear]]&lt;br /&gt;
[[es:FlightGear]]&lt;br /&gt;
[[it:FlightGear]]&lt;br /&gt;
[[nl:FlightGear]]&lt;br /&gt;
[[pl:FlightGear]]&lt;br /&gt;
[[pt:FlightGear]]&lt;br /&gt;
[[ru:FlightGear]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/FlightGear&amp;diff=143884</id>
		<title>Fr/FlightGear</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/FlightGear&amp;diff=143884"/>
		<updated>2026-04-04T13:03:04Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Refresh from April, 2nd 2026 version&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox Software&lt;br /&gt;
| title             = Simulateur de Vol FlightGear&lt;br /&gt;
| logo              = FlightGear logo.png&lt;br /&gt;
| logosize          = 200px&lt;br /&gt;
| image             = Boeing 777-200ER cockpit.jpg&lt;br /&gt;
| alt               = Le cockpit du [[Boeing 777-200ER]]&lt;br /&gt;
| developedby       = FlightGear développeurs &amp;amp; contributeurs&lt;br /&gt;
| initialrelease    = 17 juillet 1997&lt;br /&gt;
| latestrelease     = {{current release|full}} ({{#time: j F Y |{{current release|fulldate}}}})&lt;br /&gt;
|writtenin         = C/C++/Nasal&lt;br /&gt;
|os                = Windows, macOS, Linux, and FreeBSD&lt;br /&gt;
| platform          = Multiplateforme&lt;br /&gt;
| developmentstatus = Actif (1996-ajourd&#039;hui)&lt;br /&gt;
| type              = Simulateur de vol&lt;br /&gt;
| license           = [[GNU General Public License]]&lt;br /&gt;
| website           = http://www.flightgear.org/&lt;br /&gt;
}}[[File:OV10A-NASA-in-action.jpg|thumb|right|270px|NASA [[OV-10]] in FlightGear 1.0]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;FlightGear&#039;&#039;&#039; ( Souvent nommé &#039;&#039;&#039;Flightgear&#039;&#039;&#039; ou &#039;&#039;&#039;FGFS&#039;&#039;&#039;) est un simulateur de vol sophistiqué, libre, et créé par des bénévoles. FlightGear est distribué sous les termes de la [[GNU General Public License]]. Le logiciel est principalement codé en C++.&lt;br /&gt;
&lt;br /&gt;
Depuis le lancement du projet en 1996, des versions de plus en plus détaillées et réalistes de FlightGear sont publiées chaque année.&lt;br /&gt;
&lt;br /&gt;
La dernière version publique est [https://www.flightgear.org/download, disponible en téléchargement gratuit], avec des paquets faciles à installer pour divers systèmes d&#039;exploitation, notamment Microsoft Windows, macOS et Linux.&lt;br /&gt;
&lt;br /&gt;
== Histoire ==&lt;br /&gt;
{{main article|Fr/FlightGear history}}&lt;br /&gt;
&lt;br /&gt;
Le développement de FlightGear a débuté en 1996 par une proposition en ligne, utilisant un code graphique 3D personnalisé. Le développement d&#039;une version basée sur [[OpenGL]] a été mené par Curtis Olson à partir de 1997. De nombreuses personnes ont contribué au projet au cours des années qui ont suivi sa création.&lt;br /&gt;
&lt;br /&gt;
FlightGear a intégré d&#039;autres ressources du monde libre, notamment le modèle de vol [[LaRCsim]] de la NASA et des données altimétriques librement accessibles. Les premiers binaires fonctionnels, utilisant OpenGL pour le rendu graphique 3D, ont vu le jour en 1997.  Le développement intensif de nouvelles versions pendant plusieurs années a abouti à des versions de plus en plus stables et avancées. En 2001, l&#039;équipe publiait régulièrement de nouvelles versions bêta, et en 2005, la maturité du logiciel a donné lieu à des critiques plus nombreuses et à une popularité croissante. L&#039;année 2007 a marqué la sortie officielle de la phase de développement bêta avec la publication de la version 1.0.0, dix ans après la première version de FlightGear en 1997.&lt;br /&gt;
&lt;br /&gt;
[[File:FG-A-10.jpg|thumb|270px|Tableau de bord 3D du [[A-10]] dans sa version 1.0.0 en 2008]]&lt;br /&gt;
&lt;br /&gt;
En 2008, la version 1.9.0 de FlightGear introduit un majeur changement de [[PLIB]] à [[OSG]], qui causa temporairement la perte de fonctionalités comme les nuages 3D ou les ombres, tandis que les nouvelles, comme les particules, impacte sur le degré de réalisme de la simulation. &lt;br /&gt;
&lt;br /&gt;
== Software ==&lt;br /&gt;
&lt;br /&gt;
Le moteur de simulation dans FlightGear est appelé [[SimGear]]. Il est utile à la fois pour l&#039;utilisateur normal et dans les milieux universitaires et de recherche, pour le developpement et la recherche d&#039;idées sur la simulation de vol.&lt;br /&gt;
&lt;br /&gt;
La flexibité de FlightGear est illustrée par la grande quantité d&#039;appareils, qui y sont disponibles: Nous pouvons compter plusieurs catégories, dont: [[:Category:Gliders|glider]]s,[[Helicopter]]s, [[:Category:Airliners|airliners]],[[Military aircraft|fighter jets]]. Ces modèles ont été créés par des développeurs différents.&lt;br /&gt;
&lt;br /&gt;
Les aéronefs de Flightgear utilisent un au moins des trois modèles de vols JSBSim, YAsim, ou UIUC depuis la version 0.9.10. Pour l&#039;instant seulement un seul moteur de simulation est utilisé, TerraGear. Les effects météo (cf.[[Weather]]) sont très complexes et réalistes, de même que les effects visuels qui y sont liés: nuages 3D, effects lumineux, effects d&#039;horizon, et heure de la journée.&lt;br /&gt;
&lt;br /&gt;
=== Flight Dynamics Models, alias...FDM ===&lt;br /&gt;
&lt;br /&gt;
Le modèle de vol [[Flight Dynamics Models]] ou (FDM) ) simule le comportement de l&#039;avion dans une situation précise. FlightGear utilise beaucoup de scripts et de FDM codés de manière interne au programme . &lt;br /&gt;
Tout aéronef &#039;&#039;doit&#039;&#039; être programmé pour obéir à un de ces modèles de vol. Actuellement FlightGear est le seul simulateur utilisant autant de FDMs, et dont au moins trois sont créés de manière spécifique pour le logiciel.&lt;br /&gt;
Les plus anciennes versions utilisaient [[LaRCsim]], FDM créé par la NASA, mais il fut remplacé par des modèles plus flexibles. &lt;br /&gt;
&lt;br /&gt;
* [[JSBSim]] - Depuis 2000, le FDM par défaut de flightgear.&lt;br /&gt;
* [[YASim]] - Autre FDM utilisant une approche différente. Fait partie de la version 0.7.9 en 2002.&lt;br /&gt;
* [[UIUC]] - Developpé par le &#039;&#039;UIUC Applied Aerodynamics Group&#039;&#039; à l&#039; Université de l&#039;Illinois à Urbana-Champaign, a également utilisé LaRCsim. Autrefois très répandu, il n&#039;est plus inclus dans FlightGear.&lt;br /&gt;
&lt;br /&gt;
* FlightGear peut aussi être configuré pour utiliser des entrées de FDM externes, comme [[MATLAB]].&lt;br /&gt;
* D&#039;autres FDM marginaux pour un aéronef spécifique ont été écrits, comme les &amp;quot;plus légers que l&#039;air&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Aéronefs ===&lt;br /&gt;
{{Main article|Table of models}}&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
FlightGear commença avec un seul avion issu du FDM LaRCsim de la NASA, Navion, qui a été remplacé par un [[Cessna 172]] dès l&#039;an 2000. Les développements de l&#039;UIUC et de JSBsim ont apporté plusieurs autres avions, tout comme le développement de YASim, qui est depuis devenu le principal modèle de dynamique de vol (FDM) utilisé dans FG. Plus de 400 avions, dans plus de 900 livrées uniques, sont disponibles pour la version 2.12, bien que seuls quelques-uns soient inclus dans le package de base.&lt;br /&gt;
[[File:EHAM.jpg|thumb|270px|[[Boeing 737-300|Boeing 733]] parqué dans le décor [[EHAM]]]]&lt;br /&gt;
&lt;br /&gt;
=== Décors ===&lt;br /&gt;
{{Main article|Scenery}}&lt;br /&gt;
Le projet [[world scenery]] de FlightGear contient des données d&#039;altitude et de classification du terrain pour le monde entier. Les objets — tels que les terminaux, les éoliennes et les ponts — sont regroupés dans la [[FlightGear Scenery Database|base de données des décors]].&lt;br /&gt;
&lt;br /&gt;
=== Mise en réseau et multi-écrans ===&lt;br /&gt;
&lt;br /&gt;
Plusieurs options de mise en réseau permettent à FlightGear de communiquer avec d&#039;autres instances de FlightGear. Un protocole [[Howto:Multiplayer|multijoueur]] est disponible pour utiliser FlightGear sur un réseau local dans un environnement multi-avions. Cela peut servir à simuler des vols en formation ou une [[ATC|tour de contrôle]]. Le mode multijoueur a rapidement été étendu pour permettre de jouer via Internet. Parmi les autres fonctionnalités, on trouve une carte dynamique basée sur Google Maps qui permet aux utilisateurs de voir où se trouvent les autres joueurs.&lt;br /&gt;
Plusieurs instances de FlightGear peuvent être synchronisées pour permettre une configuration multi-écrans. Si toutes les instances fonctionnent de manière constante à la même fréquence d&#039;images, il est possible d&#039;obtenir une synchronisation précise et fluide entre les écrans.&lt;br /&gt;
&lt;br /&gt;
==Applications et usages==&lt;br /&gt;
{{Main article|Professional and educational FlightGear users}}&lt;br /&gt;
FlightGear a été utilisé dans une série de projets dans le milieu universitaire et de l&#039;industrie (y compris la NASA) ainsi que dans des simulateurs &amp;quot;maison&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Liens externes ==&lt;br /&gt;
{{Main article|Links}}&lt;br /&gt;
* [https://www.flightgear.org Site Web officiel]&lt;br /&gt;
* {{forum link|text=Forum}}&lt;br /&gt;
* {{tickets|Bug tracker}}&lt;br /&gt;
* [https://www.flightgear.org/blog/proposal-1-0/ Original FlightGear proposal]&lt;br /&gt;
	&lt;br /&gt;
* {{Wikipedia|FlightGear}}&lt;br /&gt;
&lt;br /&gt;
[[Category:FlightGear| ]]&lt;br /&gt;
&lt;br /&gt;
[[ca:FlightGear]]&lt;br /&gt;
[[de:FlightGear]]&lt;br /&gt;
[[en:FlightGear]]&lt;br /&gt;
[[es:FlightGear]]&lt;br /&gt;
[[it:FlightGear]]&lt;br /&gt;
[[nl:FlightGear]]&lt;br /&gt;
[[pl:FlightGear]]&lt;br /&gt;
[[pt:FlightGear]]&lt;br /&gt;
[[ru:FlightGear]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Nasal_Browser&amp;diff=143847</id>
		<title>Nasal Browser</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Nasal_Browser&amp;diff=143847"/>
		<updated>2026-03-30T17:32:31Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Add link to FR translation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Nasal Namespace Browser Prototype.png|thumb|Screen shot showing the new [[Nasal Browser|Nasal Namespace Browser]] that is currently being worked on by Philosopher.]]&lt;br /&gt;
&lt;br /&gt;
{{Nasal Navigation}}&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;Nasal &#039;&#039;&#039;(&#039;&#039;&#039;Namespace&#039;&#039;&#039;)&#039;&#039;&#039; Browser&#039;&#039;&#039; is a dialog created by user Philosopher that allows the user to peek at the internal state of Nasal (starting from the global namespace). It displays an alphabetical list of keys mapped to values using the [[Canvas]] framework. Hashes and vectors are shown as their size and can be entered into via clicking on them; scalars&#039; complete values are shown while ghosts and other types and represented in brackets.&lt;br /&gt;
&lt;br /&gt;
The source code can be viewed [{{gitorious url&lt;br /&gt;
| proj = fg&lt;br /&gt;
| repo = canvas-hackers-fgdata&lt;br /&gt;
| path = Nasal/nasal_browser.nas&lt;br /&gt;
| branch = topics/nasal-browser-rebased&lt;br /&gt;
| view = raw&lt;br /&gt;
}} here]&lt;br /&gt;
&lt;br /&gt;
{{Note|Per-update performance of the dialog (i.e. how fast it runs) is determined by how big the namespace is. On the developer&#039;s computer, it takes about 20-30 ms to update the global namespace, much less for much smaller namespaces. The dialog is automatically updated about every 0.6 seconds.|width=70%}}&lt;br /&gt;
&lt;br /&gt;
== Features ==&lt;br /&gt;
Each entry is color-coded by type and scrollable via the Canvas scroll widget, sorted either by name or type and name. In a hash, each key is shown as either a string, a number, or a symbol, depending on what it really is (i.e. a scalar may be numeric but still a string; also, interned symbols are special cases of strings). Strings are shown in single quotes, symbols and numbers are shown without quotes. For strings, the brightness of the color is optionally reduced.&lt;br /&gt;
&lt;br /&gt;
If the binary includes the &amp;lt;code&amp;gt;debug.decompile()&amp;lt;/code&amp;gt; extension function (i.e. is part of [[User:Philosopher/Nasal introspection|extended-nasal]]) then functions can optionally be shown with their arguments, e.g. &amp;lt;code&amp;gt;isa = &amp;lt;func(obj,class)&amp;gt;&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;_setlistener = &amp;lt;internal func&amp;gt;&amp;lt;/code&amp;gt; (in the sense of a function implemented in C/C++).&lt;br /&gt;
&lt;br /&gt;
Values can be edited when they are clicked on; the edit bar then becomes activated and will capture key presses. A valid Nasal expression should be entered, which will be executed on {{key press|Enter}}.&lt;br /&gt;
&lt;br /&gt;
== 2025 Revival ==&lt;br /&gt;
&lt;br /&gt;
Since 2025, the Nasal Browser project has been revived and is now maintained as a standalone addon. As the original source code repository is no longer available, this version serves as its direct successor, updated for compatibility with modern FlightGear versions.&lt;br /&gt;
&lt;br /&gt;
The new version is hosted on GitHub: {{github source|user=PlayeRom|repo=flightgear-addon-nasal-namespace-browser|text=playerom/flightgear-addon-nasal-namespace-browser}}. It is fully integrated with the FlightGear addon system, providing a modernized interface for browsing the Nasal namespace while preserving historical functionality.&lt;br /&gt;
&lt;br /&gt;
Notably, the addon &#039;&#039;&#039;includes the original source code&#039;&#039;&#039;, which can be optionally enabled for those who prefer the classic experience or wish to compare implementations.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Modernized UI:&#039;&#039;&#039; Improved compatibility with recent FlightGear releases.&lt;br /&gt;
* &#039;&#039;&#039;Easy Installation:&#039;&#039;&#039; Fully compatible with the FlightGear Addon system.&lt;br /&gt;
* &#039;&#039;&#039;Project Homepage &amp;amp; Source:&#039;&#039;&#039; {{github source|user=PlayeRom|repo=flightgear-addon-nasal-namespace-browser|text=playerom/flightgear-addon-nasal-namespace-browser}}&lt;br /&gt;
* &#039;&#039;&#039;Compatibility:&#039;&#039;&#039; FlightGear 2024.1+&lt;br /&gt;
&lt;br /&gt;
[[fr:Nasal Browser]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/Nasal_Browser&amp;diff=143846</id>
		<title>Fr/Nasal Browser</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/Nasal_Browser&amp;diff=143846"/>
		<updated>2026-03-30T17:31:33Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Add section Voir aussi&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Nasal Namespace Browser Prototype.png|thumb|Screen shot showing the new [[Nasal Browser|Nasal Namespace Browser]] that is currently being worked on by Philosopher.]]&lt;br /&gt;
&lt;br /&gt;
{{Nasal Navigation}}&lt;br /&gt;
&lt;br /&gt;
L&#039;explorateur &#039;&#039;&#039;« Nasal (Namespace) »&#039;&#039;&#039; est une boîte de dialogue créée par l&#039;utilisateur Philosopher qui permet d&#039;avoir un aperçu de l&#039;état interne de Nasal (à partir de l&#039;espace de noms global). Il affiche une liste alphabétique des clés associées à des valeurs à l&#039;aide du framework [[Canvas]]. Les hachages et les vecteurs sont indiqués par leur taille et sont accessibles en cliquant dessus ; les valeurs complètes des scalaires sont affichées, tandis que les « ghosts » et les autres types sont représentés entre crochets.&lt;br /&gt;
&lt;br /&gt;
Le code source est [https://gitorious.org/fg/canvas-hackers-fgdata?p=fg:canvas-hackers-fgdata.git;a=blob_plain;f=Nasal/nasal_browser.nas;hb=refs/heads/topics/nasal-browser-rebased disponible ic]i.{{Note|Les performances de la boîte de dialogue à chaque rafraîchissement (c&#039;est-à-dire sa vitesse d&#039;exécution) dépendent de la taille de l&#039;espace de noms. Sur l&#039;ordinateur du développeur, la mise à jour de l&#039;espace de noms global prend environ 20 à 30 ms ; ce temps est bien plus court pour des espaces de noms beaucoup plus petits. La boîte de dialogue est mise à jour automatiquement toutes les 0,6 seconde environ.|width=70%}}&lt;br /&gt;
&lt;br /&gt;
== Caractéristiques ==&lt;br /&gt;
Chaque entrée est identifiée par un code couleur en fonction de son type et peut être parcourue à l&#039;aide du widget de défilement de Canvas, triée soit par nom, soit par type et nom. Dans un hachage, chaque clé est affichée sous forme de chaîne, de nombre ou de symbole, selon sa nature réelle (par exemple, un scalaire peut être numérique tout en restant une chaîne ; de même, les symboles internés constituent des cas particuliers de chaînes). Les chaînes de caractères sont affichées entre guillemets simples, tandis que les symboles et les nombres sont affichés sans guillemets. Pour les chaînes de caractères, la luminosité de la couleur peut être réduite.&lt;br /&gt;
&lt;br /&gt;
Si le fichier binaire inclut la fonction d&#039;extension &amp;lt;code&amp;gt;debug.decompile()&amp;lt;/code&amp;gt; (c&#039;est-à-dire s&#039;il fait partie de [[User:Philosopher/Nasal introspection|extended-nasal]]), les fonctions peuvent alors, si on le souhaite, être affichées avec leurs arguments, par exemple&amp;lt;code&amp;gt;isa = &amp;lt;func(obj,class)&amp;gt;&amp;lt;/code&amp;gt; et &amp;lt;code&amp;gt;_setlistener = &amp;lt;internal func&amp;gt;&amp;lt;/code&amp;gt;(au sens d&#039;une fonction implémentée en C/C++).&lt;br /&gt;
&lt;br /&gt;
Il est possible de modifier les valeurs en cliquant dessus ; la barre d&#039;édition s&#039;active alors et prend en compte la saisie au clavier. Il faut saisir une expression Nasal valide, qui sera exécutée lorsque vous appuierez sur la touche {{key press|Enter}}.&lt;br /&gt;
&lt;br /&gt;
== Renaissance de 2025 ==&lt;br /&gt;
&lt;br /&gt;
Depuis 2025, le projet de l&#039;explorateur Nasal a été relancé et est désormais géré comme une extension autonome. Le dépôt de code source d&#039;origine n&#039;étant plus disponible, cette version en est le successeur direct, mise à jour pour être compatible avec les versions récentes de FlightGear.&lt;br /&gt;
&lt;br /&gt;
La nouvelle version est hébergée sur GitHub : {{Github source|repo=flightgear-addon-nasal-namespace-browser|user=PlayeRom|text=playerom/flightgear-addon-nasal-namespace-browser}}. Elle est entièrement intégrée au système d&#039;extensions de FlightGear et offre une interface modernisée pour parcourir l&#039;espace de noms Nasal, tout en conservant les fonctionnalités historiques.&lt;br /&gt;
&lt;br /&gt;
Il convient de noter que l&#039;extension &#039;&#039;&#039;inclut le code source d&#039;origine&#039;&#039;&#039;, qui peut être activé si l&#039;utilisateur le souhaite, notamment pour ceux qui préfèrent l&#039;expérience classique ou qui souhaitent comparer les implémentations.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Interface utilisateur modernisée&#039;&#039;&#039; : compatibilité améliorée avec les dernières versions de FlightGear.&lt;br /&gt;
* &#039;&#039;&#039;Installation facile&#039;&#039;&#039; : entièrement compatible avec le système d&#039;extensions de FlightGear.&lt;br /&gt;
* &#039;&#039;&#039;Page d&#039;accueil du projet et code source&#039;&#039;&#039; : {{Github source|text=playerom/flightgear-addon-nasal-namespace-browser|repo=flightgear-addon-nasal-namespace-browser|user=PlayeRom}}&lt;br /&gt;
* &#039;&#039;&#039;Compatibilité&#039;&#039;&#039; : FlightGear 2024.1 et versions ultérieur&lt;br /&gt;
&lt;br /&gt;
== Voir aussi ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://www.fr.flightgear.tuxfamily.org/wiki/doku.php?id=devel:nasal_pour_les_nuls Nasal pour les nuls]&lt;br /&gt;
[[en:Nasal Browser]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/Nasal_Browser&amp;diff=143845</id>
		<title>Fr/Nasal Browser</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/Nasal_Browser&amp;diff=143845"/>
		<updated>2026-03-30T17:25:06Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Translation complete&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Nasal Namespace Browser Prototype.png|thumb|Screen shot showing the new [[Nasal Browser|Nasal Namespace Browser]] that is currently being worked on by Philosopher.]]&lt;br /&gt;
&lt;br /&gt;
{{Nasal Navigation}}&lt;br /&gt;
&lt;br /&gt;
L&#039;explorateur &#039;&#039;&#039;« Nasal (Namespace) »&#039;&#039;&#039; est une boîte de dialogue créée par l&#039;utilisateur Philosopher qui permet d&#039;avoir un aperçu de l&#039;état interne de Nasal (à partir de l&#039;espace de noms global). Il affiche une liste alphabétique des clés associées à des valeurs à l&#039;aide du framework [[Canvas]]. Les hachages et les vecteurs sont indiqués par leur taille et sont accessibles en cliquant dessus ; les valeurs complètes des scalaires sont affichées, tandis que les « ghosts » et les autres types sont représentés entre crochets.&lt;br /&gt;
&lt;br /&gt;
Le code source est [https://gitorious.org/fg/canvas-hackers-fgdata?p=fg:canvas-hackers-fgdata.git;a=blob_plain;f=Nasal/nasal_browser.nas;hb=refs/heads/topics/nasal-browser-rebased disponible ic]i.{{Note|Les performances de la boîte de dialogue à chaque rafraîchissement (c&#039;est-à-dire sa vitesse d&#039;exécution) dépendent de la taille de l&#039;espace de noms. Sur l&#039;ordinateur du développeur, la mise à jour de l&#039;espace de noms global prend environ 20 à 30 ms ; ce temps est bien plus court pour des espaces de noms beaucoup plus petits. La boîte de dialogue est mise à jour automatiquement toutes les 0,6 seconde environ.|width=70%}}&lt;br /&gt;
&lt;br /&gt;
== Caractéristiques ==&lt;br /&gt;
Chaque entrée est identifiée par un code couleur en fonction de son type et peut être parcourue à l&#039;aide du widget de défilement de Canvas, triée soit par nom, soit par type et nom. Dans un hachage, chaque clé est affichée sous forme de chaîne, de nombre ou de symbole, selon sa nature réelle (par exemple, un scalaire peut être numérique tout en restant une chaîne ; de même, les symboles internés constituent des cas particuliers de chaînes). Les chaînes de caractères sont affichées entre guillemets simples, tandis que les symboles et les nombres sont affichés sans guillemets. Pour les chaînes de caractères, la luminosité de la couleur peut être réduite.&lt;br /&gt;
&lt;br /&gt;
Si le fichier binaire inclut la fonction d&#039;extension &amp;lt;code&amp;gt;debug.decompile()&amp;lt;/code&amp;gt; (c&#039;est-à-dire s&#039;il fait partie de [[User:Philosopher/Nasal introspection|extended-nasal]]), les fonctions peuvent alors, si on le souhaite, être affichées avec leurs arguments, par exemple&amp;lt;code&amp;gt;isa = &amp;lt;func(obj,class)&amp;gt;&amp;lt;/code&amp;gt; et &amp;lt;code&amp;gt;_setlistener = &amp;lt;internal func&amp;gt;&amp;lt;/code&amp;gt;(au sens d&#039;une fonction implémentée en C/C++).&lt;br /&gt;
&lt;br /&gt;
Il est possible de modifier les valeurs en cliquant dessus ; la barre d&#039;édition s&#039;active alors et prend en compte la saisie au clavier. Il faut saisir une expression Nasal valide, qui sera exécutée lorsque vous appuierez sur la touche {{key press|Enter}}.&lt;br /&gt;
&lt;br /&gt;
== Renaissance de 2025 ==&lt;br /&gt;
&lt;br /&gt;
Depuis 2025, le projet de l&#039;explorateur Nasal a été relancé et est désormais géré comme une extension autonome. Le dépôt de code source d&#039;origine n&#039;étant plus disponible, cette version en est le successeur direct, mise à jour pour être compatible avec les versions récentes de FlightGear.&lt;br /&gt;
&lt;br /&gt;
La nouvelle version est hébergée sur GitHub : {{Github source|repo=flightgear-addon-nasal-namespace-browser|user=PlayeRom|text=playerom/flightgear-addon-nasal-namespace-browser}}. Elle est entièrement intégrée au système d&#039;extensions de FlightGear et offre une interface modernisée pour parcourir l&#039;espace de noms Nasal, tout en conservant les fonctionnalités historiques.&lt;br /&gt;
&lt;br /&gt;
Il convient de noter que l&#039;extension &#039;&#039;&#039;inclut le code source d&#039;origine&#039;&#039;&#039;, qui peut être activé si l&#039;utilisateur le souhaite, notamment pour ceux qui préfèrent l&#039;expérience classique ou qui souhaitent comparer les implémentations.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Interface utilisateur modernisée&#039;&#039;&#039; : compatibilité améliorée avec les dernières versions de FlightGear.&lt;br /&gt;
* &#039;&#039;&#039;Installation facile&#039;&#039;&#039; : entièrement compatible avec le système d&#039;extensions de FlightGear.&lt;br /&gt;
* &#039;&#039;&#039;Page d&#039;accueil du projet et code source&#039;&#039;&#039; : {{Github source|text=playerom/flightgear-addon-nasal-namespace-browser|repo=flightgear-addon-nasal-namespace-browser|user=PlayeRom}}&lt;br /&gt;
* &#039;&#039;&#039;Compatibilité&#039;&#039;&#039; : FlightGear 2024.1 et versions ultérieur&lt;br /&gt;
&lt;br /&gt;
[[en:Nasal Browser]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Fr/Nasal_Browser&amp;diff=143844</id>
		<title>Fr/Nasal Browser</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Fr/Nasal_Browser&amp;diff=143844"/>
		<updated>2026-03-30T16:45:45Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Fr translation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Nasal Namespace Browser Prototype.png|thumb|Screen shot showing the new [[Nasal Browser|Nasal Namespace Browser]] that is currently being worked on by Philosopher.]]&lt;br /&gt;
&lt;br /&gt;
{{Nasal Navigation}}&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;Nasal &#039;&#039;&#039;(&#039;&#039;&#039;Namespace&#039;&#039;&#039;)&#039;&#039;&#039; Browser&#039;&#039;&#039; is a dialog created by user Philosopher that allows the user to peek at the internal state of Nasal (starting from the global namespace). It displays an alphabetical list of keys mapped to values using the [[Canvas]] framework. Hashes and vectors are shown as their size and can be entered into via clicking on them; scalars&#039; complete values are shown while ghosts and other types and represented in brackets.&lt;br /&gt;
&lt;br /&gt;
The source code can be viewed [{{gitorious url&lt;br /&gt;
| proj = fg&lt;br /&gt;
| repo = canvas-hackers-fgdata&lt;br /&gt;
| path = Nasal/nasal_browser.nas&lt;br /&gt;
| branch = topics/nasal-browser-rebased&lt;br /&gt;
| view = raw&lt;br /&gt;
}} here]&lt;br /&gt;
&lt;br /&gt;
{{Note|Per-update performance of the dialog (i.e. how fast it runs) is determined by how big the namespace is. On the developer&#039;s computer, it takes about 20-30 ms to update the global namespace, much less for much smaller namespaces. The dialog is automatically updated about every 0.6 seconds.|width=70%}}&lt;br /&gt;
&lt;br /&gt;
== Features ==&lt;br /&gt;
Each entry is color-coded by type and scrollable via the Canvas scroll widget, sorted either by name or type and name. In a hash, each key is shown as either a string, a number, or a symbol, depending on what it really is (i.e. a scalar may be numeric but still a string; also, interned symbols are special cases of strings). Strings are shown in single quotes, symbols and numbers are shown without quotes. For strings, the brightness of the color is optionally reduced.&lt;br /&gt;
&lt;br /&gt;
If the binary includes the &amp;lt;code&amp;gt;debug.decompile()&amp;lt;/code&amp;gt; extension function (i.e. is part of [[User:Philosopher/Nasal introspection|extended-nasal]]) then functions can optionally be shown with their arguments, e.g. &amp;lt;code&amp;gt;isa = &amp;lt;func(obj,class)&amp;gt;&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;_setlistener = &amp;lt;internal func&amp;gt;&amp;lt;/code&amp;gt; (in the sense of a function implemented in C/C++).&lt;br /&gt;
&lt;br /&gt;
Values can be edited when they are clicked on; the edit bar then becomes activated and will capture key presses. A valid Nasal expression should be entered, which will be executed on {{key press|Enter}}.&lt;br /&gt;
&lt;br /&gt;
== 2025 Revival ==&lt;br /&gt;
&lt;br /&gt;
Since 2025, the Nasal Browser project has been revived and is now maintained as a standalone addon. As the original source code repository is no longer available, this version serves as its direct successor, updated for compatibility with modern FlightGear versions.&lt;br /&gt;
&lt;br /&gt;
The new version is hosted on GitHub: {{github source|user=PlayeRom|repo=flightgear-addon-nasal-namespace-browser|text=playerom/flightgear-addon-nasal-namespace-browser}}. It is fully integrated with the FlightGear addon system, providing a modernized interface for browsing the Nasal namespace while preserving historical functionality.&lt;br /&gt;
&lt;br /&gt;
Notably, the addon &#039;&#039;&#039;includes the original source code&#039;&#039;&#039;, which can be optionally enabled for those who prefer the classic experience or wish to compare implementations.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Modernized UI:&#039;&#039;&#039; Improved compatibility with recent FlightGear releases.&lt;br /&gt;
* &#039;&#039;&#039;Easy Installation:&#039;&#039;&#039; Fully compatible with the FlightGear Addon system.&lt;br /&gt;
* &#039;&#039;&#039;Project Homepage &amp;amp; Source:&#039;&#039;&#039; {{github source|user=PlayeRom|repo=flightgear-addon-nasal-namespace-browser|text=playerom/flightgear-addon-nasal-namespace-browser}}&lt;br /&gt;
* &#039;&#039;&#039;Compatibility:&#039;&#039;&#039; FlightGear 2024.1+&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=File:Florida_Patrol_by_@OrbitalMartian.jpg&amp;diff=143842</id>
		<title>File:Florida Patrol by @OrbitalMartian.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=File:Florida_Patrol_by_@OrbitalMartian.jpg&amp;diff=143842"/>
		<updated>2026-03-30T09:07:45Z</updated>

		<summary type="html">&lt;p&gt;Adaz: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=={{int:filedesc}}==&lt;br /&gt;
{{Information&lt;br /&gt;
|description={{fr|1=Florida Patrol by @OrbitalMartian}}&lt;br /&gt;
|date=2026-03-15 09:51:08&lt;br /&gt;
|source=https://forum.flightgear.org/viewtopic.php?t=44104&lt;br /&gt;
|author=@OrbitalMartian&lt;br /&gt;
|permission=&lt;br /&gt;
|other versions=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=={{int:license-header}}==&lt;br /&gt;
{{cc-by-sa-4.0}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Screenshot of the month]]&lt;br /&gt;
[[Category:Screenshot of the month/2026-02]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=File:Boeing_777-9_flying_over_LGMT_Mytilene_Island_by_@fatomann.jpg&amp;diff=143841</id>
		<title>File:Boeing 777-9 flying over LGMT Mytilene Island by @fatomann.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=File:Boeing_777-9_flying_over_LGMT_Mytilene_Island_by_@fatomann.jpg&amp;diff=143841"/>
		<updated>2026-03-30T09:06:54Z</updated>

		<summary type="html">&lt;p&gt;Adaz: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=={{int:filedesc}}==&lt;br /&gt;
{{Information&lt;br /&gt;
|description={{fr|1=Boeing 777-9 flying over LGMT Mytilene Island by @fatomann}}&lt;br /&gt;
|date=2026-03-15&lt;br /&gt;
|source=https://forum.flightgear.org/viewtopic.php?t=44104&lt;br /&gt;
|author=@fatomann&lt;br /&gt;
|permission=&lt;br /&gt;
|other versions=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=={{int:license-header}}==&lt;br /&gt;
{{cc-by-sa-4.0}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Screenshot of the month/2026-02]]&lt;br /&gt;
[[Category:Screenshot of the month]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=File:Arriving_in_S%C3%A3o_Paulo_by_@lomar.jpg&amp;diff=143840</id>
		<title>File:Arriving in São Paulo by @lomar.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=File:Arriving_in_S%C3%A3o_Paulo_by_@lomar.jpg&amp;diff=143840"/>
		<updated>2026-03-30T09:04:38Z</updated>

		<summary type="html">&lt;p&gt;Adaz: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=={{int:filedesc}}==&lt;br /&gt;
{{Information&lt;br /&gt;
|description={{fr|1=Arriving in São Paulo by @lomar}}&lt;br /&gt;
|date=2026-03-15&lt;br /&gt;
|source=https://forum.flightgear.org/viewtopic.php?t=44104&lt;br /&gt;
|author=@lomar&lt;br /&gt;
|permission=&lt;br /&gt;
|other versions=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=={{int:license-header}}==&lt;br /&gt;
{{cc-by-sa-4.0}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Screenshot of the month]]&lt;br /&gt;
[[Category:Screenshot of the month/2026-02]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=File:Dawn_Patrol_Northern_Marne_by_@Lester-Boffo.jpg&amp;diff=143838</id>
		<title>File:Dawn Patrol Northern Marne by @Lester-Boffo.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=File:Dawn_Patrol_Northern_Marne_by_@Lester-Boffo.jpg&amp;diff=143838"/>
		<updated>2026-03-30T09:01:58Z</updated>

		<summary type="html">&lt;p&gt;Adaz: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=={{int:filedesc}}==&lt;br /&gt;
{{Information&lt;br /&gt;
|description={{fr|1=Dawn Patrol Northern Marne by @Lester-Boffo}}&lt;br /&gt;
|date=2026-03-15&lt;br /&gt;
|source=https://forum.flightgear.org/viewtopic.php?t=44104&lt;br /&gt;
|author=@Lester-Boffo&lt;br /&gt;
|permission=&lt;br /&gt;
|other versions=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=={{int:license-header}}==&lt;br /&gt;
{{cc-by-sa-4.0}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Screenshot of the month]]&lt;br /&gt;
[[Category:Screenshot of the month/2026-02]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Category:Screenshot_of_the_month/2026-03&amp;diff=143837</id>
		<title>Category:Screenshot of the month/2026-03</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Category:Screenshot_of_the_month/2026-03&amp;diff=143837"/>
		<updated>2026-03-30T08:53:40Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Add category SOTM&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Screenshot of the month]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=Category:Screenshot_of_the_month/2026-02&amp;diff=143836</id>
		<title>Category:Screenshot of the month/2026-02</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=Category:Screenshot_of_the_month/2026-02&amp;diff=143836"/>
		<updated>2026-03-30T08:53:13Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Add category SOTM&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Screenshot of the month]]&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=User:Adaz&amp;diff=143831</id>
		<title>User:Adaz</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=User:Adaz&amp;diff=143831"/>
		<updated>2026-03-28T15:51:43Z</updated>

		<summary type="html">&lt;p&gt;Adaz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{done}} {{not done}}&lt;br /&gt;
{{pending}} &lt;br /&gt;
{{progressbar|90}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hello all,&lt;br /&gt;
&lt;br /&gt;
I&#039;m currently contribute to translation in FR language.&lt;br /&gt;
&lt;br /&gt;
My FlightGear favorite aircrafts : Robin DR400 and Airbus  A320 Family.&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=User:Skybike/Template:Newsletter-header-translate&amp;diff=143830</id>
		<title>User:Skybike/Template:Newsletter-header-translate</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=User:Skybike/Template:Newsletter-header-translate&amp;diff=143830"/>
		<updated>2026-03-28T15:10:56Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Undo revision 143827 by Adaz (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&amp;lt;div style=&amp;quot;border-bottom:1px solid #DDD;&amp;quot;&amp;gt;&amp;lt;div style=&amp;quot;background-position:center -15px; border-bottom:3px double #BBB; border-top:3px double #BCBCBC; background-color: #F5F5F5; padding-bottom:13px;&amp;quot;&amp;gt;&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
   # Previous and next edition #&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&amp;lt;div style=&amp;quot;font-variant: small-caps; font-family:Georgia, Palatino, Palatino Linotype, Times, Times New Roman, serif; font-size:100%; background-color:transparent; border:none; color:#666; margin-left:auto; margin-right:auto; text-align:center;&amp;quot;&amp;gt;&amp;lt;!--&lt;br /&gt;
 --&amp;gt;&amp;lt;span style=&amp;quot;float:left&amp;quot;&amp;gt;&amp;amp;lt;[[:{{{prevlang|{{{lang|{{{2|en}}}}}}}}}:FlightGear Newsletter {{#time: F Y | {{{prev|{{{1|now}}} - 1 month}}} | {{{prevlang | {{{lang| {{{2|en}}} }}} }}} }}&amp;lt;!--&lt;br /&gt;
     --&amp;gt;|{{langSwitch|lang={{{lang|{{{2|}}} }}}&lt;br /&gt;
            | en = Previous edition&lt;br /&gt;
            | de = Vorherige Ausgabe&lt;br /&gt;
            | fr = Edition précédente&lt;br /&gt;
         }}]]&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;float:right&amp;quot;&amp;gt;&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
  --&amp;gt;{{User:Skybike/Template:This months newsletter|date={{{next|{{{1|now}}} + 1 month}}}|lang={{{nextlang|{{{lang| {{{2|en}}} }}} }}} | link = {{langSwitch|lang={{{lang|{{{2|}}}}}}&lt;br /&gt;
          | en = Next edition &lt;br /&gt;
          | de = Nächste Ausgabe&lt;br /&gt;
          | fr = Edition suivante&lt;br /&gt;
       }}|create={{LangSwitch|lang={{{lang|{{{2|}}}}}}&lt;br /&gt;
          | en = Create next &amp;lt;!--yourlanguage--&amp;gt;Edition&lt;br /&gt;
          | de = Nächste deutsche Ausgabe erstellen&lt;br /&gt;
          | fr = Créez l&#039;édition suivante &amp;lt;!--yourlanguage--&amp;gt;&lt;br /&gt;
     }}}} &amp;amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
   # Image #&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&amp;lt;br&amp;gt;&amp;lt;div style=&amp;quot;font-family:Wedding Text, Linotext, Old English Text MT, serif; font-size:58px; line-height:59px; padding-bottom:7px;&amp;quot;&amp;gt;&amp;lt;!-- &lt;br /&gt;
  --&amp;gt;[[image:magagazine.png|center|link=&amp;lt;!--&lt;br /&gt;
       Translate note: the following LangSwitch is a link to the main article [[FlightGear Newsletter]] - Add if translated to [[De/FlightGear Newsletter]]&lt;br /&gt;
   --&amp;gt;{{LangSwitch|lang={{{lang|{{{2|}}}}}}&lt;br /&gt;
       | en = FlightGear Newsletter&lt;br /&gt;
       | de = De/FlightGear Newsletter&lt;br /&gt;
       | fr = Fr/FlightGear Newsletter &lt;br /&gt;
      }}]]&amp;lt;/div&amp;gt;&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
  #create/write and read#&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&amp;lt;div style=&amp;quot;font-family:Georgia, Palatino, Palatino Linotype, Times, Times New Roman, serif; font-size:100%; background-color:transparent; border:none; color:#666; margin-left:auto; margin-right:auto; text-align:center;&amp;quot;&amp;gt;&amp;lt;div style=&amp;quot;font-variant: small-caps; width:33%; float:left; text-align:left; margin-top:3px;&amp;quot;&amp;gt;&#039;&#039;&#039;&amp;lt;!--&lt;br /&gt;
  --&amp;gt;{{LangSwitch|lang={{{lang|{{{2|}}}}}}&lt;br /&gt;
       | en = Enjoy reading the [[FlightGear Newsletter {{#time: F Y | last month | en }}|latest edition]]!&lt;br /&gt;
       | de = Lies auch die [[De/FlightGear Newsletter {{#time: F Y | last month | de }}|neueste Ausgabe]]!&lt;br /&gt;
       | fr = Bonne lecture de [[FlightGear Newsletter {{#time: F Y | last month | fr }}|l&#039;édition précédente]]!&lt;br /&gt;
     }}&#039;&#039;&#039;&amp;lt;/div&amp;gt;&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
 &amp;quot;Help us write&amp;quot; will only link to the english newsletter, as this is the only place for a new article&lt;br /&gt;
--&amp;gt;&amp;lt;div style=&amp;quot;font-variant: small-caps; width:33%; float:right; text-align:right; margin-top:3px;&amp;quot;&amp;gt;&#039;&#039;&#039;&amp;lt;!--&lt;br /&gt;
  --&amp;gt;{{User:Skybike/Template:This months newsletter|date=now|lang=en|link={{langSwitch|lang={{{lang|{{{2|}}}}}}&lt;br /&gt;
          | en = Please help us write / the coming edition&lt;br /&gt;
          | de = Bitte hilf uns beim Schreiben der / nächsten Ausgabe&lt;br /&gt;
          | fr = SVP aidez-nous à compléter l&#039;édition en cours&lt;br /&gt;
       }}|create={{langSwitch|lang={{{lang|{{{2|}}}}}}&lt;br /&gt;
          | en = Create the coming &amp;lt;!--english--&amp;gt;edition&lt;br /&gt;
          | de = Erstelle die nächste englische Ausgabe&lt;br /&gt;
          | fr = Créez la nouvelle édition en&amp;lt;!--english--&amp;gt;&lt;br /&gt;
     }}}}!&#039;&#039;&#039;&amp;lt;/div&amp;gt;&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
  # Edition (Date) #&lt;br /&gt;
--&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap; line-height:120%; font-size:155%; color:#333;&amp;quot;&amp;gt;{{#time:F Y | {{{1|now}}} |{{{lang|{{{2|en}}}}}}}}&amp;lt;br /&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Informative template|1=&lt;br /&gt;
__NOTOC__&lt;br /&gt;
== Goal ==&lt;br /&gt;
This template is used for the head of the [[FlightGear Newsletter]] beginning with the [[FlightGear Newsletter June 2014|July 2014 edition]].&lt;br /&gt;
&lt;br /&gt;
== Usage ==&lt;br /&gt;
Add the template to the top of the newsletter article.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;{{&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;:User:Skybike/Newsletter-header-translate&#039;&#039;&#039;&amp;lt;nowiki&amp;gt;|edition|lang=le|&amp;lt;/nowiki&amp;gt;prev=&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;next=&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;prevlang=&amp;lt;nowiki&amp;gt;}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; edition:  Mandatory edition in &#039;&#039;YYYY-MM&#039;&#039; format, for example &#039;&#039;&#039;{{CURRENTYEAR}}-{{CURRENTMONTH}}&#039;&#039;&#039;. ( For language consistance &#039;&#039;MonthInEnglish YYYY&#039;&#039; as &#039;{{CURRENTMONTHNAME}} {{CURRENTYEAR}}&#039; is not recommended).&lt;br /&gt;
&lt;br /&gt;
; lang: for non english pages add your language like de, fr, es, ca,... (optional)&lt;br /&gt;
&lt;br /&gt;
; next/prev: if last month or next month is skipped &#039;&#039;YYYY-MM&#039;&#039; (optional)&lt;br /&gt;
&lt;br /&gt;
; nextlang/prevlang: The first (last) translated newsletter of a series should link to english counterpart to prevent deadlinks (optional)&lt;br /&gt;
== Examples ==&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;{{User:Skybike/Template:Newsletter-header-translate|&amp;lt;/nowiki&amp;gt;{{CURRENTYEAR}}-{{CURRENTMONTH}}&amp;lt;nowiki&amp;gt;}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
{{User:Skybike/Template:Newsletter-header-translate|{{CURRENTYEAR}}-{{CURRENTMONTH}}}}&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;{{User:Skybike/Template:Newsletter-header-translate|&amp;lt;/nowiki&amp;gt;{{CURRENTYEAR}}-{{CURRENTMONTH}}&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;lang=de&amp;lt;nowiki&amp;gt;}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
{{User:Skybike/Template:Newsletter-header-translate|{{CURRENTYEAR}}-{{CURRENTMONTH}}|lang=de}}&lt;br /&gt;
&lt;br /&gt;
June 2022 version has been skipped. So May version should link to &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{...|2022-05|next=2022-07}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; and july to &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;|prev=2022-05}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;{{User:Skybike/Template:Newsletter-header-translate|2022-05|next=2022-07}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
{{User:Skybike/Template:Newsletter-header-translate|2022-05|next=2022-07}}&lt;br /&gt;
== Related templates ==&lt;br /&gt;
* [[User:Skybike/Template:This months newsletter]]&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Newsletter templates]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=User:Skybike/Template:Newsletter-header-translate&amp;diff=143829</id>
		<title>User:Skybike/Template:Newsletter-header-translate</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=User:Skybike/Template:Newsletter-header-translate&amp;diff=143829"/>
		<updated>2026-03-28T15:09:40Z</updated>

		<summary type="html">&lt;p&gt;Adaz: Undo revision 143828 by Adaz (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&amp;lt;div style=&amp;quot;border-bottom:1px solid #DDD;&amp;quot;&amp;gt;&amp;lt;div style=&amp;quot;background-position:center -15px; border-bottom:3px double #BBB; border-top:3px double #BCBCBC; background-color: #F5F5F5; padding-bottom:13px;&amp;quot;&amp;gt;&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
   # Previous and next edition #&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&amp;lt;div style=&amp;quot;font-variant: small-caps; font-family:Georgia, Palatino, Palatino Linotype, Times, Times New Roman, serif; font-size:100%; background-color:transparent; border:none; color:#666; margin-left:auto; margin-right:auto; text-align:center;&amp;quot;&amp;gt;&amp;lt;!--&lt;br /&gt;
 --&amp;gt;&amp;lt;span style=&amp;quot;float:left&amp;quot;&amp;gt;&amp;amp;lt;[[:{{{prevlang|{{{lang|{{{2|en}}}}}}}}}:FlightGear Newsletter {{#time: F Y | {{{prev|{{{1|now}}} - 1 month}}} | {{{prevlang | {{{lang| {{{2|en}}} }}} }}} }}&amp;lt;!--&lt;br /&gt;
     --&amp;gt;|{{LangSwitch|lang={{{lang|{{{2|}}} }}}&lt;br /&gt;
            | en = Previous edition&lt;br /&gt;
            | de = Vorherige Ausgabe&lt;br /&gt;
            | fr = Edition précédente&lt;br /&gt;
         }}]]&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;float:right&amp;quot;&amp;gt;&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
  --&amp;gt;{{User:Skybike/Template:This months newsletter|date={{{next|{{{1|now}}} + 1 month}}}|lang={{{nextlang|{{{lang| {{{2|en}}} }}} }}} | link = {{LangSwitch|lang={{{lang|{{{2|}}}}}}&lt;br /&gt;
          | en = Next edition &lt;br /&gt;
          | de = Nächste Ausgabe&lt;br /&gt;
          | fr = Edition suivante&lt;br /&gt;
       }}|create={{LangSwitch|lang={{{lang|{{{2|}}}}}}&lt;br /&gt;
   | en = Create next &amp;lt;!--yourlanguage--&amp;gt;Edition&lt;br /&gt;
   | de = Nächste deutsche Ausgabe erstellen&lt;br /&gt;
   | fr = Créez l&#039;édition suivante &amp;lt;!--yourlanguage--&amp;gt;&lt;br /&gt;
}} &amp;amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
   # Image #&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&amp;lt;br&amp;gt;&amp;lt;div style=&amp;quot;font-family:Wedding Text, Linotext, Old English Text MT, serif; font-size:58px; line-height:59px; padding-bottom:7px;&amp;quot;&amp;gt;&amp;lt;!-- &lt;br /&gt;
  --&amp;gt;[[image:magagazine.png|center|link=&amp;lt;!--&lt;br /&gt;
       Translate note: the following LangSwitch is a link to the main article [[FlightGear Newsletter]] - Add if translated to [[De/FlightGear Newsletter]]&lt;br /&gt;
   --&amp;gt;{{LangSwitch|lang={{{lang|{{{2|}}}}}}&lt;br /&gt;
       | en = FlightGear Newsletter&lt;br /&gt;
       | de = De/FlightGear Newsletter&lt;br /&gt;
       | fr = Fr/FlightGear Newsletter &lt;br /&gt;
      }}]]&amp;lt;/div&amp;gt;&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
  #create/write and read#&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&amp;lt;div style=&amp;quot;font-family:Georgia, Palatino, Palatino Linotype, Times, Times New Roman, serif; font-size:100%; background-color:transparent; border:none; color:#666; margin-left:auto; margin-right:auto; text-align:center;&amp;quot;&amp;gt;&amp;lt;div style=&amp;quot;font-variant: small-caps; width:33%; float:left; text-align:left; margin-top:3px;&amp;quot;&amp;gt;&#039;&#039;&#039;&amp;lt;!--&lt;br /&gt;
  --&amp;gt;{{LangSwitch|lang={{{lang|{{{2|}}}}}}&lt;br /&gt;
       | en = Enjoy reading the [[FlightGear Newsletter {{#time: F Y | last month | en }}|latest edition]]!&lt;br /&gt;
       | de = Lies auch die [[De/FlightGear Newsletter {{#time: F Y | last month | de }}|neueste Ausgabe]]!&lt;br /&gt;
       | fr = Bonne lecture de [[FlightGear Newsletter {{#time: F Y | last month | fr }}|l&#039;édition précédente]]!&lt;br /&gt;
     }}&#039;&#039;&#039;&amp;lt;/div&amp;gt;&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
 &amp;quot;Help us write&amp;quot; will only link to the english newsletter, as this is the only place for a new article&lt;br /&gt;
--&amp;gt;&amp;lt;div style=&amp;quot;font-variant: small-caps; width:33%; float:right; text-align:right; margin-top:3px;&amp;quot;&amp;gt;&#039;&#039;&#039;&amp;lt;!--&lt;br /&gt;
  --&amp;gt;{{User:Skybike/Template:This months newsletter|date=now|lang=en|link={{LangSwitch|lang={{{lang|{{{2|}}}}}}&lt;br /&gt;
          | en = Please help us write / the coming edition&lt;br /&gt;
          | de = Bitte hilf uns beim Schreiben der / nächsten Ausgabe&lt;br /&gt;
          | fr = SVP aidez-nous à compléter l&#039;édition en cours&lt;br /&gt;
       }}|create={{LangSwitch|lang={{{lang|{{{2|}}}}}}&lt;br /&gt;
          | en = Create the coming &amp;lt;!--english--&amp;gt;edition&lt;br /&gt;
          | de = Erstelle die nächste englische Ausgabe&lt;br /&gt;
          | fr = Créez la nouvelle édition en&amp;lt;!--english--&amp;gt;&lt;br /&gt;
     }}}}!&#039;&#039;&#039;&amp;lt;/div&amp;gt;&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
  # Edition (Date) #&lt;br /&gt;
--&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap; line-height:120%; font-size:155%; color:#333;&amp;quot;&amp;gt;{{#time:F Y | {{{1|now}}} |{{{lang|{{{2|en}}}}}}}}&amp;lt;br /&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Informative template|1=&lt;br /&gt;
__NOTOC__&lt;br /&gt;
== Goal ==&lt;br /&gt;
This template is used for the head of the [[FlightGear Newsletter]] beginning with the [[FlightGear Newsletter June 2014|July 2014 edition]].&lt;br /&gt;
&lt;br /&gt;
== Usage ==&lt;br /&gt;
Add the template to the top of the newsletter article.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;{{&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;:User:Skybike/Newsletter-header-translate&#039;&#039;&#039;&amp;lt;nowiki&amp;gt;|edition|lang=le|&amp;lt;/nowiki&amp;gt;prev=&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;next=&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;prevlang=&amp;lt;nowiki&amp;gt;}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; edition:  Mandatory edition in &#039;&#039;YYYY-MM&#039;&#039; format, for example &#039;&#039;&#039;{{CURRENTYEAR}}-{{CURRENTMONTH}}&#039;&#039;&#039;. ( For language consistance &#039;&#039;MonthInEnglish YYYY&#039;&#039; as &#039;{{CURRENTMONTHNAME}} {{CURRENTYEAR}}&#039; is not recommended).&lt;br /&gt;
&lt;br /&gt;
; lang: for non english pages add your language like de, fr, es, ca,... (optional)&lt;br /&gt;
&lt;br /&gt;
; next/prev: if last month or next month is skipped &#039;&#039;YYYY-MM&#039;&#039; (optional)&lt;br /&gt;
&lt;br /&gt;
; nextlang/prevlang: The first (last) translated newsletter of a series should link to english counterpart to prevent deadlinks (optional)&lt;br /&gt;
== Examples ==&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;{{User:Skybike/Template:Newsletter-header-translate|&amp;lt;/nowiki&amp;gt;{{CURRENTYEAR}}-{{CURRENTMONTH}}&amp;lt;nowiki&amp;gt;}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
{{User:Skybike/Template:Newsletter-header-translate|{{CURRENTYEAR}}-{{CURRENTMONTH}}}}&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;{{User:Skybike/Template:Newsletter-header-translate|&amp;lt;/nowiki&amp;gt;{{CURRENTYEAR}}-{{CURRENTMONTH}}&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;lang=de&amp;lt;nowiki&amp;gt;}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
{{User:Skybike/Template:Newsletter-header-translate|{{CURRENTYEAR}}-{{CURRENTMONTH}}|lang=de}}&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;{{User:Skybike/Template:Newsletter-header-translate|&amp;lt;/nowiki&amp;gt;{{CURRENTYEAR}}-{{CURRENTMONTH}}&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;lang=fr&amp;lt;nowiki&amp;gt;}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
{{User:Skybike/Template:Newsletter-header-translate|{{CURRENTYEAR}}-{{CURRENTMONTH}}|lang=fr}}&lt;br /&gt;
&lt;br /&gt;
June 2022 version has been skipped. So May version should link to &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{...|2022-05|next=2022-07}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; and july to &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;|prev=2022-05}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;{{User:Skybike/Template:Newsletter-header-translate|2022-05|next=2022-07}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
{{User:Skybike/Template:Newsletter-header-translate|2022-05|next=2022-07}}&lt;br /&gt;
== Related templates ==&lt;br /&gt;
* [[User:Skybike/Template:This months newsletter]]&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Newsletter templates]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.nl/w/index.php?title=User:Skybike/Template:Newsletter-header-translate&amp;diff=143828</id>
		<title>User:Skybike/Template:Newsletter-header-translate</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.nl/w/index.php?title=User:Skybike/Template:Newsletter-header-translate&amp;diff=143828"/>
		<updated>2026-03-28T15:08:33Z</updated>

		<summary type="html">&lt;p&gt;Adaz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&amp;lt;div style=&amp;quot;border-bottom:1px solid #DDD;&amp;quot;&amp;gt;&amp;lt;div style=&amp;quot;background-position:center -15px; border-bottom:3px double #BBB; border-top:3px double #BCBCBC; background-color: #F5F5F5; padding-bottom:13px;&amp;quot;&amp;gt;&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
   # Previous and next edition #&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&amp;lt;div style=&amp;quot;font-variant: small-caps; font-family:Georgia, Palatino, Palatino Linotype, Times, Times New Roman, serif; font-size:100%; background-color:transparent; border:none; color:#666; margin-left:auto; margin-right:auto; text-align:center;&amp;quot;&amp;gt;&amp;lt;!--&lt;br /&gt;
 --&amp;gt;&amp;lt;span style=&amp;quot;float:left&amp;quot;&amp;gt;&amp;amp;lt;[[:{{{prevlang|{{{lang|{{{2|en}}}}}}}}}:FlightGear Newsletter {{#time: F Y | {{{prev|{{{1|now}}} - 1 month}}} | {{{prevlang | {{{lang| {{{2|en}}} }}} }}} }}&amp;lt;!--&lt;br /&gt;
     --&amp;gt;|{{LangSwitch|lang={{{lang|{{{2|}}} }}}&lt;br /&gt;
            | en = Previous edition&lt;br /&gt;
            | de = Vorherige Ausgabe&lt;br /&gt;
            | fr = Edition précédente&lt;br /&gt;
         }}]]&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;float:right&amp;quot;&amp;gt;&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
  --&amp;gt;{{User:Skybike/Template:This months newsletter|date={{{next|{{{1|now}}} + 1 month}}}|lang={{{nextlang|{{{lang| {{{2|en}}} }}} }}} | link = {{LangSwitch|lang={{{lang|{{{2|}}}}}}&lt;br /&gt;
          | en = Next edition &lt;br /&gt;
          | de = Nächste Ausgabe&lt;br /&gt;
          | fr = Edition suivante&lt;br /&gt;
       }}|create={{LangSwitch|lang={{{lang|{{{2|}}}}}}&lt;br /&gt;
   | en = Create next &amp;lt;!--yourlanguage--&amp;gt;Edition&lt;br /&gt;
   | de = Nächste deutsche Ausgabe erstellen&lt;br /&gt;
   | fr = Créez l&#039;édition suivante &amp;lt;!--yourlanguage--&amp;gt;&lt;br /&gt;
}}} &amp;amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
   # Image #&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&amp;lt;br&amp;gt;&amp;lt;div style=&amp;quot;font-family:Wedding Text, Linotext, Old English Text MT, serif; font-size:58px; line-height:59px; padding-bottom:7px;&amp;quot;&amp;gt;&amp;lt;!-- &lt;br /&gt;
  --&amp;gt;[[image:magagazine.png|center|link=&amp;lt;!--&lt;br /&gt;
       Translate note: the following LangSwitch is a link to the main article [[FlightGear Newsletter]] - Add if translated to [[De/FlightGear Newsletter]]&lt;br /&gt;
   --&amp;gt;{{LangSwitch|lang={{{lang|{{{2|}}}}}}&lt;br /&gt;
       | en = FlightGear Newsletter&lt;br /&gt;
       | de = De/FlightGear Newsletter&lt;br /&gt;
       | fr = Fr/FlightGear Newsletter &lt;br /&gt;
      }}]]&amp;lt;/div&amp;gt;&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
  #create/write and read#&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&amp;lt;div style=&amp;quot;font-family:Georgia, Palatino, Palatino Linotype, Times, Times New Roman, serif; font-size:100%; background-color:transparent; border:none; color:#666; margin-left:auto; margin-right:auto; text-align:center;&amp;quot;&amp;gt;&amp;lt;div style=&amp;quot;font-variant: small-caps; width:33%; float:left; text-align:left; margin-top:3px;&amp;quot;&amp;gt;&#039;&#039;&#039;&amp;lt;!--&lt;br /&gt;
  --&amp;gt;{{LangSwitch|lang={{{lang|{{{2|}}}}}}&lt;br /&gt;
       | en = Enjoy reading the [[FlightGear Newsletter {{#time: F Y | last month | en }}|latest edition]]!&lt;br /&gt;
       | de = Lies auch die [[De/FlightGear Newsletter {{#time: F Y | last month | de }}|neueste Ausgabe]]!&lt;br /&gt;
       | fr = Bonne lecture de [[FlightGear Newsletter {{#time: F Y | last month | fr }}|l&#039;édition précédente]]!&lt;br /&gt;
     }}&#039;&#039;&#039;&amp;lt;/div&amp;gt;&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
 &amp;quot;Help us write&amp;quot; will only link to the english newsletter, as this is the only place for a new article&lt;br /&gt;
--&amp;gt;&amp;lt;div style=&amp;quot;font-variant: small-caps; width:33%; float:right; text-align:right; margin-top:3px;&amp;quot;&amp;gt;&#039;&#039;&#039;&amp;lt;!--&lt;br /&gt;
  --&amp;gt;{{User:Skybike/Template:This months newsletter|date=now|lang=en|link={{LangSwitch|lang={{{lang|{{{2|}}}}}}&lt;br /&gt;
          | en = Please help us write / the coming edition&lt;br /&gt;
          | de = Bitte hilf uns beim Schreiben der / nächsten Ausgabe&lt;br /&gt;
          | fr = SVP aidez-nous à compléter l&#039;édition en cours&lt;br /&gt;
       }}|create={{LangSwitch|lang={{{lang|{{{2|}}}}}}&lt;br /&gt;
          | en = Create the coming &amp;lt;!--english--&amp;gt;edition&lt;br /&gt;
          | de = Erstelle die nächste englische Ausgabe&lt;br /&gt;
          | fr = Créez la nouvelle édition en&amp;lt;!--english--&amp;gt;&lt;br /&gt;
     }}}}!&#039;&#039;&#039;&amp;lt;/div&amp;gt;&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
  # Edition (Date) #&lt;br /&gt;
--&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap; line-height:120%; font-size:155%; color:#333;&amp;quot;&amp;gt;{{#time:F Y | {{{1|now}}} |{{{lang|{{{2|en}}}}}}}}&amp;lt;br /&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Informative template|1=&lt;br /&gt;
__NOTOC__&lt;br /&gt;
== Goal ==&lt;br /&gt;
This template is used for the head of the [[FlightGear Newsletter]] beginning with the [[FlightGear Newsletter June 2014|July 2014 edition]].&lt;br /&gt;
&lt;br /&gt;
== Usage ==&lt;br /&gt;
Add the template to the top of the newsletter article.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;{{&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;:User:Skybike/Newsletter-header-translate&#039;&#039;&#039;&amp;lt;nowiki&amp;gt;|edition|lang=le|&amp;lt;/nowiki&amp;gt;prev=&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;next=&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;prevlang=&amp;lt;nowiki&amp;gt;}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; edition:  Mandatory edition in &#039;&#039;YYYY-MM&#039;&#039; format, for example &#039;&#039;&#039;{{CURRENTYEAR}}-{{CURRENTMONTH}}&#039;&#039;&#039;. ( For language consistance &#039;&#039;MonthInEnglish YYYY&#039;&#039; as &#039;{{CURRENTMONTHNAME}} {{CURRENTYEAR}}&#039; is not recommended).&lt;br /&gt;
&lt;br /&gt;
; lang: for non english pages add your language like de, fr, es, ca,... (optional)&lt;br /&gt;
&lt;br /&gt;
; next/prev: if last month or next month is skipped &#039;&#039;YYYY-MM&#039;&#039; (optional)&lt;br /&gt;
&lt;br /&gt;
; nextlang/prevlang: The first (last) translated newsletter of a series should link to english counterpart to prevent deadlinks (optional)&lt;br /&gt;
== Examples ==&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;{{User:Skybike/Template:Newsletter-header-translate|&amp;lt;/nowiki&amp;gt;{{CURRENTYEAR}}-{{CURRENTMONTH}}&amp;lt;nowiki&amp;gt;}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
{{User:Skybike/Template:Newsletter-header-translate|{{CURRENTYEAR}}-{{CURRENTMONTH}}}}&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;{{User:Skybike/Template:Newsletter-header-translate|&amp;lt;/nowiki&amp;gt;{{CURRENTYEAR}}-{{CURRENTMONTH}}&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;lang=de&amp;lt;nowiki&amp;gt;}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
{{User:Skybike/Template:Newsletter-header-translate|{{CURRENTYEAR}}-{{CURRENTMONTH}}|lang=de}}&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;{{User:Skybike/Template:Newsletter-header-translate|&amp;lt;/nowiki&amp;gt;{{CURRENTYEAR}}-{{CURRENTMONTH}}&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;lang=fr&amp;lt;nowiki&amp;gt;}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
{{User:Skybike/Template:Newsletter-header-translate|{{CURRENTYEAR}}-{{CURRENTMONTH}}|lang=fr}}&lt;br /&gt;
&lt;br /&gt;
June 2022 version has been skipped. So May version should link to &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{...|2022-05|next=2022-07}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; and july to &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;|prev=2022-05}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;{{User:Skybike/Template:Newsletter-header-translate|2022-05|next=2022-07}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
{{User:Skybike/Template:Newsletter-header-translate|2022-05|next=2022-07}}&lt;br /&gt;
== Related templates ==&lt;br /&gt;
* [[User:Skybike/Template:This months newsletter]]&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Newsletter templates]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Adaz</name></author>
	</entry>
</feed>