diff --git a/Special-texture-file-types.md b/Special-texture-file-types.md new file mode 100644 index 0000000..4bcf58e --- /dev/null +++ b/Special-texture-file-types.md @@ -0,0 +1,59 @@ +Besides the default format (a grid of xcount by ycount textures), a number of other special texture file formats are supported by Dynmap. The currently defined types include the following: + +* *GRID* - this is the default format, corresponding to an array of square textures \ wide and \ high. Each texture needs to be an even power of 2 pixels across. The index of the textures is ordered from the top left (index=0) moving to the right across the first row (ending with index=\-1), before advancing to the left edge of the next row (index=\), and so forth. + +* *CHEST* - this is the format corresponding to the texture layout for small chests. The index values are: + + 0 : Chest top + + 1 : Chest left side + + 2 : Chest right side + + 3 : Chest front side + + 4 : Chest back side + + 5 : Chest bottom + +* *BIGCHEST* - this is the format corresponding to the texture layout for large chests. The index values are: + + 0 : Chest top - left side + + 1 : Chest top - right side + + 2 : Chest front - left side + + 3 : Chest front - right side + + 4 : Chest left side + + 5 : Chest right side + + 6 : Chest back - left side + + 7 : Chest back - right side + + 8 : Chest bottom - left side + + 9 : Chest bottom - right side + +* *SIGN* - this is the format corresponding to the texture layout for signposts. The index values are: + + 0 : Sign front side + + 1 : Sign back side + + 2 : Sign top + + 3 : Sign bottom + + 4 : Sign left side + + 5 : Sign right side + + 6 : Post front side + + 7 : Post back side + + 8 : Post left side + + 9 : Post right side + +* *SKIN* - this is the format corresponding to the texture for a player (or other human shaped skin). The index values are: + + 0 : Face front side + + 1 : Face left side + + 2 : Face right side + + 3 : Face back side + + 4 : Face top + + 5 : Face bottom + +* *CUSTOM* - this is the more flexible format, allowing extraction of arbitrary rectangular textures as indexed textures. The \ and \ values are used to detect the scale of the texture image (working on the assumption that the nominal size of the texture is 16 * \ by 16 * \ pixels). The attributes of the 'texturefile:' definition need to include one 'tile\=" attribute for each texture index (where N = 0, 1, 2, etc). The value of the field corresponds to: + + tile=:/: + +or, optionally: + + tile=:/:/: + +Where: +* \ is the X coordinate of the top left corner of the texture within the texture file, in scaled pixels +* \ is the Y coordinate of the top left corner of the texture within the texture file, in scaled pixels +* \ is the horizontal texture within the texture file, in scaled pixels +* \ is the vertical texture within the texture file, in scaled pixels +* \ is the X coordinate of the top left corner of the texture in the destination texture (default is 0), in scaled pixels +* \ is the Y coordinate of the top left corner of the texture in the destination texture (default is 0), in scaled pixels