6

I am using this code to animate camera in scene using tween.js Does there a exists any done or finshed event?

            tween : function (target){
                var position = camera.position;
                var tween = new TWEEN.Tween(position).to(target, 1800);

                tween.onUpdate(function(){
                    camera.position.x = position.x;
                    camera.position.y = position.y;
                    camera.position.z = position.z;
                    if (android){
                        camera.lookAt(android.position)
                    }
                });
                tween.easing(TWEEN.Easing.Bounce.Out);
                tween.start(); 
            },
Stephan Ahlf
  • 3,310
  • 5
  • 39
  • 68
  • FYI for others while im lurking around tween.js posts - this snippet didn't need to set the position again in the onUpdate, it was already set by Tween at this point. It's just assigning its own values back to itself. – rtpHarry Sep 26 '18 at 08:45

2 Answers2

14

Provide an onComplete function:

tween.onComplete(function() {
  console.log('done!')
});

Docs

joews
  • 29,767
  • 10
  • 79
  • 91
4

As of April 2018, .onComplete doesn't exist in the docs. Rather you can use the .call function then pass a custom function.

   createjs.Tween.get(target).to({alpha:1}, 1000).call(handleComplete);
    function handleComplete() {
        //Tween complete
    }

See docs: https://www.createjs.com/docs/tweenjs/modules/TweenJS.html

nycdanie
  • 2,921
  • 3
  • 18
  • 21
  • 4
    this is a different library, one is [tween.js](https://github.com/tweenjs/tween.js/blob/master/docs/user_guide.md) the other is [tweenjs](https://www.createjs.com/docs/tweenjs/modules/TweenJS.html). – rtpHarry Sep 24 '18 at 11:36