From c64c04eb71c0892a03e48e560ea5584b282ed5c4 Mon Sep 17 00:00:00 2001 From: Lee Salzman Date: Mon, 15 Sep 2008 00:32:43 +0000 Subject: [PATCH] discard empty meshes from md3s git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@2602 e016b1c5-ed68-44aa-a2f7-31cac88cffde --- source/src/md3.h | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/source/src/md3.h b/source/src/md3.h index a38685fe..6cdc751f 100644 --- a/source/src/md3.h +++ b/source/src/md3.h @@ -93,13 +93,19 @@ struct md3 : vertmodel int mesh_offset = header.ofs_meshes; loopi(header.nummeshes) { - mesh &m = *meshes.add(new mesh); - m.owner = this; md3meshheader mheader; fseek(f, mesh_offset, SEEK_SET); fread(&mheader, sizeof(md3meshheader), 1, f); - endianswap(&mheader.flags, sizeof(int), 10); + endianswap(&mheader.flags, sizeof(int), 10); + if(mheader.numtriangles <= 0) + { + mesh_offset += mheader.meshsize; + continue; + } + + mesh &m = *meshes.add(new mesh); + m.owner = this; m.name = newstring(mheader.name); m.numtris = mheader.numtriangles;