ms3d mesh/group data is now exported
This commit is contained in:
parent
1ed89592fc
commit
4c462408c3
|
@ -268,7 +268,7 @@ bool Ms3d::ConvertToMesh(const std::string &file)
|
||||||
// triangles chunk
|
// triangles chunk
|
||||||
fputs("TRI", fp);
|
fputs("TRI", fp);
|
||||||
long numTriangles = m_numTriangles;
|
long numTriangles = m_numTriangles;
|
||||||
long sizeOfTriangles = (sizeof(int) * 3 + (sizeof(float) * 3) * 3 + (sizeof(float) * 2) * 3) * numTriangles + sizeof(long);
|
long sizeOfTriangles = (sizeof(int) * 4 + (sizeof(float) * 3) * 3 + (sizeof(float) * 2) * 3) * numTriangles + sizeof(long);
|
||||||
fwrite(&sizeOfTriangles, sizeof(long), 1, fp);
|
fwrite(&sizeOfTriangles, sizeof(long), 1, fp);
|
||||||
fwrite(&numTriangles, sizeof(long), 1, fp);
|
fwrite(&numTriangles, sizeof(long), 1, fp);
|
||||||
for (long i = 0; i < numTriangles; ++i)
|
for (long i = 0; i < numTriangles; ++i)
|
||||||
|
@ -281,6 +281,9 @@ bool Ms3d::ConvertToMesh(const std::string &file)
|
||||||
index = triangle->vertices[2];
|
index = triangle->vertices[2];
|
||||||
fwrite(&index, sizeof(int), 1, fp);
|
fwrite(&index, sizeof(int), 1, fp);
|
||||||
|
|
||||||
|
index = triangle->meshIndex;
|
||||||
|
fwrite(&index, sizeof(int), 1, fp);
|
||||||
|
|
||||||
for (int j = 0; j < 3; ++j)
|
for (int j = 0; j < 3; ++j)
|
||||||
{
|
{
|
||||||
fwrite(&triangle->normals[j].x, sizeof(float), 1, fp);
|
fwrite(&triangle->normals[j].x, sizeof(float), 1, fp);
|
||||||
|
@ -294,6 +297,18 @@ bool Ms3d::ConvertToMesh(const std::string &file)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// sub-meshes / groups chunk
|
||||||
|
fputs("GRP", fp);
|
||||||
|
long numGroups = m_numMeshes;
|
||||||
|
long sizeOfGroups = (sizeof(int)) * numGroups + sizeof(long);
|
||||||
|
fwrite(&sizeOfGroups, sizeof(long), 1, fp);
|
||||||
|
fwrite(&numGroups, sizeof(long), 1, fp);
|
||||||
|
for (long i = 0; i < numGroups; ++i)
|
||||||
|
{
|
||||||
|
int numTriangles = m_meshes[i].numTriangles;
|
||||||
|
fwrite(&numTriangles, sizeof(int), 1, fp);
|
||||||
|
}
|
||||||
|
|
||||||
// joints chunk
|
// joints chunk
|
||||||
fputs("JNT", fp);
|
fputs("JNT", fp);
|
||||||
long numJoints = m_numJoints;
|
long numJoints = m_numJoints;
|
||||||
|
|
Reference in a new issue