Créer des scènes pour FSX.

Je viens de débuter dans la création de scène pour FSX !


Un grand merci à mon "parrain" Guy Némoz, et à Alain Ragot (c30s) pour leurs conseils avisés.

 
Après des années de discussion relatives à la création avec mon ami Guy Némoz (le Yéti pour les intimes), je me suis enfin décidé à mettre la main à la pâte en créant une scène, ne serait-ce que pour comprendre comment cela fonctionne.

Alors je vais te parler ici de mes découvertes et expériences, te donner les bonnes adresses que j'aurais déniché, ceci dans le but de peut-être exciter chez toi la fibre créatrice ...

Je ne prétends pas être exhaustif ! Je ne parle que des programmes que j'ai moi-même utilisés successivement ou en parallèle. Tu t'apercavras en effet assez rapidement que pour faire certaines choses tu préféreras tel programme, et pour faire telle autre chose, un autre programme. Chacun a ses forces et ses faiblesses. En en connaissant plusieurs, on peut combiner ces forces pour développer de manière efficace. Mais attention, il n'y a pas de règle universelle ! Tu peux presque tout faire avec n'importe lequel de ces programmes, mais pas de la même manière. Alors expérimente, teste, et surtout perd du temps en essais, c'est ainsi qu'on apprend !

 

Prérequis


Pour pouvoir créer/modifier une scène pour FSX, il faut disposer de la version DeLuxe (ou Pro) de FSX et avoir installé le SDK (qui se trouve sur le DVD de FSX).

Pourquoi cela ? Simplement parce que - à ma connaissance - tous les programmes de conception de scènes se contentent de générer des fichiers intermédiaires (souvent de type .XML) qui sont ensuite compilés par le programme BGLComp fourni dans le SDK. Ce programme compile les fichiers intermédiaires, en vérifie la bonne facture, et crée un fichier .BGL que FSX va pouvoir utiliser.
La plupart du temps, le lancement de ce programme BGLComp.exe (qui tourne sous DOS) est effectué par le logiciel de conception, qui s'occupe également de traiter le résultat de la compilation.

 

Divers détails, trucs et explications

GUID


Que tu utilises des objets de librairie, des polygones ou autres, tu seras souvent confronté à des GUID. Quézako ?

Un GUID est un identifiant (supposé) unique qui est attaché à un "objet" (qui peut être en fait n'importe quoi). C'est un code de 128 bits représenté sous sa forme hexadécimale entre {} du style {01234567-89AB-CDEF-0123-456789ABCDEF} ... asez désagréable à lire n'est-ce pas ?

En programmation pour FSX, il est fréquent d'appeler les objets par leur GUID (mais aussi en programmation en général sous Windows). Pour plus d'informations, je te suggère de passer sur Wikipedia.

 

Pour les curieux ...


Suivant le programme de conception que tu utilises, tu verras certains fichiers intermédiaires dont l'extension est .XML ou .KML.
Tu peux ouvrir ces fichiers avec bloc-notes de Windows car ce sont des fichiers au format texte. on y lit parfois des choses intéressantes ...

 

La représentation des coordonnées


Il y a plusieurs présentations pour les coordonnées. Il s'agit pour la plupart des cas de la latitude (de S90 à N90 ou -90 à + 90), la longitude (de W180 à E180 ou -180 à +180) toutes deux exprimées en degrés, et l'altitude exprimée en pieds ou en mètres.
(N=Nord, S=Sud, E=Est, W=Ouest)

Les angles (latitudes et longitures) peuvent être représentés sous différentes formes :
  • N48° 51' 30"
  • N48° 51' 29.72284"
  • N48° 51.4953733'
  • N48.858256262°
  • 48.858256262
Toutes les valeurs ci-dessus sont équivalentes (la première est moins précise, nous le verrons ci-dessous) et représentent la latitude de la tour Eiffel.

Il est aussi parfois possible (c'est notamment le cas dans les fichier .XML) d'omettre la lettre. Dans ce cas un nombre positif représente une latitude nord ou une longitude est, un nombre négatif représentant une latitude sud ou une longitude ouest.

FSX traite les altitudes en mètres (mais oui !). Cependant il arrive que dans des fichiers .XML une lettre M ou F précède le nombre de l'altitude. Cette lettre indique si l'on est en mètres (par défaut) ou en pieds (Feet).

Le nombre de chiffres après la virgule (point) des angles dans les fichiers .XML semble impressionnant.
En fait, au niveau de l'équateur :
  • un degré (1°) mesure environ 111km,
  • un dixième de degré (0.1°) environ 11km
  • 0.01° ~= 1km
  • 0.001° ~= 100m
  • 0.00001° ~= 10m
  • 0.000001° ~= 1m
  • 0.0000001° ~= 10cm
  • 0.00000001° ~= 1cm
  • 0.000000001° ~= 10mm
  • 0.0000000001° ~= 1mm
  • ...
=> La dixième décimale du degré mesure environ 1mm !
... et tu verras que parfois tu auras besoin de cette précision !

Pendant qu'on y est, toujours au niveau de l'équateur :
  • une minute ~= 1852 mètres
  • une seconde ~= 31 mètres
La différence entre les deux premières latitudes de la tour Eiffel ci-dessus est donc de 30 secondes moins 29.72284 égale 0.27716 secondes, soit 8½ mètres ! Ce n'est pas rien pour joindre deux surfaces ...

 

Dossiers


Le processus de création produira un ou plusieurs fichiers .BGL.
Certains programmes de conception le(s) mettront directement en place à l'endroit que tu leur auras assigné, d'autres le(s) mettront dans <FSX>\Addon Scenery\Scenery et enfin d'autres les mettront dans leur dossier de travail. Dans tous les cas, il faut qu'ils se trouvent dans un dossier scenery déclaré dans la bibliothèque de scènes de FSX.
Pour ma part, je place les BGLs de mes développements en cours dans le dossier <FSX>\Addon Scenery\Scenery.

 

Contributions (qui n'engagent que leurs auteurs)

(en ordre chronologique inverse : les plus récents d'abord)


  • Le 02.12.2017, Alexandre Monreo a écrit :
    Merci pour ton site une mine d'or pour les internautes du monde je dirais mieux encore de la planète.
    fabuleux des tas d'astuces et de conseils.
    merci.



Pour pouvoir déposer ta contribution, identifies-toi
© 2006-2014 Jacky Brouze, imprimé le 23.1.18 à 20:59 à partir de http://jacky.brouze.ch/Creation/Pourquoi.php