EaselJS spritesheet 动画在画布上不可见,但没有错误
Posted
技术标签:
【中文标题】EaselJS spritesheet 动画在画布上不可见,但没有错误【英文标题】:EaselJS spritesheet animation isn't visible on canvas, but there are no errors 【发布时间】:2013-10-31 04:47:35 【问题描述】:我正在创建一个游戏,我想在其中使用使用 easeljs 和 spritesheet 的动画。我使用下面的代码来执行此操作,但动画似乎没有出现在我的画布上。这很奇怪,因为也没有错误。我做错了什么?
我的代码:
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】:您正在使用已弃用的 addListener 方法,并告诉它在 window 上查找 tick 方法:
createjs.Ticker.addListener(window);
你应该改用这个:
createjs.Ticker.addEventListener("tick", function()
stage.update();
);
If it does not work, you should take a look here.
【讨论】:
只更新舞台的刻度方法的更好方法是将舞台添加为侦听器。 Stage 有一个handleEvent
方法,当接收到tick 事件时会自动更新stage。以上是关于EaselJS spritesheet 动画在画布上不可见,但没有错误的主要内容,如果未能解决你的问题,请参考以下文章
在 EaselJS 中为 spritesheet 设置动画时遇到问题
Spritesheet 动画 easeljs-0.7.1.min.js
CreateJs EaselJS spritesheet 框架不起作用