我刚开始使用EaselJS,我有精灵问题。 我想动画一个spritesheet,我的代码似乎没错,但我仍然有一个白色的画布。你能帮我告诉我哪里错了吗?
var img = new Image(),
canvas,
stage,
bmpAnimation;
function init() {
canvas = document.getElementById("myCanvas");
stage = new createjs.Stage(canvas);
img.src = "http://untamed.wild-refuge.net/images/rpgxp/avengers/deadpool.png";
createjs.Ticker.useRAF = true;
createjs.Ticker.setFPS(40);
createjs.Ticker.addEventListener("tick",tick);
}
var spriteSheet = new createjs.SpriteSheet({
images: [img],
frames: {width:32, height:48, regX: 16, regY: 24},
animations: {
walk: [4, 7, "walk"]
}
});
function tick() {
scene.update();
}
bmpAnimation = new createjs.BitmapAnimation(spriteSheet);
bmpAnimation = gotoAndPlay("walk");
bmpAnimation.x = 200;
bmpAnimation.y = 100;
bmpAnimation.currentFrame = 0;
stage.addChild(bmpAnimation);
window.onload = init;
谢谢。
答案 0 :(得分:2)
检查您的控制台输出。你有一些错误的错别字。例如,您拨打scene.update()
而不是stage.update()
和bmpAnimation = gotoAndPlay("walk")
而不是bmpAnimation.gotoAndPlay("walk")
。
请尝试采取基本的调试步骤来解决您的问题,并在向SO寻求帮助之前查看您自己的代码。