From 091b1f79b1b1520121f6994385525a8ef26a8c86 Mon Sep 17 00:00:00 2001 From: "Mr.doob" Date: Fri, 24 Jul 2015 18:41:13 -0400 Subject: [PATCH] Clean up. --- src/extras/animation/MorphAnimation.js | 10 ++++++---- src/objects/MorphAnimMesh.js | 15 ++++++++------- src/renderers/webgl/WebGLShadowMap.js | 1 - 3 files changed, 14 insertions(+), 12 deletions(-) diff --git a/src/extras/animation/MorphAnimation.js b/src/extras/animation/MorphAnimation.js index 683d9b3ef0..6c18bdab76 100644 --- a/src/extras/animation/MorphAnimation.js +++ b/src/extras/animation/MorphAnimation.js @@ -47,8 +47,8 @@ THREE.MorphAnimation.prototype = { this.currentTime = Math.min( this.currentTime, this.duration ); - var interpolation = this.duration / this.frames; - var frame = Math.floor( this.currentTime / interpolation ); + var frameTime = this.duration / this.frames; + var frame = Math.floor( this.currentTime / frameTime ); var influences = this.mesh.morphTargetInfluences; @@ -63,8 +63,10 @@ THREE.MorphAnimation.prototype = { } - influences[ frame ] = ( this.currentTime % interpolation ) / interpolation; - influences[ this.lastFrame ] = 1 - influences[ frame ]; + var mix = ( this.currentTime % frameTime ) / frameTime; + + influences[ frame ] = mix; + influences[ this.lastFrame ] = 1 - mix; } diff --git a/src/objects/MorphAnimMesh.js b/src/objects/MorphAnimMesh.js index d263cf91b4..6cd1f54f3e 100644 --- a/src/objects/MorphAnimMesh.js +++ b/src/objects/MorphAnimMesh.js @@ -22,7 +22,7 @@ THREE.MorphAnimMesh = function ( geometry, material ) { this.direction = 1; this.directionBackwards = false; - this.setFrameRange( 0, this.geometry.morphTargets.length - 1 ); + this.setFrameRange( 0, geometry.morphTargets.length - 1 ); }; @@ -152,12 +152,13 @@ THREE.MorphAnimMesh.prototype.updateAnimation = function ( delta ) { var keyframe = this.startKeyframe + THREE.Math.clamp( Math.floor( this.time / frameTime ), 0, this.length - 1 ); - if ( keyframe !== this.currentKeyframe ) { + var influences = this.morphTargetInfluences; - this.morphTargetInfluences[ this.lastKeyframe ] = 0; - this.morphTargetInfluences[ this.currentKeyframe ] = 1; + if ( keyframe !== this.currentKeyframe ) { - this.morphTargetInfluences[ keyframe ] = 0; + influences[ this.lastKeyframe ] = 0; + influences[ this.currentKeyframe ] = 1; + influences[ keyframe ] = 0; this.lastKeyframe = this.currentKeyframe; this.currentKeyframe = keyframe; @@ -172,8 +173,8 @@ THREE.MorphAnimMesh.prototype.updateAnimation = function ( delta ) { } - this.morphTargetInfluences[ this.currentKeyframe ] = mix; - this.morphTargetInfluences[ this.lastKeyframe ] = 1 - mix; + influences[ this.currentKeyframe ] = mix; + influences[ this.lastKeyframe ] = 1 - mix; }; diff --git a/src/renderers/webgl/WebGLShadowMap.js b/src/renderers/webgl/WebGLShadowMap.js index 42acf20f87..781c6d118a 100644 --- a/src/renderers/webgl/WebGLShadowMap.js +++ b/src/renderers/webgl/WebGLShadowMap.js @@ -308,7 +308,6 @@ THREE.WebGLShadowMap = function ( _renderer, _lights, _objects ) { } - _renderer.setMaterialFaces( objectMaterial ); _renderer.renderBufferDirect( shadowCamera, _lights, fog, material, object ); } -- GitLab