PIXI.extras.MovieClip捕获循环结束

时间:2016-06-22 10:17:16

标签: javascript pixi.js

我正在使用PIXI.extras.MovieClip来播放一个简短的动画(大约60帧),由于不知道用户设备上会有多少FPS,我无法确定需要花多少时间来播放所有框架。 setTimeout也不能保证在指定的时间之后完全触发函数,所以它也不是我解决这个问题的方法。

当动画播放完成后,我想在代码中触发一些事件来删除MovieClip并写一些日志。

问题是我找不到任何类型的触发器/回调,这些触发/回调将在渲染动画的最后一帧时被调用。

示例代码:

movie = new PIXI.extras.MovieClip(someFrames);
movie.animationSpeed = 1;
movie.onComplete = animationFinished;
movie.play()

animationFinished = function () {
  console.log("Animation just reached it's end.");
  movie.gotoAndStop(0);
};

显而易见的问题是,从未调用movie.onComplete。有没有办法让这项工作?

感谢您的任何建议和想法。 快乐的编码!

1 个答案:

答案 0 :(得分:0)

movie = new PIXI.extras.MovieClip(someFrames);
movie.animationSpeed = 1;
movie.onComplete = animationFinished;
movie.loop = false;
movie.play();

animationFinished = function () {
    console.log("Animation just reached it's end.");
    movie.gotoAndStop(0);
};