Format de Carte TMX

Version 1.8

Les formats TMX et TSX sont les formats utilisés par Tiled pour stocker les cartes de tuiles et les jeux de tuiles, basés sur le XML. Le format TMX fournit un moyen flexible de décrire une carte basée sur des tuiles. Il peut décrire des cartes avec n’importe quelle taille de tuile, tout nombre de calques, tout nombre de collection de tuiles et il autorise l’ajout de propriétés personnalisées pour la majorité des éléments. Mis à part les calques de tuiles, il peut aussi contenir des groupes d’objets qui peuvent être placés librement.

Veuillez noter qu’il y a beaucoup de bibliothèques et d’environnements disponibles qui supportent les cartes TMX et les jeux de tuiles TSX.

Dans ce document, nous allons énumérer tous les éléments inclus dans ces formats de fichier. Les éléments sont mentionnés dans les en-têtes et la liste des attributs de ces éléments sont listés ci-dessous, suivi d’une courte explication. Les attributs et les éléments qui sont obsolètes ou non supportés par la version courante de Tiled sont en italique. Tous les attributs optionnels sont soit marqués en tant qu’optionnels, soit ils ont une valeur par défaut qui implique le fait qu’ils sont optionnels.

Veuillez regarder les notes de versions si vous êtes intéressés par les changements entre les différentes versions de Tiled.

Note

Un fichier DTD (Définition de Type de Document) est fourni dans http://mapeditor.org/dtd/1.0/map.dtd. Ce fichier n’est pas à jour mais peut être utile pour les espaces de noms en XML.

Note

Pour des raisons de compatibilité, il est recommandé d’ignorer les éléments et attributs inconnus (ou d’afficher un avertissement). Cela rend l’ajout de fonctionnalités plus facile sans casser la rétrocompatibilité, et permet des variations personnalisées et des additions avec lesquelles travailler avec les outils existants.

<map>

  • version : La version du format TMX. « 1.0 » jusqu’à présent, et sera incrémenté pour refléter les sorties mineures de Tiled.

  • tiledversion : La version de Tiled utilisée lors de la sauvegarde du fichier (depuis Tiled 1.0.1). Peut être une date (pour les versions instantanées). (optionnel)

  • class: La classe de cette carte (depuis la 1.9, «  » par défaut).

  • orientation : L’orientation de la carte. Tiled supporte « orthogonal », « isometric », « staggered » (échelonné) et « hexagonal » (depuis la 0.11).

  • renderorder : L’ordre dans lequel les tuiles d’un calque de tuiles sont rendus. Les valeurs valides sont right-down (en bas à droite, par défaut), right-up (en haut à droite), left-down (en bas à gauche) et left-up (en haut à droite). Dans tous les cas, la carte est dessinée ligne par ligne. (seulement supporté pour les cartes orthogonales pour le moment)

  • compressionlevel : Le niveau de compression à utiliser pour les données d’un calque de tuiles (-1 par défaut, ce qui veut dire que l’algorithme par défaut est utilisé).

  • width : La longueur de la carte en tuiles.

  • height : La hauteur de la carte en tuiles.

  • tilewidth : La longueur d’une tuile.

  • tileheight : La hauteur d’une tuile.

  • hexsidelength : Seulement pour les cartes hexagonales. Détermine la longueur ou hauteur (dépendant de l’axe d’échelonnage) du côté de la tuile, en pixels.

  • staggeraxis : Pour les cartes échelonnées ou hexagonales, détermine quel axe (« x » or « y ») est échelonné. (depuis la 0.11)

  • staggerindex : Pour les cartes échelonnées ou hexagonales, détermine si les index « pairs » ou « impairs » sur l’axe échelonné sont décalés. (depuis la 0.11)

  • parallaxoriginx : La coordonnée X de l’origine de la parallaxe en pixels. (0 par défaut). (depuis la 1.8)

  • parallaxoriginy : La coordonnée Y de l’origine de la parallaxe en pixels. (0 par défaut). (depuis la 1.8)

  • backgroundcolor : La couleur d’arrière-plan de la carte. (optionnel, peut inclure une valeur de transparence depuis la 0.15 de la forme #AARRVVBB. Complètement transparent par défaut.)

  • nextlayerid : Stocke le prochain ID disponible pour de nouveaux calques. Ce nombre est stocké pour empêcher la réutilisation du même ID après que des calques ont été supprimés. (depuis la 1.2) (le plus grand id de calque dans le fichier + 1 par défaut)

  • nextobjectid : Stocke le prochain ID disponible pour de nouveaux objets. Ce nombre est stocké pour empêcher la réutilisation du même ID après que des objets ont été supprimés. (depuis la 0.11) (le plus grand id d’objet dans le fichier + 1 par défaut)

  • infinite : Si la carte est infinie. Une carte infinie n’a pas de taille fixe et peut grandir dans toutes les directions. Ses données de calques sont stockées en tant qu’échantillons. (0 pour faux, 1 pour vrai, 0 par défaut)

Les propriétés tilewidth et tileheight déterminent la taille générale de la grille de la carte. Les tuiles individuelles peuvent avoir des tailles différentes. Les plus grandes tuiles dépasseront vers le haut et la droite (ancré en bas à gauche).

Une carte contient trois différents types de calques. Les calques de tuiles étaient auparavant le seul type de calque, et étaient simplement appelés layer, les calques d’objets ont la balise objectgroup et les calques d’images utilisent la balise imagelayer. L’ordre dans lequel ces calques apparaissent est l’ordre dans lequel ces calques sont rendus par Tiled.

L’orientation staggered réfère à une carte isométrique utilisant des axes échelonnés.

Les jeux de tuiles utilisés par la carte devraient toujours être listés avant les calques.

Peut contenir au plus un : <properties>, :ref:`tmx-editorsettings`(depuis la 1.3)

Peut contenir tout nombre de : <tileset>, <layer>, <objectgroup>, <imagelayer>, :ref:`tmx-group`(depuis la 1.0)

<editorsettings>

Cet élément contient plusieurs options spécifiques à l’éditeur, qui sont généralement inutiles lors de la lecture d’une carte.

Peut contenir au plus un : <chunksize>, <export>

<chunksize>

  • width : La longueur des échantillons utilisés pour les cartes infinies (16 par défaut).

  • height : La hauteur des échantillons utilisés pour les cartes infinies (16 par défaut).

<export>

  • target : Le dernier fichier dans lequel cette carte a été exportée.

  • format : Le nom court du dernier format dans lequel cette carte a été exporté.

<tileset>

  • firstgid : Le premier ID de tuile global du jeu de tuiles (cet ID global correspond à la première tuile du jeu de tuiles).

  • source: If this tileset is stored in an external TSX (Tile Set XML) file, this attribute refers to that file. That TSX file has the same structure as the <tileset> element described here. (There is the firstgid attribute missing and this source attribute is also not there. These two attributes are kept in the TMX map, since they are map specific.)

  • name : Le nom de ce jeu de tuiles.

  • class: La classe de ce jeu de tuiles (depuis la 1.9, «  » par défaut).

  • tilewidth: The width of the tiles in this tileset, which should be at least 1 except in the case of image collection tilesets (in which case it stores the maximum tile width).

  • tileheight: The height of the tiles in this tileset, which should be at least 1 except in the case of image collection tilesets (in which case it stores the maximum tile height).

  • spacing : L’espacement entre les tuiles de ce jeu de tuiles en pixels (s’applique à l’image du jeu de tuiles, 0 par défaut). Non pertinent pour les jeux de tuiles collection d’images.

  • margin : La marge autour des tuiles de ce jeu de tuiles (s’applique à l’image du jeu de tuiles, 0 par défaut). Non pertinent pour les jeux de tuiles collection d’images.

  • tilecount: Le nombre de tuiles dans ce jeu de tuiles (depuis la 0.13). Notez qu’il peut y avoir des tuiles avec un ID plus haut que le nombre de tuiles, dans le cas où le jeu de tuiles est une collection d’images d’où des tuiles ont été retirées.

  • columns : Le nombre de colonnes de tuiles de ce jeu de tuiles. Modifiable pour les jeux de tuiles de collection d’images, et est utilisé lors de l’affichage du jeu de tuiles. (depuis la 0.15)

  • objectalignment : Contrôle l’alignement des objets tuiles. Les valeurs valides sont unspecified (non spécifié), topleft (en haut à gauche), top (en haut), topright (en haut à droite), left (à gauche), center (au centre), right (à droite), bottomleft (en bas à gauche), bottom (en bas) et bottomright (en bas à droite). La valeur par défaut est unspecified pour des raisons de compatibilité. Lorsque c’est non spécifié, les objets tuiles utilisent bottomleft en mode orthogonal et bottom en mode isométrique. (depuis la 1.4)

  • tilerendersize: La taille à utiliser pour rendre des tuiles de ce jeu de tuiles sur un calque de tuiles. Les valeurs valides sont tile (par défaut) et grid. Quand grid est choisi, la tuile est dessinée à la taille de la grille de tuiles de la carte. (depuis 1.9)

  • fillmode: Le mode de remplissage à utiliser pour rendre les tuiles de ce jeu de tuiles. Les valeurs valides sont stretch (par défaut) et preserve-aspect-fit. N’est pertinent que quand les tuiles ne sont pas rendues à leur taille originale, donc ceci s’applique aux objets tuile redimensionnés ou en combinaison avec tilerendersize à grid. (depuis la 1.9)

Un jeu de tuiles peut ou bien être basé sur une seul image, qui est coupée en tuiles en fonction des paramètres donnés, ou une collection d’images, auquel cas chaque tuile définit sa propre image. Dans le premier cas il y a un seul fils <image>. Dans l’autre, chaque fils tmx-tileset-tile`contient un élément :ref:`tmx-image.

If there are multiple <tileset> elements, they are in ascending order of their firstgid attribute. The first tileset always has a firstgid value of 1. Since Tiled 0.15, image collection tilesets do not necessarily number their tiles consecutively since gaps can occur when removing tiles.

Peut contenir au plus un : image, décalage de jeu de tuiles, grille (depuis la 1.0), propriétés, types de terrains, collections Wang (depuis la 1.1), transformations de jeu de tuiles (depuis la 1.5)

Peut contenir tout nombre de : tuile de jeu de tuiles

<tileoffset>

  • x : Décalage horizontal en pixels. (0 par défaut)

  • y : Décalage vertical en pixels (positif en bas, 0 par défaut)

Cet élément est utilisé pour spécifier un décalage en pixels à appliquer lors du dessin d’une tuile de ce jeu de tuiles. Aucun décalage n’est appliqué si cet élément n’est pas présent.

<grid>

  • orientation : Orientation de la grille pour les tuiles de ce jeu de tuiles (orthogonal (orthogonale) ou isometric (isométrique), orthogonal par défaut)

  • width : Longueur d’une cellule de la grille

  • height : Hauteur d’une cellule de la grille

Cet élément est seulement utilisé pour une orientation isométrique, et détermine la façon dont les informations de terrain et de collision des tuiles sont rendues.

<image>

  • format: Used for embedded images, in combination with a <data> child element. Valid values are file extensions like png, gif, jpg, bmp, etc.

  • id : Utilisé par quelques versions de Tiled en Java. Obsolète et non supporté.

  • source : La référence du fichier d’image du jeu de tuiles (Tiled supporte la majorité des formats d’image communs). Seulement utilisé si l’image n’est pas intégrée.

  • trans : Définit une couleur spécifique traitée comme transparence (exemple : « #FF00FF » pour du magenta). L’ajout du # est optionnel et Tiled l’ignore pour des raisons de compatibilité. (optionnel)

  • width : La longueur de l’image en pixels (optionnel, utilisé pour une correction d’index de tuiles quand l’image change)

  • height : La hauteur de l’image en pixels (optionnel)

Tiled maps or tilesets with embedded image data can currently only be created using the JavaScript API, or in custom tools based on libtiled (Qt/C++) or tmxlib (Python).

Peut contenir au plus : données

<terraintypes>

Deprecated: Cet élément a été déprécié depuis Tiled 1.5, en faveur de l’élément <wangsets>, qui est plus flexible. Les jeux de tuiles contenant des types de terrain sont automatiquement sauvegardés avec un jeu Wang à la place.

This element defines an array of terrain types, which can be referenced from the terrain attribute of the <tile> element.

Peut contenir tout nombre de : terrain

<terrain>

Deprecated: Cet élément a été déprécié depuis Tiled 1.5, en faveur de l’élément <wangcolor>.

  • name : Le nom du type de terrain.

  • tile : L’id de tuile local de la tuile qui représente le terrain visuellement.

Peut contenir au plus un : propriété

<transformations>

Cet élément est utilisé pour décrire quelles transformations peuvent être appliquées aux tuiles (pour par exemple étendre une collection Wang en transformant les tuiles existantes).

  • hflip : Si les tuiles de ce jeu de tuiles peuvent être inversées horizontalement (0 par défaut)

  • vflip : Si les tuiles de ce jeu de tuiles peuvent être inversées verticalement (0 par défaut)

  • rotation : Si les tuiles de ce jeu de tuiles peuvent être pivotées en utilisant des incréments de 90 degrés (0 par défaut)

  • preferuntransformed : Si les tuiles non transformées sont préférées, sinon les tuiles transformées sont utilisées pour produire plus de variations (0 par défaut)

<tile>

  • id : L’ID local de la tuile dans son jeu de tuiles.

  • type: La classe de la tuile. Est héritée par les objets tuile. (depuis la 1.0, vaut par défaut « « , était sauvegardé en tant que class dans la 1.9)

  • terrain : Définit le type de terrain de chaque coin de la tuile, donné en tant qu’index appartenant au tableau de types de terrain séparés par des virgules dans l’ordre en haut à gauche, en haut à droite, en bas à gauche, en bas à droite. Une valeur laissée vide signifie que ce coin n’a aucun terrain. (déprécié depuis la 1.5 en faveur de <wangtile>)

  • probability : Un pourcentage indiquant la probabilité que cette tuile soit choisie quand elle est en compétition avec d’autres tuiles lors de l’utilisation de l’outil de terrain. (0 par défaut)

  • x : La coordonnée X du sous-rectangle représentant cette tuile (0 par défaut)

  • y : La coordonnée Y du sous-rectangle représentant cette tuile (0 par défaut)

  • width : La largeur du sous-rectangle représentant cette tuilt (vaut la largeur de l’image par défaut)

  • height : La hauteur du sous-rectangle représentant cette tuile (vaut la hauteur de l’image par défaut)

Peut contenir au plus un : propriétés, image <tmx-image> (depuis la 0.9), groupe d’objets, animation

<animation>

Contient une liste de trames d’animation.

Chaque tuile peut avoir exactement une animation qui lui est attribuée. Dans le futur, il pourrait y avoir un support pour plusieurs animations nommées pour une tuile.

Peut contenir tout nombre de : trame

<frame>
  • tileid : L’ID local d’une tuile appartenant au jeu de tuiles parent.

  • duration : La longueur (en millisecondes) pendant laquelle cette trame doit être affichée avant d’afficher la prochaine trame.

<wangsets>

Contient la liste de collections Wang définies pour ce jeu de tuiles.

Peut contenir tout nombre de : collection Wang

<wangset>

Définit une liste de couleurs et n’importe quel nombre de tuiles Wang qui utilisent ces couleurs.

  • name : Le nom de l’ensemble Wang.

  • class: La classe de cet ensemble Wang (depuis la 1.9, vaut «  » par défaut).

  • tile : L’ID de tuile de la tuile qui représente cet ensemble Wang.

Peut contenir au plus un : propriété

Can contain up to 254: <wangcolor> (255 since Tiled 1.5, 254 since Tiled 1.10.2)

Peut contenir tout nombre de : tuile Wang

<wangcolor>

Une couleur utilisable pour définir le coin et/ou bord d’une tuile Wang.

  • name : Le nom de cette couleur.

  • class: La classe de cette couleur (depuis la 1.9, vaut «  » par défaut).

  • color : La couleur dans le format #RRVVBB (exemple : #c17d11).

  • tile : L’ID de tuile de la tuile représentant cette couleur.

  • probability : La probabilité relative que cette couleur soit choisie parmi d’autres s’il y a plusieurs options. (0 par défaut)

Peut contenir au plus un : propriété

<wangtile>

Définit une tuile Wang en référant une tuile du jeu de tuiles et en l’associant à un ID Wang.

  • tileid : L’ID de la tuile.

  • wangid: The Wang ID, since Tiled 1.5 given by a comma-separated list of indexes (0-254) referring to the Wang colors in the Wang set in the order: top, top-right, right, bottom-right, bottom, bottom-left, left, top-left. Index 0 means unset and index 1 refers to the first Wang color. Before Tiled 1.5, the Wang ID was saved as a 32-bit unsigned integer stored in the format 0xCECECECE (where each C is a corner color and each E is an edge color, in reverse order).

  • hflip : Si la tuile peut être inversée horizontalement (enlevé dans Tiled 1.5).

  • vflip : Si la tuile peut être inversée verticalement (enlevé dans Tiled 1.5).

  • dflip : Si la tuile peut être inversée diagonalement (enlevé dans Tiled 1.5).

<layer>

Toutes les balises jeu de tuiles doivent être avant la première balise calque pour que les analyseurs puissent avoir les jeux de tuiles avant de résoudre les tuiles.

  • id : ID unique de ce calque (0 par défaut, les IDs valides étant 1 au moins). Chaque calque qui est ajouté à une carte obtient un id unique. Même si un calque est supprimé, aucun ne reçoit le même ID. Ne peut être changé dans Tiled. (depuis Tiled 1.2)

  • name : Le nom de ce calque. ( » » par défaut)

  • class: La classe de ce calque. (depuis la 1.9, «  » par défaut)

  • x : La coordonnée X du calque en tuiles. 0 par défaut et ne peut pas être modifié dans Tiled.

  • y : La coordonnée Y du calque en tuiles. 0 par défaut et ne peut pas être modifié dans Tiled.

  • width : La longueur du calque en tuiles. Toujours la même que la carte pour les cartes à taille fixe.

  • height : La hauteur du calque en tuiles. Toujours la même que la carte pour les cartes à taille fixe.

  • opacity : L’opacité du calque en tant que valeur entre 0 et 1. 1 par défaut.

  • visible : Détermine si le calque est visible (1) ou caché (0). 1 par défaut.

  • tintcolor : Une couleur de teinte qui est multipliée par toutes les tuiles dessinées dans ce calque dans le format #AARRVVBB ou #RRVVBB (optionnel).

  • offsetx : Décalage horizontal de ce calque en pixels. 0 par défaut. (depuis la 0.14)

  • offsety : Décalage vertical de ce calque en pixels. 0 par défaut. (depuis la 0.14)

  • parallaxx : Facteur de parallaxe horizontal pour ce calque. 1 par défaut. (depuis la 1.5)

  • parallaxy : Facteur de parallaxe vertical pour ce calque. 1 par défaut. (depuis la 1.5)

  • mode: The blend mode to use when rendering the layer. Valid values are normal, add, multiply, screen, overlay, darken, lighten, color-dodge, color-burn, hard-light, soft-light, difference and exclusion (since 1.12, defaults to normal).

Peut contenir au plus un : propriétés, données

<data>

  • encoding: The encoding used to encode the tile layer data. When used, it can be « base64 » and, when used for tile layer data, « csv ». (optional)

  • compression : L’algorithme de compression utilisée pour compresser les données du calque de tuiles. Tiled supporte « gzip » et « zlib » et (en tant qu’option lors de la compilation depuis Tiled 1.3) « ztsd ».

This element is usually used as a child of a <layer> element, and contains the actual tile layer data. It can also occur as a child of an <image> element, where it can store embedded image data.

When no encoding or compression is given, the tiles are stored as individual XML <tile> elements, but this option is deprecated. Next to that, the easiest format to parse is the « csv » (comma separated values) format.

Les données de calque encodées en base64 et celles qui sont optionnellement compressées sont plus difficiles à analyser. Tout d’abord, vous devez utiliser un décodeur de base64, puis vous pouvez avoir besoin de le décompresser. Maintenant que vous avez un tableau d’octets, qui doit être interprété comme une liste d’entiers non signés de 32-bits en utilisant l’ordre d’octets little endian.

Peu importe le format que vous choisissez pour vos données de calque, vous vous retrouverez toujours avec des « IDs de tuiles globaux » (Identifiants de Tuile Globaux (Global IDs) gids). Ils sont appelés « globaux » car ils peuvent faire référence à une tuile parmi tous les jeux de tuiles utilisés par la carte. Les IDs contiennent aussi des flags d’inversion. Les jeux de tuiles sont toujours stockes avec des firstgid croissants.

Peut contenir tout nombre de : tuile de calque de tuiles, échantillon

<chunk>

  • x : La coordonnée X de l’échantillon en tuiles.

  • y : La coordonnée Y de l’échantillon en tuiles.

  • width : La longueur de l’échantillon en tuiles.

  • height : La hauteur de l’échantillon en tuiles.

This is currently added only for infinite maps. The contents of a chunk element is same as that of the <data> element, except it stores the data of the area specified in the attributes.

Peut contenir tout nombre de : tuile de calque de tuiles

<tile>

  • gid : L’ID de tuile global (0 par défaut).

Not to be confused with the <tile> element inside a <tileset>, this element defines the value of a single tile on a tile layer. This is however the most inefficient way of storing the tile layer data, and should generally be avoided.

<objectgroup>

  • id : ID unique de ce calque (0 par défaut, les IDs valides étant 1 au moins). Chaque calque qui est ajouté à une carte obtient un id unique. Même si un calque est supprimé, aucun ne reçoit le même ID. Ne peut être changé dans Tiled. (depuis Tiled 1.2)

  • name : Le nom du groupe d’objets. ( » » par défaut)

  • class: La classe du groupe d’objets (depuis la 1.9, «  » par défaut).

  • color: La couleur utilisée pour afficher les objets de ce groupe. (optionnel)

  • x : La coordonnée X de ce groupe d’objets en tuiles. 0 par défaut et ne peut plus être changé dans Tiled.

  • y : La coordonnée Y de ce groupe d’objets en tuiles. 0 par défaut et ne peut plus être changé dans Tiled.

  • width : La longueur du groupe d’objets en tuiles. Vide de sens.

  • height : La hauteur du groupe d’objets en tuiles. Vide de sens.

  • opacity : L’opacité du calque en tant que valeur entre 0 et 1. (1 par défaut)

  • visible : Détermine si le calque est visible (1) ou caché (0). (1 par défaut)

  • tintcolor : Une couleur qui est multipliée par tous les objets tuiles dessinés dans ce calque, dans le format #AARRVVBB ou #RRVVBB (optionnel).

  • offsetx : Décalage horizontal de ce groupe d’objets en pixels. (0 par défaut) (depuis la 0.14)

  • offsety : Décalage vertical de ce groupe d’objets en pixels. (0 par défaut) (depuis la 0.14)

  • parallaxx: Facteur de parallaxe horizontal pour ce groupe d’objets. 1 par défaut. (depuis la 1.5)

  • parallaxy: Facteur de parallaxe vertical pour ce groupe d’objets. 1 par défaut. (depuis la 1.5)

  • draworder : Détermine si les objets sont rendus en suivant l’ordre d’apparition (« index ») ou en suivant leur coordonnée Y (« topdown »). (« topdown » par défaut)

Le groupe d’objets est en fait un calque de carte, et est par conséquent appelé « calque d’objets » dans Tiled.

Peut contenir au plus un : propriété

Peut contenir tout nombre de : objet

<object>

  • id : ID unique ce cet objet (0 par défaut, les IDs valides valant au moins 1). Chaque objet qui est placé dans une carte obtient un id unique. Même si un objet a été supprimé, aucun objet ne reçoit le même ID. Ne peut être changé dans Tiled. (depuis Tiled 0.11)

  • name : Le nom de cet objet. Une chaîne de caractères arbitraire. ( » » par défaut)

  • type : La classe de cet objet. Une chaîne de caractères arbitraire. ( » » par défaut, était sauvegardée en tant que class en 1.9)

  • x : La coordonnée X de cet objet en pixels. (0 par défaut)

  • y : La coordonnée Y de cet objet en pixels. (0 par défaut)

  • width : La longueur de cet objet en pixels. (0 par défaut)

  • height : La hauteur de cet objet en pixels. (0 par défaut)

  • rotation : La rotation de cet objet en degrés dans le sens des aiguilles d’une montre autour de (x, y). (0 par défaut)

  • gid : Une référence vers une tuile. (optionnel)

  • visible : Détermine si l’objet est visible (1) ou caché (0). (1 par défaut)

  • template : Une référence vers un fichier de modèle. (optionnel)

Même si les calques de tuiles sont très bons pour quelque chose de répétitif qui est aligné sur la grille de tuiles, parfois il est utile d’annoter votre carte avec d’autres informations qui ne sont nécessairement pas alignées sur la grille. Voici pourquoi les objets ont leurs coordonnées et taille en pixels, mas vous pouvez aussi facilement les aligner sur la grille quand vous le voulez.

Les objets sont souvent utilisés pour ajouter des informations personnalisés à votre carte de tuiles tel que des points d’apparition, des téléporteurs, des sorties, etc.

Quand l’objet a un attribut gid, alors il est représenté par l’image de la tuile ayant cet ID global. L’alignement de l’image correspond couramment à l’orientation de la carte. Il est aligné en bas à gauche pour une direction orthogonale tandis qu’il est aligné en bas au centre pour une direction isométrique. L’image va être pivotée respectivement autour d’en bas à gauche ou d’en bas au centre.

Quand l’objet a un attribut template, il va emprunter toutes les propriétés du modèle spécifié, avec les propriétés sauvegardées dans l’objet ayant la priorité la plus haute, ce qui veut dire qu’elles remplaceront les propriétés du modèle.

Peut contenir au plus un : propriétés, ellipse (depuis la 0.9), point (depuis la 1.1), polygone, polyligne, texte (depuis la 1.0)

<ellipse>

Utilisé pour traiter un objet en tant qu’une ellipse. Les attributs existants x, y, width et height sont utilisés pour déterminer la taille de l’ellipse.

<point>

Utilisé pour traiter un objet en tant qu’un point. Les attributs existants x et y sont utilisés pour déterminer la position du point.

<polygon>

  • points : Une liste de coordonnées x,y en pixels.

Chaque objet polygon est fait d’une liste de coordonnées x,y délimitées dans l’espace. L’origine de ces coordonnées est la location de l”object parent. Par défaut, le premier point est créé en tant que 0,0 ce qui veut dire que le l’origine du point est exactement là où l”object est placé.

<polyline>

  • points : Une liste de coordonnées x,y en pixels.

Une polyline``suit la même définition de placement qu'un objet ``polygon.

<text>

  • fontfamily : La famille de police utilisée (« sans-serif » par défaut)

  • pixelsize : La taille de la police en pixels (pas d’utilisation de points, car d’autres tailles dans le format TMX utilisent aussi des pixels) (16 par défaut)

  • wrap : Détermine si l’ajustement de texte est activé (1) ou désactivé (0). (0 par défaut)

  • color : Couleur du texte dans le format #AARRVVBB ou #RRVVBB (#000000 par défaut)

  • bold : Détermine si le texte est en gras (1) ou non (0). (0 par défaut)

  • italic : Détermine si le texte est en italique (1) ou non (0). (0 par défaut)

  • underline : Détermine si une ligne doit être dessinée sous le texte (1) ou non (0). (0 par défaut)

  • strikeout : Détermine si une ligne doit être dessinée à travers le texte (1) ou non (0). (0 par défaut)

  • kerning : Détermine si le crénage doit être utilisé (1) lors du rendu du texte ou non (0). (1 par défaut)

  • halign : Alignement horizontal du texte dans l’objet (left (gauche), center (centré), right (droite) ou justify (justifié), left par défaut) (depuis Tiled 1.2.1)

  • valign : Alignement vertical du texte dans l’objet (top (haut), center (centré) ou bottom (bas), top par défaut)

Utilisé pour traiter un objet en tant qu’un objet de texte. Contient le texte utilisé en tant que données de caractères.

Pour des raisons d’alignement, le bas du texte est la hauteur descendante de la police, et le haut du texte est la hauteur ascendante de la police. Par exemple, l’alignement bottom du mot « chat » va laisser de la place sous le texte, même si cet espace n’est pas utilisé pour ce mot pour la plupart des polices. De la même façon, l’alignement top du mot « chat » va laisser un peu d’espace au dessus du « t » pour la plupart des polices, car cet espace est utilisé pour des diacritiques.

Si le texte est plus grand que les bords de l’objet, il est coupé aux bords de l’objet.

<imagelayer>

  • id : ID unique de ce calque (0 par défaut, les IDs valides étant 1 au moins). Chaque calque qui est ajouté à une carte obtient un id unique. Même si un calque est supprimé, aucun ne reçoit le même ID. Ne peut être changé dans Tiled. (depuis Tiled 1.2)

  • name : Le nom du calque d’images. ( » » par défaut)

  • class: La classe du calque d’images. (depuis la 1.9, «  » par défaut)

  • offsetx : Décalage horizontal de ce calque d’images en pixels. (0 par défaut) (depuis la 0.15)

  • offsety : Décalage vertical de ce calque d’images en pixels. (0 par défaut) (depuis la 0.15)

  • parallaxx : Facteur de parallaxe horizontal pour ce calque. 1 par défaut. (depuis la 1.5)

  • parallaxy : Facteur de parallaxe vertical pour ce calque. 1 par défaut. (depuis la 1.5)

  • x : La position X du calque d’images en pixels. (0 par défaut, obsolète depuis la 0.15)

  • y : La position Y du calque d’images en pixels. (0 par défaut, obsolète depuis la 0.15)

  • opacity : L’opacité du calque en tant que valeur entre 0 et 1. (1 par défaut)

  • visible : Détermine si le calque est visible (1) ou caché (0). (1 par défaut)

  • tintcolor : Une couleur qui est multipliée par l’image dessinée dans ce calque, dans le format #AARRVVBB ou #RRVVBB (optionnel).

  • repeatx: Détermine si l’image dessinée par ce calque est répétée le long de l’axe X. (depuis Tiled 1.8)

  • repeaty: Indique si l’image dessinée par ce calque est répétée le long de l’axe Y. (depuis Tiled 1.8)

Un calque consistant en une seule image.

Peut contenir au moins un : propriétés, image

<group>

  • id : ID unique de ce calque (0 par défaut, les IDs valides étant 1 au moins). Chaque calque qui est ajouté à une carte obtient un id unique. Même si un calque est supprimé, aucun ne reçoit le même ID. Ne peut être changé dans Tiled. (depuis Tiled 1.2)

  • name : Le nom du calque de groupes. ( » » par défaut)

  • class: Le nom du groupe de calques. (depuis la 1.9, «  » par défaut)

  • offsetx : Décalage horizontal de ce groupe de calques en pixels. (0 par défaut)

  • offsety : Décalage vertical de ce groupe de calques en pixels. (0 par défaut)

  • parallaxx : Facteur de parallaxe horizontal pour ce calque. 1 par défaut. (depuis la 1.5)

  • parallaxy : Facteur de parallaxe vertical pour ce calque. 1 par défaut. (depuis la 1.5)

  • opacity : L’opacité du calque en tant que valeur entre 0 et 1. (1 par défaut)

  • visible : Détermine si le calque est visible (1) ou caché (0). (1 par défaut)

  • tintcolor : Une couleur qui est multipliée par tout graphisme dessinée dans tout calque enfant, dans le format #AARRVVBB ou #RRVVBB (optionnel).

Un groupe de calques est utilisé pour organiser les calques d’une carte dans une hiérarchie. Ses attributs offsetx, offsety, opacity, visible et tintcolor affectent ses calques fils récursivement.

Peut contenir au plus un : propriété

Peut contenir tout nombre de : calque, groupe d’objets, calque d’images, groupe

<properties>

Contient n’importe quel nombre de propriétés personnalisées. Peut être utilisé en tant que fils des éléments map, tileset, tile (quand il appartient à un tileset), terrain, wangset, wangcolor, layer, objectgroup, object, imagelayer et group.

Peut contenir tout nombre de : propriété

<property>

  • name : Le nom de cette propriété.

  • type : Le type de cette propriété. Peut être string (chaîne de caractères, par défaut), int (entier), float (flottant), bool (booléen), color (couleur), file (fichier),``object`` (objet) ou class (depuis la 0.16, avec les options color et file ajoutées dans la 0.17, object ajoutée dans la 1.4 et class dans la 1.8).

  • propertytype: Le nom du type de propriété personnalisée, quand applicable (depuis la 1.8).

  • value : La valeur de cette propriété. (La chaîne de caractères par défaut est « « , le nombre par défaut est 0, le booléen par défaut est « false », la couleur par défaut est #00000000, le fichier par défaut est « . » (le dossier parent du fichier courant))

Les valeurs booléennes ont une valeur qui est soit « true » (vrai), soit « false » (faux).

Les propriétés de couleur sont stockés en utilisant le format #AARRVVBB.

Les propriétés de fichier sont stockés en tant que chemin relatif depuis la location du fichier de carte.

Les propriétés d’objets peuvent référencer n’importe quel objet dans la même carte et sont stockés en tant qu’entier (l’ID de l’objet référencé, ou 0 lorsqu’aucun objet n’est référencé). Lorsque des objets sont utilisés dans l’Éditeur de collision de Tuiles, elles peuvent seulement référencer d’autres objets sur la même tuile.

Les propriétés de classe auront les valeurs de leurs membres stockées dans un élément <properties> inclus. Seuls les membres dont la valeur est précisée sont sauvés. Quand aucun membre n’a été précisé, l’élément properties est entièrement omis.

Quand une propriété de chaîne de caractères contient des retours à la ligne, la version courante de Tiled montrera la valeur en tant que caractères contenus dans l’élément property à la place d’être dans l’attribut value. Il est possible qu’une future version du format TMX fasse en sorte que les valeurs des propriétés soient sauvegardées dans l’élément plutôt qu’en tant qu’un attribut.

Peut contenir au plus un : :ref:`tmx-properties`(depuis la 1.8)

Fichiers de Modèle

Les modèles sont sauvegardés dans leur propre fichier, et sont référencés par des objets qui sont des instances de modèle.

<template>

L’élément racine du modèle contient l’objet de carte sauvegardé et un élément jeu de tuiles qui pointe à un jeu de tuiles externe, si l’objet est un objet tuile.

Exemple d’un fichier de modèle :

<?xml version="1.0" encoding="UTF-8"?>
<template>
 <tileset firstgid="1" source="desert.tsx"/>
 <object name="cactus" gid="31" width="81" height="101"/>
</template>

Toute référence à un jeu de tuiles devrait apparaître avant l’objet. Les jeux de tuiles embarqués ne sont pas supportés.

Peut contenir au plus un : <tileset>

Devrait contenir exactement un : objet


Licence Creative Commons

Licence Creative Commons

Le Format de Carte TMX de http://www.mapeditor.org est licensé sous une Licence Creative Commons Attribution-ShareAlike 3.0 Unported.