Utility/OBJSaver: Fix multiple materials saving

Former-commit-id: 003f1dee7556318bb0c42b84ce178b4ee687c9a1 [formerly 17eb0eab5b018ef6a127ade58d4db4b815378dd0]
Former-commit-id: 0e984242a33c40c8f1a1ee0c0754ac24ea96d79d
This commit is contained in:
Lynix 2016-07-17 21:10:20 +02:00
parent 1b72b080e1
commit 3b335ada9d
2 changed files with 4 additions and 3 deletions

View File

@ -102,7 +102,7 @@ namespace Nz
stream.Read(skin, 68*sizeof(char)); stream.Read(skin, 68*sizeof(char));
ParameterList matData; ParameterList matData;
matData.SetParameter(MaterialData::CustomDefined, true); matData.SetParameter(MaterialData::CustomDefined);
matData.SetParameter(MaterialData::DiffuseTexturePath, baseDir + skin); matData.SetParameter(MaterialData::DiffuseTexturePath, baseDir + skin);
mesh->SetMaterialData(i, std::move(matData)); mesh->SetMaterialData(i, std::move(matData));

View File

@ -122,7 +122,7 @@ namespace Nz
bool bValue; bool bValue;
String strVal; String strVal;
if (matData.GetBooleanParameter(MaterialData::CustomDefined, &bValue) && bValue) if (matData.HasParameter(MaterialData::CustomDefined))
{ {
Color colorVal; Color colorVal;
float fValue; float fValue;
@ -160,9 +160,10 @@ namespace Nz
const StaticMesh* staticMesh = static_cast<const StaticMesh*>(mesh.GetSubMesh(i)); const StaticMesh* staticMesh = static_cast<const StaticMesh*>(mesh.GetSubMesh(i));
std::size_t triangleCount = staticMesh->GetTriangleCount(); std::size_t triangleCount = staticMesh->GetTriangleCount();
std::size_t vertexCount = staticMesh->GetVertexCount();
meshes[i].faces.resize(triangleCount); meshes[i].faces.resize(triangleCount);
meshes[i].material = staticMesh->GetMaterialIndex();
meshes[i].name = "mesh_" + String::Number(i);
meshes[i].vertices.resize(triangleCount * 3); meshes[i].vertices.resize(triangleCount * 3);
{ {