mirror of
https://github.com/Mauler125/r5sdk.git
synced 2025-02-09 19:15:03 +01:00
Recast: remove mesh import flipping code
This was initially implemented to work around a normal flipping bug caused by the BSP to OBJ converter script, and the way Blender exports assets (it flips the axis on export). Removed code as we should instead use the fixed scripts and properly export the adjusted models from the DCC tools.
This commit is contained in:
parent
d38bdd1abd
commit
f7d9cefc80
@ -48,18 +48,11 @@ void rcMeshLoaderObj::addVertex(float x, float y, float z, int& cap)
|
||||
m_verts = nv;
|
||||
}
|
||||
float* dst = &m_verts[m_vertCount*3];
|
||||
if (m_flipAxis)
|
||||
{
|
||||
*dst++ = x * m_scale;
|
||||
*dst++ = z * m_scale;
|
||||
*dst++ = -y * m_scale;
|
||||
}
|
||||
else
|
||||
{
|
||||
*dst++ = x * m_scale;
|
||||
*dst++ = y * m_scale;
|
||||
*dst++ = z * m_scale;
|
||||
}
|
||||
|
||||
*dst++ = x * m_scale;
|
||||
*dst++ = y * m_scale;
|
||||
*dst++ = z * m_scale;
|
||||
|
||||
m_vertCount++;
|
||||
}
|
||||
|
||||
@ -211,10 +204,8 @@ bool rcMeshLoaderObj::load(const std::string& filename)
|
||||
const int c = face[i];
|
||||
if (a < 0 || a >= m_vertCount || b < 0 || b >= m_vertCount || c < 0 || c >= m_vertCount)
|
||||
continue;
|
||||
if(m_flipTris)
|
||||
addTriangle(a, c, b, tcap);
|
||||
else
|
||||
addTriangle(a, b, c, tcap);
|
||||
|
||||
addTriangle(a, b, c, tcap);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -79,21 +79,9 @@ end_header
|
||||
|
||||
for (size_t i = 0; i < m_vertCount; i++)
|
||||
{
|
||||
//TODO: m_scale?
|
||||
if (m_flipAxis)
|
||||
{
|
||||
input.read((char*)&m_verts[i * 3 + 0], sizeof(float));
|
||||
input.read((char*)&m_verts[i * 3 + 2], sizeof(float));
|
||||
input.read((char*)&m_verts[i * 3 + 1], sizeof(float));
|
||||
m_verts[i * 3 + 1] *= -1;
|
||||
}
|
||||
else
|
||||
{
|
||||
input.read((char*)&m_verts[i * 3 + 0], sizeof(float));
|
||||
input.read((char*)&m_verts[i * 3 + 1], sizeof(float));
|
||||
input.read((char*)&m_verts[i * 3 + 2], sizeof(float));
|
||||
}
|
||||
|
||||
input.read((char*)&m_verts[i * 3 + 0], sizeof(float));
|
||||
input.read((char*)&m_verts[i * 3 + 1], sizeof(float));
|
||||
input.read((char*)&m_verts[i * 3 + 2], sizeof(float));
|
||||
}
|
||||
|
||||
for (size_t i = 0; i < m_triCount; i++)
|
||||
@ -102,18 +90,10 @@ end_header
|
||||
input.read(&count, 1);
|
||||
if (count != 3)
|
||||
return false;
|
||||
if (m_flipTris)
|
||||
{
|
||||
input.read((char*)&m_tris[i * 3 + 0], sizeof(int));
|
||||
input.read((char*)&m_tris[i * 3 + 2], sizeof(int));
|
||||
input.read((char*)&m_tris[i * 3 + 1], sizeof(int));
|
||||
}
|
||||
else
|
||||
{
|
||||
input.read((char*)&m_tris[i * 3 + 0], sizeof(int));
|
||||
input.read((char*)&m_tris[i * 3 + 1], sizeof(int));
|
||||
input.read((char*)&m_tris[i * 3 + 2], sizeof(int));
|
||||
}
|
||||
|
||||
input.read((char*)&m_tris[i * 3 + 0], sizeof(int));
|
||||
input.read((char*)&m_tris[i * 3 + 1], sizeof(int));
|
||||
input.read((char*)&m_tris[i * 3 + 2], sizeof(int));
|
||||
}
|
||||
|
||||
// Calculate normals.
|
||||
|
@ -33,9 +33,6 @@ public:
|
||||
virtual int getVertCount() const = 0;
|
||||
virtual int getTriCount() const = 0;
|
||||
virtual const std::string& getFileName() const = 0;
|
||||
|
||||
bool m_flipAxis = false; // !TODO: ImGui import option.
|
||||
bool m_flipTris = false; // !TODO: ImGui import option.
|
||||
};
|
||||
class rcMeshLoaderObj:public IMeshLoader
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user