X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=dosdemo;a=blobdiff_plain;f=src%2F3dgfx.c;h=044ab6602897259700f0a3a1208100528831d58d;hp=a4af73a5015329f9dafb34440146c62adadf3a0e;hb=a5c65ceb155188c8acee31a475f8db9f5b58f4b6;hpb=e5393153629cb39ea6af0ca4a35370442127c5c2 diff --git a/src/3dgfx.c b/src/3dgfx.c index a4af73a..044ab66 100644 --- a/src/3dgfx.c +++ b/src/3dgfx.c @@ -3,6 +3,11 @@ #include #include #include +#if defined(__WATCOMC__) || defined(_MSC_VER) || defined(__DJGPP__) +#include +#else +#include +#endif #include "3dgfx.h" #include "gfxutil.h" #include "polyfill.h" @@ -398,10 +403,9 @@ void g3d_draw(int prim, const struct g3d_vertex *varr, int varr_size) void g3d_draw_indexed(int prim, const struct g3d_vertex *varr, int varr_size, const uint16_t *iarr, int iarr_size) { - int i, j, nfaces; + int i, j, vnum, nfaces; struct pvertex pv[16]; struct g3d_vertex v[16]; - int vnum = prim; /* primitive vertex counts correspond to enum values */ int mvtop = st->mtop[G3D_MODELVIEW]; int ptop = st->mtop[G3D_PROJECTION]; struct g3d_vertex *tmpv; @@ -412,7 +416,7 @@ void g3d_draw_indexed(int prim, const struct g3d_vertex *varr, int varr_size, memcpy(st->norm_mat, st->mat[G3D_MODELVIEW][mvtop], 16 * sizeof(float)); st->norm_mat[12] = st->norm_mat[13] = st->norm_mat[14] = 0.0f; - nfaces = (iarr ? iarr_size : varr_size) / vnum; + nfaces = (iarr ? iarr_size : varr_size) / prim; for(j=0; j