使用SpriteSheet在SpriteStage上渲染的动画不能正确显示
Animations rendered using SpriteSheet on a SpriteStage are not displayed properly
我正在使用精灵表生成器从通用的MovieClip生成SpriteSheet
类型对象。之后,我使用SpriteSheet
创建一个精灵类型的对象,包含一个时间轴,我将其添加到SpriteStage
中,如下所示:
var spriteStage = new createjs.SpriteStage(canvas);
var sprite = new createjs.Sprite(spriteSheet);
spriteStage.addChild(sprite);
sprite.play();
createjs.Ticker.addEventListener("tick", spriteStage);
的问题是:由此产生的是一个破碎的动画。看起来好像只有几帧被显示,动画要么快速循环这几帧,要么什么都不做。
使用console.log(sprite.currentFrame)
上的滴答更新功能,我可以看到所有帧以每秒30的速率递增,但实际显示的并不与此相对应。
请注意,使用正常的Stage
来添加和播放Sprite
动画效果很好。此外,根据Chrome://gpu
, WebGL是启用的,所以这也不是问题。
SpriteStage需要SpriteContainers,它引用精灵可以使用的单个图像。http://www.createjs.com/docs/easeljs/classes/SpriteContainer.html
这是一种较老的WebGL方法——所以你可能对StageGL感兴趣,StageGL是一种新的EaselJS方法,我们正在进行beta测试,应该很快就会发布。基本上,它的工作原理与Stage相同,但可以接受更多内容(并且速度更快!)请注意,您上面的方法与StageGL的工作方式更内联。
在GitHub有一个分支:https://github.com/CreateJS/EaselJS/tree/StageGL-beta
我们仍在完善文档和演示(由于其他优先事项而延迟),但希望能尽快标记。
相关文章:
- jQuery scrollTop没有'不能在FF或IE中制作动画,但在chrome中效果良好
- jQuery animate() 第二次不能正确地对高度进行动画处理
- 为什么jQuery不能准确地动画数字
- Textillate CSS动画不能完全与jQuery Mobile配合使用
- 为什么这个动画marginTop函数不能像我预期的那样工作
- Scrolltop()(不能反转动画)
- 在这个java脚本动画中,第二次动画不能正常工作
- 伟大的动画不能在所有元素上工作
- 过渡Js动画循环不能正常工作
- Javascript动画在放大和缩小时不能正常工作
- 为什么我们不能使用for循环来创建动画?
- JS滑块不能改变图像的动画时间
- 使用SpriteSheet在SpriteStage上渲染的动画不能正确显示
- JavaScript + CSS3动画不能正常工作
- 我的幻灯片输入/输出动画不能在jQuery中工作
- 不能使jQuery动画工作
- for循环不能用于JavaScript动画
- CSS动画不能在IE11上工作
- 动画在悬停时停止,在鼠标离开时开始,但不能再次悬停以重复停止动画
- 切换类不能像css3动画那样工作