ContribCliquez ici pour proposer des corrections ou des compléments pour cette page.
Utilisation des polygones de recouvrement pour placer des Orthophotographies

Ce cours d'instruction présente une scène très simple qui recouvre d'une texture photographique le polygone de l'aéroport international de San Berandino. Vous pouvez télécharger notre scène d'exercice ici: Ground_overlay_demo.zip (3Mo)
Le fichier texte original utilisé pour créer le DSF (par l'intermédiaire de DSF2Text) est inclus, et tous les dossiers des textes sont fortement commentés.
Il illustre un certain nombre de matières :
 

  • Comment employer des fichiers ".pol" pour changer l'aspect du terrain en le recouvrant.
  • Comment placer les orthophotos dans le fichier ".pol".
  • Comment activer le fichier de recouvrement dans un DSF.


Avertissement: le système de polygone de recouvrement dessine le terrain en plus du terrain original, pas à la place du terrain original ! Employer des polygones très grands peut donc poser des problèmes de framerate (nbre images par secondes). Les polygones de recouvrement sont affichés seulement quand l'avion arrive près du secteur, ainsi ils ne sont pas appropriés pour les zones très grandes (et donc très visibles).
Pour plus d'info pour savoir dans quel cas utiliser un DSF de recouvrement ou un Objet, consultez cette page: Optimiser ses créations
Veuillez noter que l'équipe d'X-Plane travaille à la création des outils pour modifier graphiquement les décors. Cette explication est censé illustrer comment le système de paysage fonctionne.

Vous pouvez utiliser un logiciel de retouche photo (Photoshop, The Gimp) pour ajouter un masque d'alpha à l'image originale afin de créer une frontière plus "naturelle" autour du secteur d'aéroport. Vous pouvez voir avant-et-après dans le dossier de la scène (ksbd.png est l'original, et ksbd_alpha.png a le masque alpha).

Qu'est-ce qu'un dossier ".pol" et que fait-il ?

Les fichiers DSF déterminent le placement des orthophotos sur le sol, mais les fichiers DSF ne se réfèrent jamais directement au fichiers d'image (fichiers ".png"). Le fichier DSF se rapporte à un fichier ".pol" et le fichier ".pol", lui, se rapporte au fichier ".png".

Le fichier ".pol" est un fichier de définition graphique (comme les fichiers ".obj" ou les fichiers ".ter"). Le fichier ".pol" nous permet d'ajouter n'importe quelles informations supplémentaires sur le polygone comme le nom d'un fichier png par exemple. Autre exemple, le fichier ".pol" a une ligne qui définit les propriétés de surface de notre polygone (dans le cas de notre exercice: l'herbe).

Une propriété importante du fichier ".pol" est le LAYER_GROUP. Ceci définit quel élément du paysage sera placé au-dessus ou au-dessous du ".pol". C'est ainsi que vous pouvez employer des polygones pour la terre (que vous voudrez au-dessous des pistes) ou pour les inscriptions de parking (que vous voudrez au-dessus des pistes).

Généralement, vous aurez besoin d'un fichier ".pol" pour chaque ensemble de fichiers ".png" qui composent l'orthophoto. (vous pourriez avoir un png pour le terrain et un deuxième png pour la texture d'éclairage de nuit.)

Activation du Polygone de recouvrement dans un DSF

Pour utiliser le polygone, vous devez d'abord mettre en référence le ficher ".pol" dans le DSF en utilisant la commande POLYGON_DEF. Ceci définit un nombre d'index dans le DSF qui sera alors employé pour se rapporter à votre pol.

Notez que le premier POLYGON_DEF a l'index zéro ! Chaque fois que vous voudrez placer cette orthophoto vous emploierez cet index.

(Notez qu'en travaillant avec des orthophotos, vous voudrez probablement employer chaque orthophoto seulement une fois. Cependant, le DSF permet d'employer un pol de nombreuses fois. Si votre polygone contenait une texture générique, comme l'herbe, il pourrait être utile de l'employer beaucoup de fois.)

L'information de polygone dans le DSF peut être employée pour un certain nombre d'utilisations graphiques : façades des bâtiments, plages, forêts, lignes de taxiway, ou polygones mappés. Chaque placement du polygone dans le DSF a un "paramètre", un nombre compris entre 0 et 65535. En général, le paramètre utilisé pour les fichiers ".pol" est un axe de rotation (en degrés) que la texture prendra. Mais, dans le cas des orthophotos, nous employons le paramètre spécial 65535 pour indiquer que nous voulons employer des coordonnées de texture dans le DSF pour placer l'orthophoto.

Nous employons alors quatre coordonnées pour placer l'orthophoto. Les deux premiers nombres sont des paires de longitude/latitude et la deuxième paire sont des coordonnées de texture. Ceci définit non seulement la frontière du polygone où nous placerons l'orthophoto, mais également quelle partie de la texture est lié à quel coin du polygone.

Vous pouvez regarder le dossier exemple pour mieux comprendre la façon dont les orthophotos sont installés.

Voici un exemple du code utilisé dans le fichier "ksbd.pol" contenu dans le dossier de l'exercice:

A

850

DRAPED_POLYGON

C'est un fichier ".pol" - il définit l'aspect d'un polygone mappé recouvrant un DSF ou un calque DSF.
Les trois premières lignes sont un en-tête standard pour ce genre de fichier.

Le polygone mappé prend la forme du polygone de basse et change juste son aspect.

Commande de groupe de calque. Cette commande définit où dans l'ordre de chargement de la scène, ce polygone apparaîtra.
Les nombres négatifs indiquent les couches situées EN-DESSOUS # les nombres indiquent les couches situées AU-DESSUS .
La gamme des nombres utilisables va de -1 à -5 ou 1 à 5.

Les groupes disponibles sont: terrain, beaches, shoulders, taxiways, runways, markings, airports, roads, objects, light_objects, cars. Pour chaque groupe, on peut avoir une hiérarchie allant de -5 à +5 sachant que le niveau par défaut est le 0.

Dans notre exemple nous allons sous la couche d'"aéroports".
Ceci s'assure que notre polygone ira sous toutes les parties des aéroports (pistes, taxiways, etc...)
mais sera au-dessus de n'importe quels autre terrain (plages, etc...).

LAYER_GROUP airports -1

La commande de TEXTURE définit la texture que nous emploierons. Le fichier "ksbd_alpha.png" est notre fichier texture.
D'où vient ce fichier? J'ai téléchargé un orthophoto de l'USGS et j'ai employé Photoshop pour appliquer un masque d'alpha afin de détourer une partie de la superficie.
Vous pouvez changer cette ligne en "TEXTURE ksbd.png" pour voir l'orthophoto originale.
La texture doit avoir un chemin relatif au repertoire où se trouve le fichier ".pol".

TEXTURE ksbd_alpha.png

La commande d'ECHELLE définit la répétition de la texture.
Si nous avons des coordonnées de texture dans le DSF (ce que nous faisons dans notre cas) alors cette commande est ignorée.
Si la texture doit-être répettée comme une texture de terrain générique, alors nous aurons ceci:

SCALE 25 25
	

La commande SURFACE définit les propriétés physiques du polygone recouvert.
Dans le cas présent, nous demanderons que la surface réagisse comme de l'herbe.

SURFACE grass