EaselJS spritesheet动画在画布上不可见,但没有错误

时间:2013-10-22 10:50:08

标签: javascript easeljs sprite-sheet createjs

我正在创建一个游戏,我想使用画架和精灵表来使用动画。我使用下面的代码来执行此操作,但动画似乎没有出现在我的画布上。这很奇怪,因为也没有错误。我做错了什么?

我的代码:

    stage = new createjs.Stage(canvas);

    sprite = new createjs.SpriteSheet({
    "images": ["./images/vos.png"],
    "frames": [[0, 0, 32, 32, 0, 0, 0], 
              [32, 0, 32, 32, 0, 0, 0], 
              [64, 0, 32, 32, 0, 0, 0], 
              [96, 0, 32, 32, 0, 0, 0]],
    "animations": {"all": {"frames": [0, 1, 2, 3, 2, 1, 0]}

            }
    });

    vos = new createjs.BitmapAnimation(sprite);

    vos.x = 32 + (Math.random() * (canvas.width - 64));
    vos.y = 32 + (Math.random() * (canvas.height - 64));      

    speed=8;

    createjs.Ticker.addListener(window);
    createjs.Ticker.setFPS(24);

    stage.addChild(vos);

    vos.gotoAndPlay('all');

1 个答案:

答案 0 :(得分:2)

您正在使用已弃用的addListener方法,并告诉它在窗口中查找tick方法:

createjs.Ticker.addListener(window);

你应该改用:

createjs.Ticker.addEventListener("tick", function() {
    stage.update();
});

If it does not work, you should take a look here.