Parcourir la source

Fix - Quaternion init of CSG toMesh

Since no quaternion exists, a call to copyFrom on an undefined object
will not work.
It is now being initialized only when the original CSG includes a
quaternion
Raanan Weber il y a 10 ans
Parent
commit
7d86aa0ffe
2 fichiers modifiés avec 6 ajouts et 3 suppressions
  1. 3 2
      Babylon/Mesh/babylon.csg.js
  2. 3 1
      Babylon/Mesh/babylon.csg.ts

+ 3 - 2
Babylon/Mesh/babylon.csg.js

@@ -492,7 +492,9 @@ var BABYLON;
             mesh.material = material;
             mesh.position.copyFrom(this.position);
             mesh.rotation.copyFrom(this.rotation);
-            mesh.rotationQuaternion.copyFrom(this.rotationQuaternion);
+            if (this.rotationQuaternion) {
+                mesh.rotationQuaternion = this.rotationQuaternion.clone();
+            }
             mesh.scaling.copyFrom(this.scaling);
             mesh.computeWorldMatrix(true);
             return mesh;
@@ -501,4 +503,3 @@ var BABYLON;
     })();
     BABYLON.CSG = CSG;
 })(BABYLON || (BABYLON = {}));
-//# sourceMappingURL=babylon.csg.js.map

+ 3 - 1
Babylon/Mesh/babylon.csg.ts

@@ -589,7 +589,9 @@
 
             mesh.position.copyFrom(this.position);
             mesh.rotation.copyFrom(this.rotation);
-            mesh.rotationQuaternion.copyFrom(this.rotationQuaternion);
+			if(this.rotationQuaternion) {
+				mesh.rotationQuaternion = this.rotationQuaternion.clone();
+			}
             mesh.scaling.copyFrom(this.scaling);
             mesh.computeWorldMatrix(true);