summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Parks <davep@lindenlab.com>2011-08-18 14:41:34 -0500
committerDave Parks <davep@lindenlab.com>2011-08-18 14:41:34 -0500
commit1b36b0425119ce1e96eeeb87af7f150a206e62b0 (patch)
treea498cffe63bf262000df83f44af577a0dc29fbeb
parente0bf0e3e2150304e7b26c18c274273c18653965b (diff)
SH-1180 Log which nodes are problematic when loading a .dae with mirrored meshes and report error.
-rwxr-xr-xindra/newview/llfloatermodelpreview.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/indra/newview/llfloatermodelpreview.cpp b/indra/newview/llfloatermodelpreview.cpp
index 0c8fd33113..d55849d2fb 100755
--- a/indra/newview/llfloatermodelpreview.cpp
+++ b/indra/newview/llfloatermodelpreview.cpp
@@ -2705,6 +2705,12 @@ void LLModelLoader::processElement( daeElement* element, bool& badElement )
{
LLMatrix4 transformation = mTransform;
+ if (mTransform.determinant() < 0)
+ { //negative scales are not supported
+ llinfos << "Negative scale detected, unsupported transform. domInstance_geometry: " << LLModel::getElementLabel(instance_geo) << llendl;
+ badElement = true;
+ }
+
std::map<std::string, LLImportMaterial> materials = getMaterials(model, instance_geo);
// adjust the transformation to compensate for mesh normalization