Bläddra i källkod

MMDPhysics minor optimization

Takahiro 7 år sedan
förälder
incheckning
9954afdf89
1 ändrade filer med 3 tillägg och 4 borttagningar
  1. 3 4
      examples/js/animation/MMDPhysics.js

+ 3 - 4
examples/js/animation/MMDPhysics.js

@@ -814,9 +814,9 @@ THREE.MMDPhysics.RigidBody.prototype = {
 		var helper = this.helper;
 		var p = helper.allocThreeVector3();
 		var q = helper.allocThreeQuaternion();
+		var s = helper.allocThreeVector3();
 
-		this.bone.getWorldPosition( p );
-		this.bone.getWorldQuaternion( q );
+		this.bone.matrixWorld.decompose( p, q, s );
 
 		var tr = helper.allocTransform();
 		helper.setOriginFromThreeVector3( tr, p );
@@ -825,6 +825,7 @@ THREE.MMDPhysics.RigidBody.prototype = {
 		var form = helper.multiplyTransforms( tr, this.boneOffsetForm );
 
 		helper.freeTransform( tr );
+		helper.freeThreeVector3( s );
 		helper.freeThreeQuaternion( q );
 		helper.freeThreeVector3( p );
 
@@ -881,8 +882,6 @@ THREE.MMDPhysics.RigidBody.prototype = {
 
 	updateBoneRotation: function () {
 
-		this.bone.updateMatrixWorld( true );
-
 		var helper = this.helper;
 
 		var tr = this.getWorldTransformForBone();