# FlightGear/Volare con FlightGear

FlightGear
Copertina Tutti i moduli · Sviluppo
* FlightGearFlightGear
* IntroduzioneFlightGear/Introduzione
* InstallazioneFlightGear/Installazione
* Il linguaggio NASALFlightGear/Il linguaggio NASAL
* In volo con FlightGearFlightGear/In volo con FlightGear
* Navigazione aereaFlightGear/Navigazione aerea
* Note tecnicheFlightGear/Note tecniche
* Volare con FlightGearFlightGear/Volare con FlightGear
Modifica il sommario
Questa parte del manuale è scritta al fine dispiegare ed approfondire tutta una serie di temi che riguardano l'installazione di FlightGear nei principali sistemi operativi (Linux, MAC-OS, Windows), l'interfacciamento alle principali periferiche e alcune aggiunte che rendono l'ambiente di simulazione di FlightGear del tutto particolare.

## Eseguire FlightGear nei tre principali ambienti operativi (Linux, MAC, Windows)
### Eseguire il FlightGear da Linux

Nel caso che si utilizzi una distribuzione Linux Debian o una delle sue tante derivate di cui la più famosa è Ubuntu, l'installazione si può fare con grande semplicità utilizzando il comando:
Oppure utilizzando un programma per l'installazione dei pacchetti software come l'ottimo Synaptic. Anche in altre distribuzioni come Suse o w:RedHat è possibile installare FlightGear tramite le apposite funzioni di installazione dei pacchetti software previste per tali ambienti.
L'installazione del pacchetto fatta in questi ambienti operativi pensa a tutto, tranne che ad installare la variabili di ambiente FG_ROOT e FG_SCENERY che nel modo di funzionamento standard non sono necessarie. Questa variabili vanno invece configurate (Vedi: ...) solo nel caso che sia necessario personalizzare maggiormente l'applicazione.
Nel raro caso che la propria distribuzione non possieda FlightGear o si voglia installare una distribuzione di Flightgear il più possibile aggiornata, è necessario eseguire una installazione con preventiva compilazione del pacchetto, questa tecnica è sicuramente più complessa e si rimanda per ulteriori approfondimenti al capitolo (...).
Una volta installato il programma si può eseguire dal menu di lancio che normalmente è una voce del menu Giochi, oppure da terminale di linux sotto forma di un comando che nel caso più semplice sarà:
Quando si esegue FlightGear con questo comando si caricherà la configurazione standard che è velivolo Cessna 172p, l'aeroporto di San Francisco International (KSFO), l'ora locale dell'aeroporto ed il tempo meteorologico effettivamente presente in quel momento all'aeroporto. Come già visto nel capitolo (...) questa configurazione è ottimale per iniziare a fare i primi voli di ambientamento, ma poi se si vuole fare altro bisogna poter comunicare al programma le nostre intenzioni. Su altri simulatori di volo basta andare sul menu posto normalmente in altro e cambiare uno o più parametri. Su FlighGear, sorpresa il menu posto in altro modifica solo i parametri ambientali (Aeroporto, Orario, Tempo meteorologico, qualità della grafica, ma non è possibile cambiare l'aereo, in quanto, come già detto in precedenza, la gestione l'aereo è un compito che gestisce un programma apposito, detto FDM (Flight Dynamics Model), che viene selezionato tra un certo numero di FDM disponibili (vedi ...) e che è associato ad un certo aereo. Perciò se si cambia aereo in realtà si deve rieseguire FlightGear. Da tutto questo la selezione dell'aereo è fattibile solo al momento della partenza del programma, aggiungendo al comando fgfs il parametro --aircraft=b1900d che ad esempio carica ed esegue l'ottimo Beechcraft B1900D. In questo caso il comando diventa:
Si può anche preselezione l'aeroporto, ad esempio l'aeroporto di Bergamo Orio al Serio (LIME) si può richiamare immediatamente con il seguente comando:
Quando si esegue FlighGear da riga di comando si scopre che ci sono molti altri parametri che possono definire aspetti anche molto particolari del programma, ma è comprensibile che questo modo di eseguire il programma sia, specie per gli utenti MAC e Windows, piuttosto complicato, quindi in questi anni alcuni volontari hanno scritto dei programmi con interfaccia grafica che permettono di eseguire l'applicazione, personalizzarla selezionando alcuni parametri fondamentali e salvare i parametri settati in modo da poter rilanciare l'applicazione senza doverli settare un'altra volta. Il programma di esecuzione più diffuso è fgrun che per le installazioni Windows e MAC è già installato, invece per sistemi operativi Linux va probabilmente installato. Ad esempio l'installazione per Ubuntu o Debian richiede il seguente comando:
Ed il programma si esegue da terminale con il comando

### Eseguire il FlightGear da Mac OS

Il pacchetto binario precompilato per Mac OS viene già fornito con un programma di avvio grafico. Per attivarlo è sufficiente fare un doppio clic sull'icona FlightGear posta nella cartella Applicazioni di Mac OS, Il programma di esecuzione sotto Mac è piuttosto pratico da usare e permette di configurare diversi parametri del programma. I principali parametri della finestra di avvio sono:
* Selezionare un aereo ed il relativo aeroporto di partenza La selezione avviene cliccando sugli ingranaggi posti alla estrema destra del campo. La selezione degli aerei farà comparire la miniatura dell'aereo selezionato. Per l'aeroporto, sempre cliccando sulla icona con gli ingranaggi posta alla estrema destra è possibile fare comparire la lista. Oppure iniziando a digitare le lettere del codice ICAO dell'aeroporto, ad esempio LIME selezionerà l'aeroporto di Orio al Serio (Bergamo). È anche possibile da menù utilizzare una funzione avanzata di selezione dell'aeroporto per mezzo della sua posizione su di una carta geografica.
* Abilitare o disabilitare il download automatico dello scenario (per mezzo di TerraSync) (vedi cap. ...) I dati dello scenario dinamico saranno automaticamente inseriti in una area di memoria del disco che avrà il seguente percorso: /Applications/FlightGear.app/Contents/Resouces/data/Scenery-Terrasync.
* Attivare o disattivare la mappa di navigazione (Atlas) (vedi cap. ...) La versione Mac di FlightGear comprende l'applicazione Atlas (Vedi cap. ...), che presenta una mappa di navigazione che aiuta a seguire il proprio piano di volo. Selezionando questa opzione Atlas verrà avviato automaticamente all'avvio del volo.
* Esecuzione di programma per mezzo del tasto Start Flight. Una volta cliccato su questo pulsante inizierà a partire l'applicazione presentando la sua caratteristica finestra grafica.

### L'interfaccia grafica per l'avvio di FlightGear

Una volta in esecuzione il programma è piuttosto spartano e per certi versi ancora con un'interfaccia incompleta. Il programma funziona come una sorta di Wizard formato da 3 quadri principali che vengono proposti al fine di poter parametrizzare in modo completo l'applicazione. Il programma per prima cosa, vedi quadro 1, richiede la selezione del tipo di aereo. La lista con l'elenco degli aerei è posizionata a sinistra del quadro, contiene tutti gli aerei presenti all'interno della directory standard /fgdata/Aircraft, la lista presenta in evidenza il nome dell'aereo, nell'esempio il (Cessna) c172p, questa lista apre una sottolista che riporta le varianti a disposizione che nell'esempio sono 3. Si seleziona la variante che ci interessa e cliccando il tasto Successivo si va al quadro 2. Nel caso che desidera una più chiara visualizzazione 3D del velivolo è possibile cliccare sul il tasto Viewer, in questo caso ci sarà mostrata una immagine ingrandita del modello 3D del velivolo e con il mouse è possibile modificare la vista e con la rotella del mouse avvicinarsi od allontanarsi da esso. C'è anche un comodo Rating inserito in basso a sinistra della vista dell'aereo, questo è composto da 4 campi:
* FDM - La qualità del sistema di simulazione, ovvero quanto il sistema riesce a simulare il velivolo reale sia a livello di caratteristiche del volo, sensibilità ai comandi tec.
* Systems - La qualità dei sistemi elettrici, meccanici e di automazione che compongono il velivolo selezionato. A tutto questo anche con la possibilità di poter simulare guasti o rotture etc.
* Cockpit - La qualità del pannello degli strumenti, la sua completezza e veridicità con l'originale.
* Model - La qualità del modello 3D del velivolo sia a livello geometrico che a livello di livrea.
Tutte queste informazioni sono presenti all'interno del wiki di FlightGear e possono essere modificate variando il numero delle stellette presenti per ognuno dei quattro campi prima illustrati.
Una volta che si è cliccato sul tasto Successivo si visualizza il quadro 2 nel quale sono elencati gli aeroporti, con le relative piste di decollo, presenti all'interno del file compresso /fgdata/Airports/apt.dat.gz, con le relative piste di decollo (Runways) e le zone di parcheggio (Parking) contrassegnate con le caratteristiche lettere della regolamentazione internazionale IATA. È anche possibile richiedere il decollo da una portaerei, ad esempio la portaerei americana Nimitz inserendo il nome Nimitz dentro il campo Carrier, in questo caso è anche necessario ricordarsi di selezionare lo scenario nimitz_demo posto nel successivo quadro.
Il terzo quadro è sicuramente il più complesso da capire ed utilizzare e per molti aspetti mostra una certa dose approssimazione di questo programma, specie per la versione Linux. Si nota che il programma è composto di alcuni sottoquadri, ognuno dei quali compie una specifica funzione di configurazione, i sottoquadri sono:
* Display - Sono le principali finzione di visualizzazione, come la dimensione iniziale della finestra, il numero di bit della risoluzione colore, normalmente va bene il valore preimpostato 32 (8 bit x 4 colori), valori più bassi, ad esempio 24 o 16, sono utili per le schede grafiche più vecchie. Con le moderne schede grafiche la riduzione di questo parametro può portare al più ad un rallentamento e non ad una accelerazione della grafica. Interessante è l'opzione 3D Clouds che permette di visualizzare le nubi in 3D, ma fare attenzione, se la scheda grafica ha poca memoria questa opzione può portare a ridurre in modo sostanziale la velocità (frame-rate) del video specie se la copertura nuvolosa è elevata. Ci sono altre 4 opzioni relative alla qualità di visualizzazione video.
* Features - Sono alcune impostazioni generali che possono meglio definire l'ambiente in cui si svolgerà la simulazione, particolarmente utile è l'opzione Auto-coordination che permette di semplificare la virata in quanto fa in modo di coordinare gli alettoni con la pedaliera. Inoltre può essere definita l'ora del giorno in cui inizia la simulazione e lo scenario in cui la simulazione si svolgerà, ad esempio se abbiamo scelto di partire dalla portaerei Nimitz, qui è necessario selezionare lo scenario nimitz_demo. In fondo al quadro c'è la possibilità di inserire la porta di comunicazione del programma di generazione degli scenari Terrasync (vedi ...).
* Atlas - Se è presente un server di scenari esterno Terrsync, qui si inserisce l'indirizzo e la porta di comunicazione. Normalmente tale server è sul PC ove gira l'applicazione FlightGear, quindi l'indirizzo IP sarà il 127.0.0.1 con l'indirizzo della porta di comunicazione pari a 5500.
* Multiplayer - Come vedremo in seguito (vedi cap. ...), FlightGear permette una ottima gestione del volo con più utenti, chiamato volo multiplayer, per fare questo è comodo poter utilizzare un server esterno che gestisce la connessione tra più utenti, di questi server ce ne sono attualmente una decina, ma solo pochi di questi attivi, ad esempio il più utilizzato è il server mpserver01.flightgear.org. Il numero 01 può variare tra 01..10 e questo può permettere di andare a scegliere server meno trafficati. Oltre a definire il server c'è da definire il nome dell'utente, nel nostro esempio abassig, comunque qualsiasi altro nome non più lungo di 7 caratteri va bene.
* Advanced - Permette di accedere ad alcune parametrizzazioni del programma che permettono principalmente di modificare i percorsi in cui questo troverà i vari moduli di programma necessari per la corretta esecuzione della simulazione. Comunque una buona parte delle informazioni necessarie saranno descritte nelle note tecniche del manuale al capitolo (...).
Finalmente una volta parametrizzato il programma è possibile farne l'avvio cliccando sul tasto Avvia.
    Nota: Osservando il quadro in fondo a tutte le pagine del programma FgRun si notano alcuni pulsanti che servono per salvare in qualsiasi punto la configurazione fatta tramite il programma FgRun, per questo esistono i pulsanti Defaults per ricaricare la configurazione standard, Load per caricare una configurazione precedentemente salvata, Save As.. per salvare una nuova configurazione con un certo nome.

## Opzioni avanzate

Come già visto nelle sezioni di avvio del programma per vari sistemi operativi è possibile inserire delle ulteriori opzioni sia a livello di riga di comando che a livello di parametri da inserire nella sezione Avanzate del programma fgrun. Queste opzioni sono moltissime, alcune importanti per chi vola, altre solo per chi sviluppa l'applicazione. Comunque in questo paragrafo cercheremo di analizzare le più importanti e quelle che possono essere più utili per chi vuole avere il massimo dal simulatore.
I parametri, se si lancia l'applicazione tramite la riga di comando, hanno questa forma:
    fgfs --parametro-1 --parametro-2 ... --parametro-n
Come si vede è possibile inserire più parametri ciascuno dei quali separato da almeno uno spazio. Un parametro può essere accompagnato da un valore numerico, in questo caso assume la forma:
    --parametro=valore
Il valore a sua volta può essere un numero intero (es: 1234) o un numero con la parte decimale separata da un punto (es: 3.14), se è un testo che non ha spazi, basta scriverlo di seguito al segno di eguaglianza, se invece ha spazi va delimitato dal doppio apice, ad esempio:
    --parametro=questo_è_un_testo
    --parametro="questo è un testo"
    Nota: Se si utilizza fgrun per eseguire il programma è possibile rendere permanenti i nuovi parametri inserendoli all'interno del campo Properties presente nel quadro Advanced Options che si attiva cliccando sul tasto Advanced posto in fondo a destra della finestra principale dell'applicazione.
Il presente elenco di opzioni è solo una minima parte di tutte quelle attivabili, nel caso si volesse attivare altre opzioni è possibile consultare la pagina del Wiki di FlightGear Command line options che riporta tutte le opzioni attualmente accettate dal programma.

### Tipo del velivolo

Il parametro che definisce il tipo di velivolo su cui volare è:
    --aircraft=nome breve del tipo di velivolo
Se il velivolo è presente nella directory Aircraft con quello specifico nome, questi verrà caricato ed eseguito insieme al programma. Ad esempio per caricare il Cessna 172P modello base che ha come nome breve c172p basta scrivere:
    --aircraft=c172p
Nel caso che non si conoscesse quali velivoli sono presenti è possibile eseguire il seguente comando:
    --show-aircraft
A questo punto sarà mostrata la lista di tutti gli aerei disponibili, nella quale la prima colonna è il nome dell'aereo che può essere eseguito, la seconda colonna riporta il nome per esteso.

### Aeroporto di partenza

Il parametro che definisce l'aeroporto da cui decollerà il velivolo è:
    --airport=Sigla IATA dell'aeroporto da cui decollare
Ad esempio se si vuole decollare dall'aeroporto di Bergamo che si chiama Orio al Serio con sigla IATA LIME è sufficiente scrivere, ricordando che per questo parametro maiuscolo o minuscolo sono indifferenti:
    --airport=lime
Nel caso che si voglia definire anche la pista di decollo basta inserire l'opzione:
    --runway=NNN
Ove con NNN si inserisce la pista, ad esempio la 28L (28L sta ad indicare la pista di sinistra in direzione 280° Nord).
Se invece si vuole partire da una portaerei è possibile farlo per mezzo dell'opzione:
    --carrier=Nome della portaerei
Il nome della portaerei deve essere presente all'interno degli oggetti presenti in FlightGear, normalmente è sempre presente la portaerei americana nimitz. Comunque inserire il nome della portaerei non basta, va anche caricato uno scenario apposito chiamato nimitz_demo (come vedremo nel capitolo (...).

### Anti aliasing

Nelle schede grafiche più avanzate esiste una funzione chiamata anti aliasing che permette di eliminare le seghettature ai bordi degli oggetti rappresentati. Questa opzione in certi casi potrebbe rallentare la presentazione grafica e quindi il programma non la inserisce tra le predefinite, ma se si utilizzano le scheda grafiche più recenti, essendo tale funzione gestita a livello di hardware, il rallentamento complessivo potrebbe non essere molto evidente, ma il piacere nel vedere il mondo più simile a quello che noi siamo abituati a vedere può essere impagabile. L'attivazione dell'anti aliasing richiede l'inserimento di due opzioni:
    --prop:/sim/rendering/multi-sample-buffers=true
    --prop:/sim/rendering/multi-samples=4
Fare attenzione al valore numerico del parametro multi-samples=4, questo valore più grande è migliore è l'effetto, ma nello stesso tempo richiede più potenza di calcolo dalla scheda grafica e quindi può produrre un sensibile rallentamento. Il valore 4 è normalmente un valore accettabile a livello di velocità, ma che da parimenti anche un buon effetto visivo.

### Scenario dinamico

Nel caso sia disponibile nel PC o nella rete locale un server del generatore di scenari dinamico TerraSync (vedi ...) che preleva gli scenari caricati nell'indirizzo:
    http://terrascenery.googlecode.com/svn/trunk/data/Scenery/
Se tale server è stato caricato ad esempio imponendo la porta di trasmissione 5500 e la directory di deposito dei file "$HOME/fgfsScenery" potremo connettere TerraSync alla applicazione FlightGear nel seguente modo:
    --atlas=socket,out,1,localhost,5500,udp
    --fg-scenery="$FG_ROOT/Scenery/:$HOME/fgfsScenery"
Ove l'opzione: --atlas=socket,out,1,localhost,5500,udp descritta in questo esempio indica per il programma FlightGear l'indirizzo (localhost), la porta IP (5500) che permette di raggiungere il server locale TerraSync ed infine il protocollo di connessione UDP. Invece la seconda opzione --fg-scenery="$FG_ROOT/Scenery/:$HOME/fgfsScenery" indica le directory in cui è posizionata la cache degli scenari continuamente aggiornata dal server TerraSync che saranno poi letta dal programma FlightGear durante l'esecuzione.

### Autocoordinazione tra gli alettoni ed il timone verticale

Un pilota di aereo per virare in modo corretto deve riuscire a coordinare il timone verticale con gli alettoni. Ovvero il pilota deve essere capace di coordinare l'uso della pedaliera, che comanda il timone verticale, con la barra di comando o il volantino che invece comanda gli alettoni. Tale coordinamento evita che l'aereo debba iniziare a virare in derapata. Per questo il pilota, fin dai primi voli, viene istruito a sentire fisicamente con il sedere se il velivolo, durante la virata, tenda a derapare, ovvero deve imparare, che se sente il sedere spinto da un lato del seggiolino, automaticamente dovrà contrastare tale sensazione spingendo la pedaliera corrispondente. La derapata può essere anche visivamente annunciata dallo spostamento di una pallina posta al centro di una livella curva. Questo semplice strumento, sempre presente sulla consolle di un velivolo, si chiama sbandometro e viene sfruttato dal pilota, durante la virata, verificando che la pallina sia sempre al centro, se durante la virata la pallina si sposta da un lato, il pilota deve premere la pedaliera posta su quel lato, ovvero in gergo aeronautico si dice che il piede scaccia la pallina. Il problema è che il simulatore di volo non permette sempre di riuscire a fare un buon coordinamento alettoni-timone in quanto manca al pilota la sensazione fisica della derapata. Perciò, specie per i primi voli o nel caso che il joystick non possieda tale funzionalità, è utile settare l'opzione enable-auto-coordination che abilità il coordinamento automatico tra il timone verticale e gli alettoni. Normalmente l'autocoordinamento è disabilitato.
    --enable-auto-coordination
    --disable-auto-coordination

# Le condizioni meteorologiche in cui si svolgerà il volo

In FlightGear è possibile definire le condizioni meteo in cui si svolge il volo tramite la finestra di configurazione che si ottiene dal menu Enviroment-Weather. Questa finestra è apparentemente piuttosto complessa, ma in realtà la sua complessità è dovuta alla possibilità di poter attivare 5 livelli differenti di condizioni meteo in funzione della altitudine (5.000,10.000,18.000,24.000,30.000 piedi) e quindi descrivere con sufficiente chiarezza tutta la troposfera entro cui si svolgerà il volo. Qui di seguito iniziamo la descrizione, da sinistra verso destra, delle principali parti identificate da questa finestra, da notare prima che tutti i valori espressi in queste tabelle si possono eventualmente modificare se sono in neretto, mentre se sono in grigio significa che tali valori sono fissati a priori.
* Cloud Layers, definisce i livelli (layers) delle nubi, massimo 5 livelli, con la relativa altitudine espressa in piedi, la loro tipologia ed il loro spessore.
* Aloft, descrive le condizioni di venti in quota su differenti livelli, massimo 5 livelli, con la relativa altitudine espressa in piedi, la direzione in gradi rispetto al nord, la velocità in nodi, la visibilità, temperatura dell'aria e la temperatura di rugiada o punto di rugiada e la intensità della turbolenza.
* Precipitation, le condizioni di presenza di pioggia e neve.
* Boundary, sono le condizioni prossime al suolo (0,500 piedi) e quindi le condizioni meteo che ci si aspetta in prossimità della pista. La loro altitudine non è assoluta, ma relativa alla quota in cui si trova effettivamente l'aeroporto.
* Automatic Weather Generation, Per prima cosa si nota una finestra di scelta che, cliccando sul triangolino a sinistra, si apre mostrando una ricca serie di possibili condizioni meteo predefinite, di cui la prima Disabled indica che le condizioni meteo saranno inserite manualmente, ed in effetti si noterà che le scritte all'interno dei campi diventeranno tutte in neretto e quindi modificabili. La scelta di Live data, che sarà trattata con più profondità nel successivo paragrafo, permette di ottenere il meteo attuale ricavato dai bollettini METAR rilasciati dai vari aeroporti sorvolati. La scelta Manual input invece indica che sarà inserita manualmente una riga METAR, magari ricavata da un precedente bollettino meteo. Il resto delle scelte riguardano situazioni meteo predefinite utili per un allenamento al volo strumentale o presenza di nebbia mattutina.

## Meteo in tempo reale (Live data)

Una delle caratteristiche degli attuali simulatori di volo è quella di offrire la possibilità di avere una situazione meteo allineata con i bollettini meteo in formato METAR rilasciati dai singoli aeroporti in vicinanza dei quali avviene il volo.
I messaggi METAR che utilizza FlightGear sono ricavati da una particolare interrogazione via web al sito di Jeppesen della (Boeing Company)) che viene attivata sfruttando il codice ICAO dell'aeroporto presso il quale si trova il velivolo.
Ovviamente questo significa che per ottenere tali messaggi deve essere attiva la connessione internet e che il sito di Jeppesen permetta tale servizio. Purtroppo Jeppesen non da garanzia circa la continuità di tale servizio nel futuro e perciò, qualora venisse a mancare, sarà cura da parte dei programmatori di FlightGear trovare una soluzione alternativa.

### Problemi nella implementazione dei messaggi METAR

Questo modo di procedere non è perfetto a livello di simulazione del meteo reale, in quanto il meteo viene modificato solo se si è in prossimità di un certo aeroporto. Ad esempio se si è a Bergamo (Cod. ICAO LIME) ed il bollettino METAR è questo:
    271320Z VRB04KT CAVOK 13/M04 Q1020
Ma se si va a Brescia Montichiari (LIPO), il cui aeroporto è a 50 Km da Bergamo, il METAR può essere questo:
    271250Z 13011KT CAVOK 13/M02 Q1020 RMK VIS MIN 9999
Che si vede essere piuttosto differente come struttura. In questo caso quando l'aeromobile si approssima a Brescia si può avere un improvviso cambiamento del tempo dovuto alle differenti informazioni presenti nei messaggi METAR tra i due aeroporti.

## Meteo avanzato

Dal 2010 c'è stata la volontà nel gruppo di sviluppo di FlightGear di sviluppare una nuova versione del meteo sia a livello di generazione delle nubi che a livello di generazione di tutti quei fenomeni di spostamento delle masse d'aria legati alla meteorologia. Ad esempio sono stati implementati, oltre agli spostamenti della masse d'aria orizzontali (venti) a velocità variabili con continuità a vari livelli e direzioni, anche spostamenti verticali, come ad esempio le termiche o le discendenze. Parallelamente sono state introdotte le turbolenze in presenza delle nubi. L'introduzione ufficiale del pacchetto Advanced Weather 1.4 è stata fatta a febbraio del 2012 con rilascio della versione 2.6 di FlightGear. In precedenza non era possibile avere una buona gestione delle nubi sul livello di X-Plane e questo dava un senso di sconforto agli utilizzatori di FlightGear. L'implementazione del pacchetto Advanced Weather 1.4 ha permesso anche la soluzione del problema dei brutti effetti di discontinuità tra sulle condizioni di meteo reale ottenute tramite i bollettini METAR. Per risolvere questo problema è stata implementata una funzione che per ogni aerea sorvolata dall'aereo fa una media ponderata (1/r) di tutti i bollettini METAR entro un raggio di 250 Km Con questa funzione è molto più difficile avere discontinuità nello sviluppo del tempo durante il percorso.
Per attivare il programma Advanced Weather è necessario generare il meteo avanzato per mezzo di una opzione, invero piuttosto nascosta, che si trova in fondo al pannello richiamato dal menu Enviroment-Weather a destra del tasto close. Non è improbabile che in futuro si definisca una miglior integrazione di tale pannello, ma per ora ci dobbiamo accontentare di tale soluzione e questo dimostra anche la difficoltà di darle una collocazione giusta all'interno dell'ambiente di interfaccia grafica di FlightGear.
Una volta visualizzato il pannello di configurazione del programma Advanced Weather si ottiene una ricca serie di informazioni che permettono di variare in modo abbastanza fine le condizioni di tempo che vogliamo tenere lungo un certo volo.
    Nota::L'applicazione Advanced Weather assomiglia per certi versi più ad una fabbrica di nubi che ad un classico programma per la generazione della situazione meteorologica. Infatti, al fine di evitare eccessivi rallentamenti nel sistema, il programma costruisce le nubi partendo dall'area locale definita come un quadrato di 40.000 m (2 x 20.000) di lato in cui al centro c'è il velivolo e poi, se il parametro Max visibility è settato a valori più alti (nell'immagine qui a fianco 93.299 m) l'area di costruzione delle nubi si allarga in cerchi concentrici sino a completa copertura. Questo fa si che se si varia il parametro Max visibility all'inizio non succede niente, poi dopo alcuni secondi si vedrà formarsi le prime nubi e dopo un po', in funzione delle caratteristiche del PC utilizzato e della relativa scheda video, si osserverà la completa copertura. Questo approccio è simile all'approccio di tipo client-server già visto per il generatore del terreno e per altre funzioni presenti in FlightGear.

# Il joystick

Ovviamente un qualsiasi simulatore di volo deve poter gestire un dispositivo di controllo del velivolo che sia il più simile possibile ai dispositivi utilizzati dai piloti. Nel mondo reale i velivoli hanno due-tre tipi di controllo che sono nell'ordine:
* Barra di comando detta anche semplicemente barra o cloche permette di governare l'aeromobile azionando le superfici così dette orizzontali che sono costituite dagli alettoni, posti alle estremità delle ali e agli equilibratori che costituiscono il timone orizzontale o cabra-picchia. Spesso la barra di comando è costituita da una barra verticale posta tra le cosce del pilota, negli aerei civili e per gli aerei per i quali sono richieste lunghe ore di volo, la barra di comando viene sostituita da un volantino a mezzaluna che rimpiazza il movimento laterale della barra con la rotazione lungo l'asse del volantino. Nei simulatori di volo la barra di comando viene sostituita efficacemente con il joystick, come quello mostrato in figura o con un volantino che, causa il suo ingombro, è più raramente utilizzato dagli appassionati di volo simulato. Comunque quest'ultimo permette di ottenere, rispetto al joystick, un volo più preciso e meno stancante specie durante la fase di crociera.
* Pedaliera è costituita da due pedali posti ai piedi del pilota che comandano il timone verticale al fine di permettere l'imbardata del velivolo ovvero la sua rotazione lungo l'asse verticale. La pedaliera, è anche essa un accessorio utilizzato nei simulatori di volo, ma causa il suo prezzo ed ingombro viene quasi sempre sostituita dal joystick per mezzo del movimento di torsione lungo l'asse verticale.
* Manetta permette la variazione del numero di giri del motore o la spinta di un turbogetto. Nel joystick è chiamato anche 4° asse ed è realizzato per mezzo di una rotella o levetta posizionata alla base dello stesso.
Oltre a questi controlli principali i joystick hanno alcuni altri controlli ausiliari che sono:
* Pulsante di sparo è il pulsante azionato dal dito indice posto in cima al joystick. In FlightGear non viene utilizzato quasi mai per sparare, ricordiamo che FlightGear è principalmente un simulatore di volo civile, ma solo per azionare i freni (brake).
* Pulsanti alla base del joystick, sono normalmente 2-4 pulsanti che permettono di azionare ad esempio i flap o ipersostentatori per assistere il volo a bassa velocità.
* Pulsanti in testa al joystick se sono presenti vengono utilizzati per l'azionamento del trim del timone orizzontale e/o per l'azionamento di apparati ausiliari come il controllo dell'arricchimento della miscela aria-benzina per i motori a scoppio.
* Pulsanti per la modifica della vista, sono realizzati con un dischetto a 4-8 posizioni che normalmente permette di modificare il punto di vista del pilota.

## Supporto del joystick

FlightGear riconosce moltissimi joystick presenti in commercio, alcuni poi li permette di utilizzare in modo estremamente completo come i principali joystick della Saitek, della Logitech e Microsoft, ovviamente è possibile che tanti altri siano comunque compatibili. Normalmente tutti i joystick con interfaccia USB sono utilizzabili direttamente da FlightGear, in caso contrario bisogna mettere mani nel codice di un particolare file di definizione come descritto nelle Note tecniche - Configurazione del Joystick. Per ottenere dal programma le caratteristiche del joystick che è stato riconosciuto e come questi è stato riconosciuto, basta andare nel menu Help-Joystick Information ed quindi verrà mostrata una finestra che riporta l'elenco dei dispositivi joystick identificati da un numero progressivo (#0..#7) e la relativa descrizione di fabbrica, nell'esempio il dispositivo è un "Logitech Inc. WingMan Force 3D". Successivamente viene citato il drive utilizzato dal dispositivo, drive che si riconosce causa la presenza di un percorso con alla fine il nome del file che descrive quel specifico dispositivo (wingman-force-3d.xml). Questa informazione può tornare utile nel caso si voglia modificare manualmente alcune impostazioni del file, ad esempio cambiare un parametro o aggiungere qualche altra funzionalità. Successivamente vi è l'elenco degli assi (Axis) del joystick che sono stati associati ai vari dispositivi dell'aeromobile. Ad esempio l'asse #0 è associato agli alettoni, l'asse #1 al cabra-picchia etc. Una seconda serie di informazioni sono quelle relative all'associazione dei tasti (Button) associati ad alcune azioni presenti nel programma, ad esempio il tasto di sparo #0 è associato ai freni (Brakes) e così per gli altri 6 tasti. In ultimo può essere anche comodo osservare le prime due righe che stanno in testa alla finestra, queste righe indicano i valori numerici acquisiti dal programma degli assi del joystick che rilasciano i valori proporzionali con il loro spostamento, detti per l'appunto assi proporzionali. A cosa servono questo valori? Semplicemente per sapere se il proprio joystick ha tutte le carte in regola per fare bene il suo mestiere. Spessissimo, purtroppo, i joystick che sono rilasciati per i simulatori di volo sono alquanto mal realizzati, dopo poche ore di utilizzo gli assi iniziano a modificarsi ed il dispositivo perde la propria centralità. Questo fatto rende difficoltoso il volare bene e nel tempo può fa perdere l'interesse per la simulazione del volo.