Ajouter des objets dans FSX

Si, si, je t'assure, c'est VRAIMENT SIMPLE !

C'est vrai que ...


C'est vrai qu'à la base, il fallait se farcir le SDK (Software Development Kit) qui est parfois très peu locace, et expérimenter des heures et des heures pour trouver le petit truc qui faisait que ça ne fonctionnait pas. Il est vrai qu'au début, seul le programme GMax était capable de créer des objets pour FSX.

Mais le temps passant, de nombreux logiciels (plus ou moins perfectionnés, plus ou moins pratiques à utiliser et plus ou moins à la portée de tout un chacun) ont fait leur apparition, chacun avec ses spécialités.
J'en cite quelques-uns ici : Adresses pour créer des scènes pour FSX..

 

Commencer très simple


Le problème provient du fait que la notion de "scène" peut englober toute une série de domaines bien spécialisés allant des aérodromes aux meshs en passant pas les effets, les objets, les polygones, les textures, les routes, les rivières, les parkings, les taxis, les informations de navigation, etc, etc, etc,
Vouloir tous les appréhender d'un coup relève de l'inconscience. Il faut commencer simple, rapide, pour ensuite élargir progressivement ses compétences.

C'est ce que je te propose de faire !

 

Préliminaires

Important !


  • Pour créer quoi que ce soit pour FSX, tu dois avoir la version "Pro" ou "Deluxe" de FSX.

  • Pour utiliser JABxBGLComp ou quelques autres programmes de conception (et aussi pour que ton FSX ait de meilleures performances), tu dois avoir installé le patch SP1 de FSX.
    Tu peux ou non avoir installé le SP2 et/ou Acceleration, peu importe, SP1 est le minimum

  • Enfin, tu dois avoir installé le SDK (Software Development Kit) correspondant à ta version de FSX

  • Le programme de compilation de Microsoft ne digère pas les virgules en tant que séparateur décimal. Il est donc indispensable, dans le panneau de configuration de Windows, "options régionales et linguistiques", de remplacer la virgule par le point comme séparateur décimal !
Sans cela, pas de création !

 

S'équiper du programme "qui va bien"


Commence par télécharger et installer JABxBGLComp, tu verras, ça va être ton copain chaque fois que l'on parle de "compiler un XML en BGL".

Installe-le et passe voir l'onglet "Préférences", ne serait-ce que pour indiquer le dossier dans lequel se trouve FSX (s'il ne l'a pas trouvé seul).
JABxBGLComp

 

Ahem ... XML ? BGL ? Kézako ?


Dans FSX, les dossiers contenant des "scènes" contiennent tous un sous-dossier "Scenery" et très souvent un sous-dossier "Texture". Va un peu te promener dans le contenu du dossier de FSX avec l'explorateur Windows ...

Le sous-dossier "Scenery" contient des fichiers BGL (dont l'extension est BGL). Ce sont des fichiers binaires (par opposition aux fichiers texte que l'on peut charger dans le bloc-notes) qui contiennent des informations permettant à FSX d'afficher des éléments d'environnement.

Comme ce sont des fichiers binaires, on ne peut pas les créer directement avec le bloc-notes. Leur élaboration se fait donc en deux temps :
  • L'écriture d'instructions dans un fichier texte en utilisant un language de programmation compréhensible par les humains
  • La compilation au moyen d'un programme (le compilateur) qui traduit les instructions du language de programmation en codes binaires plus rapidement compréhensibles par FSX.
Dans notre cas, le fichier texte (parfois appelé fichier "source") est un fichier XML ! Il ne diffère pas d'un fichier TXT, si ce n'est que son contenu répond à certaines règles de programmation. Nous verrons cela par la suite.

Ci-contre, le code source pour afficher un hangar à Sion (LSGS).

Mais ne t'inquiètes pas pour cela, si tout se passe bien, JABxBGLComp va s'occuper de tout pour toi et tu ne devrais même pas avoir à taper une instruction dans ton fichier XML.
<!-- gen_hangar07 -->

<SceneryObject 
  lat="N 46 12 56"
  lon="E 7 19 37"
  alt="0"
  pitch="0"
  bank="0"
  heading="340"
  altitudeIsAgl="TRUE"
  imageComplexity="VERY_SPARSE">
  <LibraryObject
    name="{E5891559-AB12-4087-BEA4-CFEBFEC54E20}"
    scale="1.0"/>
</SceneryObject>

Allons-y !

 

Mettre un objet dans FSX

Un objet pris dans la librairie d'objets de FSX, c'est simple à poser n'importe où, ça se voit tout de suite, ça ne nécessite pas des heures de travail, ça ne prend pas la tête.

C'est l'idéal pour mettre le pied à l'étrier de la création pour FSX

 

Ça va aller vite !

Repérage dans GoogleEarth (ou autre)


J'ai choisi de mettre un hangar à Motiers (LSTO).

Aller dans GoogleEarth (ou autre) repérer les coordonnées :

Repérage dans GoogleEarth

 

Lance FSX


  • Déplace-toi à l'endroit où tu veux ajouter un objet et pose l'appareil au sol à cet endroit précis
  • Place FSX en mode fenêtré de manière à avoir de la place libre pour JABxBGLComp
  • Ne touche plus rien dans FSX
Positionnement

 

Lance JABxBGLComp


  • Assure-toi que dans la barre de statut en bas de sa fenêtre, il soit affiché "Connecté à FSX".
    SimConnect trouvé
  • Passe dans l'onglet "Préférences" et clique sur le bouton avec un "v" dans "Hauteur du point de référence de l'appareil". Ceci sert à calibrer ton appareil afin que l'altitude mesurée corresponde à celle des roues et non à celle du centre.
  • Presse sur "Appliquer" pour revenir à l'onglet "XML".
  • Ouvre un nouveau fichier si ce n'est pas fait (Nouveau fichier XML).
  • Clique sur le bouton de la librairie (Librairie), ce qui a pour effet d'ouvrir une nouvelle fenêtre :

    Librairie

  • Choisis la catégorie "Aéroport",
  • Tape "hangar" dans la case de sélection,
  • Choisis ton hangar dans la liste déroulante,
  • Clique sur "Ok" :
    JABxBGLComp a rajouté le code pour placer l'objet (le hangar). Remarque qu'il a pris les coordonnées (lat, lon, alt et heading) d'après la position de l'appareil dans FSX.

    Librairie

  • Enregistre ton fichier XML (Enregistrer le fichier XML).
  • Compile ton fichier XML (Compiler le fichier XML)
    Compilation Ok

  • Si tu as un message d'erreur à la première compilation : pas d'affolement !

    Erreur

    Je ne sais pas pourquoi cela se produit parfois. Pour t'en sortir :
    • Reclique pour enregistrer (Enregistrer le fichier XML).
    • Reclique pour compiler (Compiler le fichier XML)
    Si ça ne marche toujours pas, c'est qu'il y a une erreur réelle ... pour le moment, essaie de la comprendre en faisant dérouler cette liste écrite en rouge.

 

Referme FSX


C'est important sinon la scène (ton objet) pourrait ne pas s'installer !

 

Dans JABxBGLComp


  • Attends que FSX soit arrêté. Il reste encore actif quelques secondes après avoir disparu de l'écran. JABxBGLComp te signale son arrêt par un petit bip et affiche "Déconnecté" dans la barre de statut :
    Déconnecté

  • demande l'installation du fichier BGL (Installation),
    Note à ce stade que tu as pu indiquer dans les "Préférences" si le BGL devait être installé dans le dossier \Addon Scenery\Scenery ou non. Si tu le places ailleurs, il faut que ce soit dans un dossier Scenery déclaré dans la bibliothèque de scène, sinon ton objet n'apparaîtra pas dans FSX.

 

Relance FSX


... et regarde ton nouvel objet !

Le hangar !

Le hangar !

... si tu ne le vois pas, cela provient du fait que tu n'as pas placé le BGL dans le sous-dossier "Scenery" d'un dossier de scène déclaré dans la bibliothèque de scènes !

 

Mal orienté ?


Parfois (assez souvent) tu remarqueras que ton objet n'est pas orienté comme tu le prévoyais ...

Cela provient du fait que les objets de la librairie de FSX ont parfois leur propre orientation par rapport au nord. Dans un tel cas, il te suffit de modifier la valeur du paramètre "Heading" dans le code XML de l'objet.

Rappelle-toi que le tour complet fait 360°, que pour faire ¼ de tour à droite, il faut ajouter 90° (ou retrancher 270°), alors qu'il faut retrancher 90° (ou ajouter 270°) pour ¼ de tour à gauche.
Il ne faut pas inclure le signe ° dans le code XML.

 

Les petits défauts


... en y regardant de plus près, on voit de petits défauts :

Le hangar !

Entre autres :
  • Les patins de l'hélico sont enfoncés dans le sol
  • Le relief fait ressortir l'herbe dans un coin
Nous y reviendrons peut-être une fois. En attendant, tu as contruit et installé ton premier objet dans FSX ! Prochaine "leçon" : Ajouter un aérodrome dans FSX

 

La suite ?

Pour installer d'autres objets, tu peux parfaitement les rajouter dans le même fichier XML, ils se retrouveront donc dans le même BGL.

Et après ? C'est l'imagination au pouvoir ! Passe voir le fil rouge que j'ai écrit en construisant ma première scène.

Amuse-toi bien et publie le résultat de tes travaux !

A+
Jacky.

 
© 2006-2014 Jacky Brouze, imprimé le 23.9.17 à 12:48 à partir de http://jacky.brouze.ch/Creation/Objet/index.php