Canvas Easeljs性能下降?

Canvas Easeljs性能下降?,canvas,easeljs,Canvas,Easeljs,我一直在玩画架,我发现表演开始下降。在我的例子中,Chrome大约需要3秒才能达到这一点,Safari需要25秒,Firefox到处都是 问题: 我做错什么了吗? 或者这是我期望从easeljs获得的性能冲击? 范例 为了演示我所经历的性能冲击,我创建了一个简单的循环重画动画,但帧速率很快开始下降。如果我恢复到纯画布API调用,那么它将恢复性能 下面是我重画的关键片段,它选择了绘制圆的方法: if ( counter.fps > 60) { circle.graphics.begi

我一直在玩画架,我发现表演开始下降。在我的例子中,Chrome大约需要3秒才能达到这一点,Safari需要25秒,Firefox到处都是

问题:

我做错什么了吗? 或者这是我期望从easeljs获得的性能冲击? 范例 为了演示我所经历的性能冲击,我创建了一个简单的循环重画动画,但帧速率很快开始下降。如果我恢复到纯画布API调用,那么它将恢复性能

下面是我重画的关键片段,它选择了绘制圆的方法:

if ( counter.fps > 60) {
    circle.graphics.beginFill('green')
    circle.graphics.drawCircle(0,0, w / 10)
    circle.graphics.endFill();
    stage.update();
} else {    
    context.beginPath();
    context.arc(circle.x, circle.y, w / 10, 0, 2 * Math.PI, false);
    context.fillStyle = "darkred";
    context.fill();
}
有关演示,请参阅此JSFIDLE:

我尝试过类似结果的变体:

requestAnimationFrame和pollyfill 慢速fps 2012年年中macbook air上OSX 10.8.2性能的大致时间表

铬合金v26.0.1410.43

0-3s=90fps 3s=fps开始下降 6s=fps达到60fps Safari v6.0.2 8536.26.17

0-20s=90fps 20s=fps开始下降 35s=fps达到60fps 火狐v20

fsFiddle托管:完全不稳定 本地托管:与Chromes性能非常相似,但更不稳定
EaselJS图形会被保留,所以每个帧都会向图形队列添加另一个圆定义。因此,在1000次重画呼叫后,它每次画1000个圆圈

使用Graphics.clear重置绘制队列,或者只绘制一次圆并移动建议的相应形状

这是你的小提琴的一个改进版本,它为我带来了99 fps的速度:

+1,以便更好地捕捉OP的故障。顺便说一句,你真的与CreateJS有关联吗。如果是这样,我喜欢你的代码,很高兴认识你!谢谢我也很高兴见到你@markE。我是格兰特·斯金纳图书馆的原创者——很高兴你喜欢它们。