Explorar o código

Fixed wrong BoundingBox transformation, when using negative scaling values

Georg %!s(int64=10) %!d(string=hai) anos
pai
achega
495e0cf6d5
Modificáronse 1 ficheiros con 1 adicións e 1 borrados
  1. 1 1
      jme3-core/src/main/java/com/jme3/bounding/BoundingBox.java

+ 1 - 1
jme3-core/src/main/java/com/jme3/bounding/BoundingBox.java

@@ -314,7 +314,7 @@ public class BoundingBox extends BoundingVolume {
         transMatrix.absoluteLocal();
 
         Vector3f scale = trans.getScale();
-        vars.vect1.set(xExtent * scale.x, yExtent * scale.y, zExtent * scale.z);
+        vars.vect1.set(xExtent * FastMath.abs(scale.x), yExtent * FastMath.abs(scale.y), zExtent * FastMath.abs(scale.z));
         transMatrix.mult(vars.vect1, vars.vect2);
         // Assign the biggest rotations after scales.
         box.xExtent = FastMath.abs(vars.vect2.getX());