X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;f=spritegn.h;h=9647311077e8ce5c382f8764366a1367fb0612bc;hb=f8b424e28290c817a8602275f738362a1a4cdc1c;hp=1bde4d72764812699578e0101693c53ff5f37851;hpb=8468ffaf8162a4fe8361127385c40141c375661d;p=xonotic%2Fdarkplaces.git diff --git a/spritegn.h b/spritegn.h index 1bde4d72..96473110 100644 --- a/spritegn.h +++ b/spritegn.h @@ -8,7 +8,7 @@ of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. @@ -27,6 +27,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // * pass data from one to the other via .spr files. * // ********************************************************** +#ifndef SPRITEGEN_H +#define SPRITEGEN_H + //------------------------------------------------------- // This program generates .spr sprite package files. // The format of the files is as follows: @@ -42,10 +45,12 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // //------------------------------------------------------- -#define SPRITE_VERSION 1 +#define SPRITE_VERSION 1 #define SPRITEHL_VERSION 2 #define SPRITE32_VERSION 32 +#define SPRITE2_VERSION 2 + typedef struct { int ident; @@ -73,15 +78,29 @@ typedef struct synctype_t synctype; } dspritehl_t; +typedef struct +{ + int width, height; + int origin_x, origin_y; // raster coordinates inside pic + char name[64]; // name of pcx file +} dsprite2frame_t; + +typedef struct +{ + int ident; + int version; + int numframes; + dsprite2frame_t frames[1]; // variable sized +} dsprite2_t; + #define SPR_VP_PARALLEL_UPRIGHT 0 #define SPR_FACING_UPRIGHT 1 #define SPR_VP_PARALLEL 2 #define SPR_ORIENTED 3 #define SPR_VP_PARALLEL_ORIENTED 4 -#define SPRHL_NORMAL 0 +#define SPRHL_OPAQUE 0 #define SPRHL_ADDITIVE 1 -// no idea how to handle these two rendering modes #define SPRHL_INDEXALPHA 2 #define SPRHL_ALPHATEST 3 @@ -105,6 +124,5 @@ typedef struct { spriteframetype_t type; } dspriteframetype_t; -#define IDSPRITEHEADER (('P'<<24)+('S'<<16)+('D'<<8)+'I') - // little-endian "IDSP" +#endif