|
@@ -4781,12 +4781,9 @@ module BABYLON {
|
|
}
|
|
}
|
|
|
|
|
|
scale = scale || MathTmp.Vector3[0];
|
|
scale = scale || MathTmp.Vector3[0];
|
|
- const scaleXSquared = m[0] * m[0] + m[1] * m[1] + m[2] * m[2];
|
|
|
|
- const scaleYSquared = m[4] * m[4] + m[5] * m[5] + m[6] * m[6];
|
|
|
|
- const scaleZSquared = m[8] * m[8] + m[9] * m[9] + m[10] * m[10];
|
|
|
|
- scale.x = Math.sqrt(scaleXSquared);
|
|
|
|
- scale.y = scaleXSquared === scaleYSquared ? scale.x : Math.sqrt(scaleYSquared);
|
|
|
|
- scale.z = scaleXSquared === scaleZSquared ? scale.x : Math.sqrt(scaleZSquared);
|
|
|
|
|
|
+ scale.x = Math.sqrt(m[0] * m[0] + m[1] * m[1] + m[2] * m[2]);
|
|
|
|
+ scale.y = Math.sqrt(m[4] * m[4] + m[5] * m[5] + m[6] * m[6]);
|
|
|
|
+ scale.z = Math.sqrt(m[8] * m[8] + m[9] * m[9] + m[10] * m[10]);
|
|
|
|
|
|
if (this.determinant() <= 0) {
|
|
if (this.determinant() <= 0) {
|
|
scale.y *= -1;
|
|
scale.y *= -1;
|