diff --git a/examples/js/animation/MMDPhysics.js b/examples/js/animation/MMDPhysics.js index 56dd2358ffa9f8cd8bab67dfae43055096f2d610..5a17a34eab85aa8d5bf06ebdf33d2ce6c566eafe 100644 --- a/examples/js/animation/MMDPhysics.js +++ b/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();