Created Special texture file types (markdown)

mikeprimm 2013-11-25 21:15:34 -08:00
parent 32d802fbeb
commit fa4f7a3cb8

@ -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 \<xcount\> wide and \<ycount\> 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=\<xcount\>-1), before advancing to the left edge of the next row (index=\<xcount\>), 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 \<xcount\> and \<ycount\> values are used to detect the scale of the texture image (working on the assumption that the nominal size of the texture is 16 * \<xcount\> by 16 * \<ycount\> pixels). The attributes of the 'texturefile:' definition need to include one 'tile\<N\>=" attribute for each texture index (where N = 0, 1, 2, etc). The value of the field corresponds to:
tile<N>=<source-offset-X>:<source-offset-Y>/<dimension-X>:<dimension-Y>
or, optionally:
tile<N>=<source-offset-X>:<source-offset-Y>/<dimension-X>:<dimension-Y>/<dest-offset-X>:<dest-offset-Y>
Where:
* \<source-offset-X\> is the X coordinate of the top left corner of the texture within the texture file, in scaled pixels
* \<source-offset-Y\> is the Y coordinate of the top left corner of the texture within the texture file, in scaled pixels
* \<dimension-X\> is the horizontal texture within the texture file, in scaled pixels
* \<dimension-Y\> is the vertical texture within the texture file, in scaled pixels
* \<dest-offset-X\> is the X coordinate of the top left corner of the texture in the destination texture (default is 0), in scaled pixels
* \<dest-offset-Y\> is the Y coordinate of the top left corner of the texture in the destination texture (default is 0), in scaled pixels