isValidMinMax = false;
break;
}
- aMinPnt.SetCoord (anIter + 1, aMinVal.GetDouble());
- aMinPnt.SetCoord (anIter + 1, aMaxVal.GetDouble());
+ double aMinDVal = aMinVal.GetDouble();
+ double aMaxDVal = aMaxVal.GetDouble();
+ if (aMinDVal > aMaxDVal)
+ {
+ reportGltfWarning ("Accessor '" + theName + "' defines invalid min/max value.");
+ isValidMinMax = false;
+ break;
+ }
+ aMinPnt.SetCoord (anIter + 1, aMinDVal);
+ aMaxPnt.SetCoord (anIter + 1, aMaxDVal);
}
if (isValidMinMax)
{
aBox.Add (aMinPnt);
aBox.Add (aMaxPnt);
- theMeshData->SetBoundingBox (aBox);
+ theMeshData->SetCachedMinMax (aBox);
}
}
}