Improved MD2, MD5 and PCX loader code

Former-commit-id: ab715a3d52030f1e514c1b0d250b8e6cb3883ad5
This commit is contained in:
Lynix
2014-04-12 14:09:20 +02:00
parent 7ccac02bfd
commit 8c6c58c677
5 changed files with 26 additions and 24 deletions

View File

@@ -183,7 +183,7 @@ bool NzMD5MeshParser::Parse(NzMesh* mesh)
if (parent >= 0)
bindMatrix.MakeTransform(m_joints[i].bindPos, m_joints[i].bindOrient);
else
bindMatrix.MakeTransform(rotationQuat * m_joints[i].bindPos, rotationQuat * m_joints[i].bindOrient, scale);
bindMatrix.MakeTransform(rotationQuat * m_joints[i].bindPos, rotationQuat * m_joints[i].bindOrient);
joint->SetInverseBindMatrix(bindMatrix.InverseAffine());
}
@@ -250,7 +250,7 @@ bool NzMD5MeshParser::Parse(NzMesh* mesh)
vertexWeight->weights[j] = vertex.startWeight + j;
}
bindPosVertex->position = scale * finalPos;
bindPosVertex->position = finalPos;
bindPosVertex->uv.Set(vertex.uv.x, 1.f-vertex.uv.y);
bindPosVertex++;
vertexWeight++;
@@ -258,6 +258,8 @@ bool NzMD5MeshParser::Parse(NzMesh* mesh)
// Material
mesh->SetMaterial(i, baseDir + md5Mesh.shader);
subMesh->GenerateNormalsAndTangents();
subMesh->SetMaterialIndex(i);
mesh->AddSubMesh(subMesh.get());