ContribCliquez ici pour proposer des corrections ou des compléments pour cette page.
Net

Ce texte fait référence au texte anglais ici.

Historique des versions :

     10/06/03 : mise à jour du Wiki
    26/12/07 : révisée pour XP900
     13/07/06 : révisée pour XP850
     05/09/08 : révisées pour XP820

    19/11/04 : Projet initial

X-Plane utilise un fichier de définition de vecteur (. net en tant que réseau) pour visualiser les réseaux routiers.

Les fichiers DSF définissent les vecteurs par type et sous-type. Le type indique comment utiliser le fichier .net pour les routes, le sous-type indique un style de route. Le paysage par défaut (Default Scenery) définit 62 types de vecteurs ; vous pouvez remplacer l'ouvrage route par défaut en utilisant les mêmes sous-types, ou utiliser vos propres numéros de sous-type dans votre scène personnalisée.

La définition des fichiers vecteurs sont les fichiers texte standard d'X-Plane avec un en-tête de 3 lignes. Chaque commande occupe une seule ligne, avec des paramètres séparés par des espaces.

Un vecteur contient un ou plusieurs sous-types et utilise une ou plusieurs textures. Chaque sous-type routier doit utiliser une seule texture.
 
A

900
ROUTES

TEXTURE

Spécifie une texture à utiliser pour les vecteurs. Le bitmap doit avoir son extension de fichier. Le paramètre numérique indique la quantité de compensation de Z-buffer à utiliser lorsque vous utilisez cette texture. Un nombre positif aide X-Plane à dessiner le vecteur au-dessus du mesh de terrain sans Z-buffer thrash. Zéro indique l'absence de compensation, ce paramètre est correct pour les ponts.
La commande texture établit un indice pour cette texture dans le fichier .net. La commande de la première texture sera texture 0, la seconde 1, etc

Note : si vous avez besoin d'utiliser une texture avec une compensation de Z-buffer, il suffit de l'inscrire 2 fois avec des décalages de Z-buffer différents. Cela permettra d'établir deux indices pour la texture, mais X-Plane ne chargera qu'une fois la texture dans la VRAM.

TEXTURE <z offset> <nomfichier>

TEXTURE_LIT

Cette commande établit une texture d'éclairage nocturne assortie à la texture principale du réseau routier. Si cette commande est complètement utilisée, il doit y avoir une commande pour chaque texture, et elles doivent se suivre dans le même ordre. X-Plane ne trouvera pas automatiquement les bitmaps _LIT sans cette commande.
TEXTURE_LIT <filename&ht;

SCALE

Normalement, les coordonnées de texture sont indiquées en fractions, par exemple, 0,2 par pixel,  2/10èmes du chemin à travers la texture. La commande Scale (échelle) indique que toutes les coordonnées de texture sont multipliés par une constante fixe. Si cette commande n'est pas incluse, c'est comme si l'échelle était de 1,0. Le barème est appliqué à toutes les commandes qui suivent la commande Scale.

Note : Ceci vous permet de travailler en fonction de la position des pixels de la texture au lieu de fractions de coordonnées. Mais X-Plane ne prend pas en compte la taille de la texture réelle. Vous pouvez utiliser une échelle de 1024, même si la texture n'est pas 1024x1024 pixels.

SCALE <scale>

ROAD_TYPE

Donne des informations sur un nouveau type de route. Segment, fils, et commandes d'objets s'appliquent à tout type de route précédemment déclaré. Le type de route a sept paramètres:

  • 1. Le sous-type de route numérique. Il s'agit d'un nombre entier qui définit le sous-type de la route. X-Plane fait correspond ce type de route au sous-type "champ" dans le fichier DSF. (Voir les spécifications DSF pour plus d'info.) Les sous-types de route ne sont pas obligés d'être consécutifs ou dans un ordre croissant dans un fichier du réseau routier, mais chaque sous-type de route ne devrait être utilisé qu'une seule fois.
  • 2. la largeur du segment (en mètres). Celle-ci définit la largeur du vecteur. Toutes les infos liées à la largeur sont relatives à la largeur définie.
  • 3. La répétition de longueur (en mètres). Celle-ci définit combien une longeur de texture doit mesurer, en mètres.
  • 4. Indice de texture (de base zéro). Celle-ci définit la texture à utiliser, en se basant sur les commandes de texture précédemment définies.
  • 5. Red Fraction - un ratio de 0 à 1, indiquant le pourcentage de rouge à utiliser pour dessiner ce vecteur dans la vue sur la carte.
  • 6. Green Fraction - un ratio de 0 à 1, indiquant le pourcentage de vert à utiliser pour dessiner ce vecteur dans la vue sur la carte.
  • 7. Blue Fraction - un ratio 0 à 1, indiquant le pourcentage de bleu à utiliser pour dessiner ce vecteur dans la vue sur la carte.

ROAD_TYPE <subtype> <width> <length> <texture> <red> <green> <blue>

SEGMENT

La commande segment définit la section carrée d'une route. Les segments sont extrudés le long d'un vecteur de la route. La route la plus simple possible aurait un segment.

Les segments sont définis en fonction de leur extension latérale, précisant de quelle largeur ils traversent la route, et leur extension verticale,  précisant leur mesure vers le haut et le bas. L'étendue latérale se présente comme un rapport, où 0,0 est le côté gauche et 1,0 à droite. (Segments ne peuvent pas s'étendre au-delà de la largeur du segment - si vous avez besoin de faire un segment plus large, pour définir le type vectoriel tout entier plus large, utilisez la commande ROAD_TYPE.) La mesure verticale est en mètres, où 0 est la hauteur de la route, positive au-dessus de la route et négative en dessous.

Le texturage des segments est effectuée comme suit : l'axe vertical de la texture est aligné le long de la longueur du vecteur et se répète sans cesse, la longueur du vecteur en mètres (comme défini par la commande ROAD_TYPE) correspondant à la répétition de la texture. L'axe horizontal de la texture traverse la route, ou monte et descend comme des "murs" verticaux. Les positions de texture horizontale sont normalement stockées sous forme de coordonnées "S", ce qui signifie une fraction de la distance à travers la texture (?), mais la commande SCALE (voir ci-dessus) peut être utilisée pour modifier ces unités.
Les segments sont associés aus paramètres de niveau de détail (LOD). Vous pouvez définir à quel gamme / dans quelle mesure les segments sont visibles, de sorte que les petits détails (comme des garde-fous) sont dessinés seulement tout près du segment du vecteur.

La commande segment prend 8 paramètres:

  • 1. Near LOD (en mètres). La distance à laquelle le segment est visible.
  • 2. Far LOD (en mètres). La plus grande distance à laquelle le segment est visible.
  • 3. Beginnig Lateral fraction. La position latérale du début de ce segment, comme un rapport où 0 = le côté gauche du vecteur et 1 = le droit.
  • 4. Beginning vertical offset. La hauteur au-dessus de la route à partir de laquelle ce segment commence en mètres, au-dessus = positif.
  • 5. Beginning texture coordinate. La position horizontale sur la texture de route à utiliser pour démarrer l'élaboration de ce segment.
  • 6. Ending lateral fraction. La position latérale de la fin de ce segment, comme un rapport où 0 = le côté gauche du vecteur et 1 = le droit.
  • 7. Ending vertical offset. La hauteur au-dessus de la route à partir de laquelle ce segment se termine en mètres, au-dessus = positif.
  • 8. Ending texture coordinate. La position horizontale sur la texture de la route à utiliser pour mettre fin à l'élaboration de ce segment.

SEGMENT <near lod> <far lod> <start lat> <start vert> <start tex> <end lat> <end vert> <end tex>

WIRE

La commande Wire (fil) charge X-Plane de placer des lignes à haute tension (Powerline) le long du segment des vecteurs. Les lignes à haute tension peuvent être ajoutées à n'importe quel type de vecteur, le type de vecteur "powerline" est simplement un vecteur avec des lignes électriques, sans routes, et les objets formant les pylônes. La texture / couleur du fil est assurée par X-Plane. La commande Wile exige 5 paramètres:

  • 1. Near LOD distance (en mètres). C'est la distance la plus courte où le fil sera vu.
  • 2. Far LOD distance (en mètres). C'est la distance la plus longue où le fil sera vu.
  • 3. Lateral offset (en mètres). C'est la position du fil par rapport à la largeur du vecteur. 0 = gauche, 1 = droite.
  • 4. Vertical offset (en mètres). C'est la distance en-dessus (ou en-dessous) entre le vercteur et l'extrémité des lignes HT.
  • 5. Droop Ratio (en mètres). C'est le pourcentage de la hauteur verticale où le fil pend à son point le plus bas; 0,0 signifie horizontal, 1,0 signifie que le fil pend tout le temps vers le vecteur (par exemple, il touche le sol).

WIRE <near lod> <far lod> <lateral offset> <vertical offset> <droop ratio>

OBJET

L'objet de commande charge X-Plane de placer un objet (OBJ) à un endroit le long du vecteur. Les objets sont placés latéralement dans la largeur du vecteur, mais à la différence des segments, il peut être placé à gauche du vecteur (en utilisant des ratios négatifs) ou à sa droite (en utilisant des ratios supérieurs à 1).

Les objets peuvent être placés à un intervalle fixe en mètres, ou à chaque point de «forme» (Shape point) le long du vecteur - par exemple chaque fois que la direction du vecteur change. (Voir les spécifications DSF pour plus de précisions sur les points de forme.)

Les objets peuvent être tournés, normalement, ils sont placés à une position de 0 pour un vecteur orienté Nord. Quand un vecteur passe un coin, si un objet est placé dans cet angle, sa position est la moyenne des deux vecteurs qui touchent ce coin.

Les objets peuvent être placés en hauteur du vecteur, ou repositionnés sur le sol. Dans ce cas, si le vecteur est au-dessus du sol (par exemple un pont ou un viaduc) l'objet sera toujours placé sur le sol. L'objet de commande prend six paramètres:

  • 1. Object name (avec l'extension .obj) : le nom du fichier de l'objet. L'objet doit être dans le même répertoire que le fichier .net qui est sa référence, ou un sous-chemin peut être indiqué dans ce nom.
  • 2. Lateral offset - un rapport de position de l'objet, où 0 = côté gauche du vecteur et 1 = droite.
  • 3. Rotation - une rotation vers la droite pour tourner l'objet en position du vecteur.
  • 4. On ground - 1 si l'objet doit être placé sur le terrain, 0 si l'objet doit être placé à la même hauteur que le vecteur.
  • 5. Object frequency - combien de fois l'objet doit être placé, en mètres, ou 0 si l'objet doit être placé une fois par point de forme.
  • 6. Objet offset (en mètres) - si l'objet est placé à distance, il va commencer au début du vecteur. Avec cette compensation, vous pouvez démarrer l'objet n mètres le long du vecteur.

OBJECT <name> <lateral offset ratio> <rotation> <force on ground> <placement frequency> <placement offset>

REQUIRE_EVEN

[X-Plane 8.20] Normalement, les textures sont appliquées sur une route qui mesure l'axe vertical de la texture le long de la route (axe longitudinal) en fonction de la longueur de la route, par exemple, une route "30 mètres" devient une répétition complète de la texture tous les 30 mètres. Cela implique qu'une route de 70 mètres a 2,3 copies de la texture, et elle se terminera au milieu de la texture.

Lorsque l'attribut REQUIRE_EVEN est appliquée à un type de route, la longueur de la route est mesurée de sorte que la texture l'utilise un nombre pair de fois. Dans le cas ci-dessus, la route serait ramenées de 30 mètres à 35 mètres, et serait appliqué d'exactement le double. Cette mise à l'échelle se fait différemment pour chaque segment de la route alors que la texture n'est jamais coupée.

Cette commande affecte les segments et les objets qui sont placés à distance ; ils ont leurs distances mesurées par le même facteur que les segments de sorte que le rapport relatif des objets et de la texture est maintenu.

Les objets qui sont placés comme une fraction du secteur et les fils ne sont pas affectés par cette commande.

La commande doit être postérieure à la commande ROAD_TYPE et concerne seulement les types de route précédents (?) ; on utilise cette commande une fois pour chaque type de route mesuré.
REQUIRE_EVEN

SEGMENT_HARD

[X-Plane 8.50] La commande "segment dur" est identique à la commande "segment ordinaire", sauf qu'il déclare que le tronçon de route sera "dur" (similaire aux polys dur dans un objet), permettant à l'avion d'y atterrir. La commande surface dure utilise toutes les commandes de surface régulière, en ajoutant un nom de surface (les mêmes noms que dans le format OBJ8). Voir les spécifications OBJ8 pour une liste de surfaces.

La commande segment dur prend 9 paramètres :

  • 1. Near LOD (en mètres). La distance la plus faible à laquelle le segment est visible.
  • 2. Far LOD (en mètres). La plus grande distance à laquelle le segment est visible.
  • 3. Beginning lateral fraction. La position latérale du début de ce segment, un rapport où 0 = le côté gauche du vecteur et 1 = le droit.
  • 4. Beginning vertical offset. La hauteur du début du segment au-dessus de la route en mètres, au-dessus = positif
  • 5. Beginning texture coordinate. La position horizontale sur la texture de route à utiliser pour démarrer l'élaboration de ce segment.
  • 6. Ending lateral fraction. La position latérale de la fin de ce segment, comme un rapport où 0 = le côté gauche du vecteur et 1 = le droit.
  • 7. Ending vertical offset. La hauteur au-dessus de la route où ce segment se termine en mètres, au-dessus = positif.
  • 8. Ending texture coordinate. La position horizontale sur la texture de route à utiliser pour mettre fin à l'élaboration de ce segment.
  • 9. Surface code. Le nom du type de surface dure.

SEGMENT_HARD <index> <lod> <lod> <dx1> <dy1> <s1> <dx2> <dy2> <s2> <surf>

CAR

[X-Plane 8.50] La commande de voiture définit un couloir de voitures. La commande voiture définit à quelle vitesse et quel genre de voitures peuvent traverser un couloir et contrôle également la production de voitures.

  • Reverse - si 1, la voiture va dans le sens inverse du sens naturel de la route, et inversement. Notez que le décalage latéral est "gauche" par rapport à la direction de la voiture ! Ainsi, par exemple aux USA (où les voitures roulent à droite), le décalage latéral doit être supérieur à 0,5, même si l'indicateur inverse est défini à 1.
  • Lateral offset - un ratio de 0 à 1 indiquant de combien de la gauche et de la droite de la route le centre se trouve.
  • Velocity - la vitesse de la circulation dans cette voie, en mètres par seconde. Elle doit être supérieur à zéro.
  • Spawn Ratio - une fraction indiquant combien de voitures par kilomètre sont générées. Mais c'est mesuré par les paramètres utilisateur d'X-Plane, vous devrez donc copier les ratios en cours des types de routes existantes.
  • Traffic type - un index dans les commandes CAR_MODEL (voir ci-dessous), 0 est la première commande, en indiquant le type de voiture à utiliser.

CAR <reverse> <lateral offset> <velocity> <spawn ratio> <traffic type>

CAR_MODEL

[X-Plane 8.50] Cette commande CAR_MODEL définit un objet à utiliser comme modèle de voiture. Ces commandes sont référencées par des commandes de voitures - la première commande CAR_MODEL définit un traffic de type "0", un second type de trafic "1", etc. La donnée est un nom d'objet.

Le nom de l'objet peut être un chemin de bibliothèque (library) - dans ce cas, tous les objets appelant une bibliothèque seront utilisés, en créant une variété de voitures. De cette façon, vous pouvez créer de la variété dans la circulation. Chaque chemin de bibliothèque peut faire appel à de multiples objets, tous d'un type similaire, puisque tous les objets correspondants peuvent partager une voie de circulation.

CAR_MODEL <object path>

TRAIN

[X-Plane 9.00] La commande TRAIN définit un train (une chaîne d'objets) utilisé comme un modèle de voiture. Une commande de train prend un indice comme la commande CAR_MODEL. (Autrement dit, si vous utilisez CAR_MODEL, puis train, puis le type de voiture 0 est l'objet spécifié par la commande CAR_MODEL et le type de voiture 1 est le train spécifié par la commande TRAIN. La sous-commande train qui suit définit le train.

TRAIN

TRAIN_VARIANT

[X-Plane 9.00] Une commande de voiture pointe un seul objet, mais le système aléatoire de bibliothèque substitute n'importe quel des objets de ce type de voiture. Donc, avec une bibliothèque bien construite, beaucoup de variétés de circulations sont possibles. Cependant, avec les trains, chaque objet de substitution (représentant un wagon) doit être de la même longueur que tous les autres dans un certain «créneau», ou le train ne sera pas bien cohérent. La commande de train-variant est prévue pour permettre une plus grande variété de trains malgré cette contrainte.

Une variante du train est une séquence de chemins d'objet et d'espacements qui définit à quoi un train ressemble - un train peut avoir une ou plusieurs variantes : un nombre différent de voitures ou un choix de parcours différents.

TRAIN_VARIANT

TRAIN_CAR

[X-Plane 9.00] La commande de train-car ajoute un autre train-car à l'actuel train-variant. Pour chaque voiture, deux longueurs sont spécifiées - la première est la longueur du centre de l'OBJ (0,0,0) à l'avant de la voiture (le long de l'axe Z) et le second est l'axe du centre de l'objet à l'arrière de la voiture (le long de la Z +) . Le chemin de l'objet est un chemin d'accès virtuel à la bibliothèque. Notez que tous les objets qui pointent sur cette voie doivent être identiques par les deux longueurs, sinon le train-car ne s'alignera pas correctement. (Le système de bibliothèque est utilisé, et compte tenu de la longueur d'un wagon de train, de multiples variantes peuvent être sélectionnées.)

TRAIN_CAR <length 2> <length 1> <object path>

Exemple de définition d'un fichier vecteur

Il s'agit d'un exemple d'un fichier de définition dee réseau. (Pour un fichier road.net plus détaillé, voir les fichiers .net dans le "default scenery".)
 
A

900
ROUTES

TEXTURE 3 roads_legacy.png
TEXTURE 0 roadbridges_legacy.png
TEXTURE 3 trails_legacy.png
TEXTURE_LIT roads_LIT.png
TEXTURE_LIT roadbridges_LIT.png
TEXTURE_LIT trailsLIT.png

SCALE 1024

ROAD_TYPE 0    18  18  0    1.0  1.0  1.0
SEGMENT    0  30000     0  0  0.0  1  0  0.5

ROAD_TYPE 3   24    500   0         1.0     1.0      0.2
WIRE            0    30000      0.15     22.8     0.4
WIRE            0    30000      0.85     22.8     0.4
OBJECT powerline_tower.obj   0.5   0.0    1   0.0   0.0

ROAD_TYPE   6   3   3   2          0.0    0.0    0.0
REQUIRE_EVEN
SEGMENT     0     30000   0    -3    0.5      0    0   0.625
SEGMENT     0     30000   0     0    0.625   1   0   0.875
SEGMENT     0     30000   1    0     0.875   1  -3   1.0