1
0

Merging r6288 through r6336 from trunk to ogl-es branch

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/branches/ogl-es@6337 dfc29bdd-3216-0410-991c-e03cc46cb475
This commit is contained in:
cutealien
2022-04-15 18:51:09 +00:00
parent 67469c8899
commit 2d63fdba3d
115 changed files with 1828 additions and 1154 deletions

View File

@@ -127,11 +127,26 @@ bool COBJMeshWriter::writeMesh(io::IWriteFile* file, scene::IMesh* mesh, s32 fla
file->write(num.c_str(), num.size());
file->write("\n",1);
unsigned int idx2=0, idx1=0, idx0 = 0;
const u32 indexCount = buffer->getIndexCount();
for (j=0; j<indexCount; j+=3)
{
switch(buffer->getIndexType())
{
case video::EIT_16BIT:
idx2 = buffer->getIndices()[j+2]+allVertexCount;
idx1 = buffer->getIndices()[j+1]+allVertexCount;
idx0 = buffer->getIndices()[j+0]+allVertexCount;
break;
case video::EIT_32BIT:
idx2 = ((u32*)buffer->getIndices())[j+2]+allVertexCount;
idx1 = ((u32*)buffer->getIndices())[j+1]+allVertexCount;
idx0 = ((u32*)buffer->getIndices())[j+0]+allVertexCount;
break;
}
file->write("f ",2);
num = core::stringc(buffer->getIndices()[j+2]+allVertexCount);
num = core::stringc(idx2);
file->write(num.c_str(), num.size());
file->write("/",1);
file->write(num.c_str(), num.size());
@@ -139,7 +154,7 @@ bool COBJMeshWriter::writeMesh(io::IWriteFile* file, scene::IMesh* mesh, s32 fla
file->write(num.c_str(), num.size());
file->write(" ",1);
num = core::stringc(buffer->getIndices()[j+1]+allVertexCount);
num = core::stringc(idx1);
file->write(num.c_str(), num.size());
file->write("/",1);
file->write(num.c_str(), num.size());
@@ -147,7 +162,7 @@ bool COBJMeshWriter::writeMesh(io::IWriteFile* file, scene::IMesh* mesh, s32 fla
file->write(num.c_str(), num.size());
file->write(" ",1);
num = core::stringc(buffer->getIndices()[j+0]+allVertexCount);
num = core::stringc(idx0);
file->write(num.c_str(), num.size());
file->write("/",1);
file->write(num.c_str(), num.size());