X-Git-Url: https://git.xonotic.org/?a=blobdiff_plain;f=modelgen.h;h=cd48ed096c1bcc6cba25da9f7754415d3aba6cb2;hb=d192fabc74fe10ad9f173418e765b189278a1075;hp=7439c2818f467784983c17964d7891474f98d725;hpb=0256e57e16a302ad45090618b8d6eb5930788809;p=xonotic%2Fdarkplaces.git diff --git a/modelgen.h b/modelgen.h index 7439c281..cd48ed09 100644 --- a/modelgen.h +++ b/modelgen.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. @@ -30,15 +30,18 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #ifndef MODELGEN_H #define MODELGEN_H +#include "qtypes.h" + #define ALIAS_VERSION 6 #define ALIAS_ONSEAM 0x0020 -typedef enum { ALIAS_SINGLE=0, ALIAS_GROUP } aliasframetype_t; +typedef enum aliasframetype_e { ALIAS_SINGLE=0, ALIAS_GROUP } aliasframetype_t; -typedef enum { ALIAS_SKIN_SINGLE=0, ALIAS_SKIN_GROUP } aliasskintype_t; +typedef enum aliasskintype_e { ALIAS_SKIN_SINGLE=0, ALIAS_SKIN_GROUP } aliasskintype_t; -typedef struct { +typedef struct mdl_s +{ int ident; int version; vec3_t scale; @@ -51,65 +54,86 @@ typedef struct { int numverts; int numtris; int numframes; - synctype_t synctype; + int synctype; int flags; float size; -} mdl_t; +} +mdl_t; // TODO: could be shorts -typedef struct { +typedef struct stvert_s +{ int onseam; int s; int t; -} stvert_t; +} +stvert_t; -typedef struct dtriangle_s { +typedef struct dtriangle_s +{ int facesfront; int vertindex[3]; -} dtriangle_t; +} +dtriangle_t; #define DT_FACES_FRONT 0x0010 // This mirrors trivert_t in trilib.h, is present so Quake knows how to // load this data -typedef struct { - qbyte v[3]; - qbyte lightnormalindex; -} trivertx_t; +typedef struct trivertx_s +{ + unsigned char v[3]; + unsigned char lightnormalindex; +} +trivertx_t; -typedef struct { +typedef struct daliasframe_s +{ trivertx_t bboxmin; // lightnormal isn't used trivertx_t bboxmax; // lightnormal isn't used char name[16]; // frame name from grabbing -} daliasframe_t; +} +daliasframe_t; -typedef struct { +typedef struct daliasgroup_s +{ int numframes; trivertx_t bboxmin; // lightnormal isn't used trivertx_t bboxmax; // lightnormal isn't used -} daliasgroup_t; +} +daliasgroup_t; -typedef struct { +typedef struct daliasskingroup_s +{ int numskins; -} daliasskingroup_t; +} +daliasskingroup_t; -typedef struct { +typedef struct daliasinterval_s +{ float interval; -} daliasinterval_t; +} +daliasinterval_t; -typedef struct { +typedef struct daliasskininterval_s +{ float interval; -} daliasskininterval_t; +} +daliasskininterval_t; -typedef struct { +typedef struct daliasframetype_s +{ aliasframetype_t type; -} daliasframetype_t; +} +daliasframetype_t; -typedef struct { +typedef struct daliasskintype_s +{ aliasskintype_t type; -} daliasskintype_t; +} +daliasskintype_t; #endif