@@ -315,7+407,7 @@ void Mod_BuildAliasSkinsFromSkinFiles(aliasskin_t *skin, skinfile_t *skinfile, c
#define BOUNDF(VALUE,MIN,MAX) if (VALUE < MIN || VALUE >= MAX) Host_Error("model %s has an invalid ##VALUE (%f exceeds %f - %f)\n", loadmodel->name, VALUE, MIN, MAX);
+ if (loadmodel->alias.aliasdata_bones[i].parent >= i)
+ Host_Error("%s bone[%i].parent >= %i\n", loadmodel->name, i, i);
}
+ //zymlump_t lump_vertbonecounts; // int vertbonecounts[numvertices]; // how many bones influence each vertex (separate mainly to make this compress better)
+ for (i = 0;i < pheader->lump_verts.length / (int) sizeof(zymvertex_t);i++)
{
- int i, *bonecount;
- // zymlump_t lump_vertbonecounts; // int vertbonecounts[numvertices]; // how many bones influence each vertex (separate mainly to make this compress better)
+ //zymlump_t lump_shaders; // char shadername[numshaders][32]; // shaders used on this model
+ //zymlump_t lump_render; // int renderlist[rendersize]; // sorted by shader with run lengths (int count), shaders are sequentially used, each run can be used with glDrawElements (each triangle is 3 int indices)
+ // byteswap, validate, and swap winding order of tris
+ Host_Error("%s corrupt renderlist (out of bounds index)\n", loadmodel->name);
+ renderlist += 3;
+ outelements += 3;
}
- }
-
- {
- int i, count, *renderlist, *renderlistend, *outrenderlist;
- // zymlump_t lump_render; // int renderlist[rendersize]; // sorted by shader with run lengths (int count), shaders are sequentially used, each run can be used with glDrawElements (each triangle is 3 int indices)