|
@@ -418,7 +418,12 @@ void glTF2Exporter::ExportMaterials()
|
|
|
GetMatTex(mat, m->pbrMetallicRoughness.baseColorTexture, aiTextureType_DIFFUSE);
|
|
|
GetMatTex(mat, m->pbrMetallicRoughness.metallicRoughnessTexture, AI_MATKEY_GLTF_PBRMETALLICROUGHNESS_METALLICROUGHNESS_TEXTURE);
|
|
|
GetMatColor(mat, m->pbrMetallicRoughness.baseColorFactor, AI_MATKEY_COLOR_DIFFUSE);
|
|
|
- mat->Get(AI_MATKEY_GLTF_PBRMETALLICROUGHNESS_METALLIC_FACTOR, m->pbrMetallicRoughness.metallicFactor);
|
|
|
+
|
|
|
+ if (mat->Get(AI_MATKEY_GLTF_PBRMETALLICROUGHNESS_METALLIC_FACTOR, m->pbrMetallicRoughness.metallicFactor) != AI_SUCCESS) {
|
|
|
+ //if metallicFactor wasn't defined, then the source is likely not a PBR file, and the metallicFactor should be 0
|
|
|
+ m->pbrMetallicRoughness.metallicFactor = 0;
|
|
|
+ }
|
|
|
+
|
|
|
mat->Get(AI_MATKEY_GLTF_PBRMETALLICROUGHNESS_ROUGHNESS_FACTOR, m->pbrMetallicRoughness.roughnessFactor);
|
|
|
|
|
|
GetMatTex(mat, m->normalTexture, aiTextureType_NORMALS);
|