Merge branch 'a/multipleMeshBatches' of scuti/lib3ddevil1 into a/geometry

This commit is contained in:
scuti 2018-04-13 17:42:18 -07:00 committed by Gitea
commit 383abb1607
3 changed files with 8 additions and 8 deletions

View File

@ -87,7 +87,7 @@ bool getmeshheader(struct MeshHeader**, unsigned int i, const char * const);
// ** = 'pass by reference' of a pointer to struct // ** = 'pass by reference' of a pointer to struct
bool getmeshbatch(struct Batch*, bool getmeshbatch(struct Batch*,
struct MeshHeader*, unsigned int offset,
const char * const); const char * const);
#endif #endif

View File

@ -69,13 +69,12 @@ bool getmeshheader(struct MeshHeader **hs,
} }
bool getmeshbatch(struct Batch *b, bool getmeshbatch(struct Batch *b,
struct MeshHeader *h, unsigned int offset,
const char * const filedata) { const char * const filedata) {
bool done = false; bool done = false;
if (b == NULL || h == NULL || filedata == NULL) { if (b == NULL || filedata == NULL) {
return done; return done;
} }
unsigned int offset = h -> offsetBatches;
struct BatchData *d1 = NULL; struct BatchData *d1 = NULL;
struct VertexData d2; struct VertexData d2;
d1 = (struct BatchData*) (filedata + offset); d1 = (struct BatchData*) (filedata + offset);

View File

@ -117,14 +117,15 @@ void extractmeshes(const char *filedata,
unsigned int i; unsigned int i;
unsigned int j; unsigned int j;
bool ok; bool ok;
//h -> numMesh //for (i = 0; i < 5; i++) {
for (i = 0; i < h -> numMesh; i++) { for (i = 0; i < h -> numMesh; i++) {
ok = getmeshheader(&mh, i, filedata); ok = getmeshheader(&mh, i, filedata);
if (ok) { if (ok) {
// for (j = 0; j < mh -> numBatch; j++) { for (j = 0; j < mh -> numBatch; j++) {
getmeshbatch(&b, mh, filedata); unsigned int offset = mh->offsetBatches + j * sizeof(struct BatchData);
getmeshbatch(&b, offset, filedata);
printmeshbatch(&b); printmeshbatch(&b);
// } // end for } // end for
} // end if } // end if
} // end for } // end for
} }