ContribCliquez ici pour proposer des corrections ou des compléments pour cette page.
Les Objets Facades (.fac)

L’Objet « Façade » est un nouveau type d'objet conçu pour X-Plane 8.

Normalement, un objet se présentait sous la forme d’un fichier d'OBJ placé sur le terrain avec une place et un nom définis. Avec un objet « façade », un simple fichier texte (.fac) indique quelle texture doit être utilisés pour l'objet et comment construire des murs plats à partir de cette texture. Il faut ensuite placer le fichier ".fac" dans le dossier de la scène (dans un dossier "facades" par exemple) et le long du chemin polygonal un bâtiment sera créé ( extrudé en fait ).

Les façades vous permettent définir un grand nombre de bâtiments, chacun avec une forme différente, en utilisant une seule texture. L'objet « façade » est construit à partir de votre fichier texte (.fac) comportant la spécifications de vos façades avec la texture répétée ou étirée afin de s’adapter aux différentes tailles.

LE CONCEPT DE FACADE :

Un fichier texte de spécifications de façade (.fac) indique à X-Plane comment créer l'objet "façade" le long d'un chemin polygonal. Ce fichier texte indique également une texture sachant que chaque objet de façade ne peut ( comme les fichiers OBJ ) employer qu’une texture.

Le fichier DSF déterminera un chemin polygonal pour l'objet façade ainsi que le nombre d’étages à construire ; ceci laisse à chaque façade la possibilité d’avoir une taille différente.

Un fichier texte de spécifications de façade peut indiquer si une façade est ouverte ou fermée. Un objet de façade fermé est une boucle fermée, qui est utile pour un bâtiment. Un objet de façade ouvert est simplement un ensemble de points reliés, qui peuvent être utiles pour une barrière ou du grillage par exemple…

Un fichier texte de spécifications de façade contient un ou plusieurs niveaux de détail (LOD), ou d'indiquations pour dire à quoi doit ressembler la façade à différentes distances. Chaque façade LOD indique une distance de vision minimum et maximum. Les différents niveaux de détail doivent être continus, sans distances intermédiaires vides. La façade ne sera pas dessinée au delà du dernier niveau de détail. (c'est la même chose que pour des fichiers OBJ.)

Chaque LOD de spécification de façade se compose d'un ou plusieurs murs. Chaque mur est divisé en horizontales appelées « panneaux » ( panels ), et en verticales appelées « planchers » ( floors ). Chaque mur détermine son nombre de panneaux et de planchers suivant la texture de l’objet « façade » et la résolution de cette texture, afin d'effectuer une convertion entre pixels et mètres. Avec ces infos, si un mur de l'objet « façade » est étiré ou rétréci, des panneaux et des planchers sont alors ajoutés ou enlevés pour que le mur soit à la bonne taille en gardant une texture cohérente. Chaque planchers et panneaux d’un mur peuvent être indiqués comme "répétable" ou "non-répétable", vous pouvez ainsi contrôler l’aspect visuel du mur.

Chaque mur ayant une longueur minimum et maximum ; quand un objet de façade est créé par X-Plane, celui-ci regarde chaque définition de mur et sélectionne aléatoirement un mur dont la longueur correspond au mur devant être affiché à l'intérieur du sim. Ceci vous permet d'indiquer un mur pour des côtés courts (pignons par exemple) et un mur pour les côtés longs (facade principale par exemple).

Le toit d'une façade (si il est demandé) est toujours une couleur pleine et est indiqué comme des coordonnées déterminant une zone de la texture de l'objet façade. Différentes coordonnées peuvent être fournies pour plus de variété, dans ce cas X-Plane les sélectionnera aléatoirement.

Le plancher supérieur d'une façade peut être incliné vers l'intérieur comme une mansarde. Des résultats étranges peuvent se produire quand les murs se croisent dans les angles.

Specifications du Format .fac

Les fichiers façade expliquent à X-Plane comment convertir une forme polygonale 2D en bâtiment 3D.

Règles d'Extrusion des Façades

Les façades sont extrudées à partir d'un polygone "à plat" à une certaine hauteur par X-Plane. X-Plane extrude la façade une fois pour chaque niveau de détail indiqué dans le fichier .fac, rendant possible plusieurs niveaux de détail pour la façade terminée. Pour chaque niveau de détail, X-Plane tente de trouver une définition de mur étant appropriée à la longueur de ce mur (si aucune n'est appropriée, une définition arbitraire sera appliquée). Pour chaque mur, les segments "panneau" (panel) et "toiture" (roof) sont répétés ou éclipsés suivant la zone a couvrir et la hauteur.

Si il n'existe qu'une coordonnée pour le toit, le toit entier sera représenté avec une couleur unie. Si il y a quatre coordonnées, ça formera un quad utilisé pour texturer le toit.

Si la façade est un triangle (3 coordonnées), le triangle situé en bas à gauche du quad est utilisé. Si la façade est un quad, le quad est texturé directement. Si la façade a plus de quatre coordonnées, la forme de la façade est découpée dans la texture comme dans un gâteau (si une façade a 2 ou 3 coordonnées de toit, la texture du toit est en général non définie).

Commandes des Fichiers .fac

Facade File Commands

les fichiers façade sont des fichiers texte X-Plane standars à trois en-tête avec une ligne par commande:

A = Apple / mettre I pour Intel)

800 = Version d'X-Plane

FACADE = type de fichier


TEXTURE ../mes_textures/ma_belle_texture.png = nom et emplacement de la texture utilisée (les Façades ne peuvent utiliser qu'une texture en png ou bmp).

TEXTURE_LIT ../mes_textures/ma_belle_textureLIT.png = nom et emplacement de la texture de nuit utilisée (si il n'y en a pas, X-Plane n'utilisera rien à la place)

 RING 0 ou 1 = indique si le polygone dessine une forme fermée ou ouverte (fermé en général pour les bâtiments et ouvert pour les grillages)

TWO_SIDED 0 ou 1 = indique si X-Plane doit afficher une texture sur les deux faces de la façade (utile pour les grillages par exemple)

LOD = <distance la plus proche> <distance la plus éloignée> = détermine la distance minimum et maximum en mètres à partir de laquelle la façade sera affichée et à quelle distance elle aura sa définition maximale.

ROOF <horizontal> <vertical> = détermine la zone de texture utilisée pour le toit.

WALL <longueur minimum> <longueur maximum> = détermine la longueur en mètres des murs de la façade. Le mur a une longueur maximum et minimum, X-Plane va choisir de façon aléatoire parmi les définitions de mur laquelle est conforme aux limites du mur à construire (mais devrait choisir quand même votre définition de mur si il n'en existe pas d'autre).

SCALE <en largeur> <en hauteur> = détermine le rapport entre le nombre de pixels et le nombre de mètres quand la façade est construite. Les paramètres indiquent le nombre de mètres couverts en horizontal et en vertical par la zone de texture complète.

 ROOF_SLOPE <angle> = Ce paramètre contrôle l'angle d'inclinaison du toit. Une valeur de 0 indique un toit plat, les autres valeurs sont exprimées en degrés (de 0 à 360)

 LEFT|CENTER|RIGHT

Ces commandes déterminent les différentes divisions horizontales de la texture. Les divisions droites et gauches ne sont utilisée pratiquement qu'une seule fois par mur, les divisions centrales sont soit inutilisées (mur trop court) soit répétées (mur long). Les coordonnées donnent la zone de texture utilisée en largeur. Chaque division horizontale doit suivre la suivante ou la précédente au niveau des coordonnées de texture et elles doivent être classées de gauche à droite.

LEFT <s1> <s2>
CENTER <s1> <s2>
RIGHT <s1> <s2>

BOTTOM|MIDDLE|TOP

Ces commandes déterminent les différentes divisions verticales de la texture. Les divisions du bas et du haut ne sont utilisée pratiquement qu'une seule fois par mur, les divisions centrales sont soit inutilisées (mur trop bas) soit répétées (mur haut). Les coordonnées donnent la zone de texture utilisée en hauteur. Chaque division verticale doit suivre la suivante ou la précédente au niveau des coordonnées de texture et elles doivent être classées de bas en haut.

BOTTOM <t1> <t2>
MIDDLE <t1> <t2>
TOP <t1> <t2>

HARD_ROOF|HARD_WALL

Vous pouvez déclarer le toit ou les murs comme "durs" (sensibles à la collision). La commande utilise également un type de surface (béton, terre, etc... comme pour les pistes d'atterrissage)

HARD_ROOF <surface>
HARD_WALL <surface>

NO_BLEND

Par défaut, les textures peuvent avoir des transparences. Parfois ces transparences sont gênantes car elles crées des défauts d'affichage (contour d'arbre ou fenêtres). La commande NO_BLEND permet de désactiver les effets de transparence en passant directement de pixels opaques à des pixels transparents ce qui permet d'avoir des délimitations nettes.

Si aucun paramètre n'est ajouté, les pixels ayant moins de 50% de transparence sont considérés comme opaques. Si une valeur est ajoutée (entre 0.0 et 1.0), cette valeur déterminera à partir de quel degré de transparence un pixel est considéré comme opaque.

NO_BLEND
NO_BLEND <level>

Exemple de Code de Façade

A
800
FACADE

TEXTURE skyscraper_2.png
TEXTURE_LIT skyscraper_2_lighting.png
RING 1
TWO_SIDED 0
LOD 20.000000 30020.000000
ROOF 0.287722 0.087036
WALL 11.000000 290.000000
SCALE 256.000000 256.000000
ROOF_SLOPE 1.000000
LEFT 0.000000 0.034792
CENTER 0.034792 0.063112
CENTER 0.063112 0.090456
CENTER 0.090456 0.118776
CENTER 0.118776 0.146120
RIGHT 0.146120 0.179323
BOTTOM 0.200806 0.245239
MIDDLE 0.245239 0.275513
MIDDLE 0.275513 0.308716
MIDDLE 0.308716 0.340942
MIDDLE 0.340942 0.372192
TOP 0.372192 0.546509