Paper.js / Canvas性能和简单的Raster动画

时间:2014-11-18 13:08:03

标签: javascript optimization canvas paperjs

我正在尝试使用Paper.js作为实验创建一个小型的吉他英雄游戏。

这是我的代码的实时且可测试的版本(等待1秒) -

http://codepen.io/anon/pen/GgggwK

  • 我有一个有延迟的数组,例如intervalArray =[200,300,500,100,200],我使用该数组来启动一个函数 将光栅图像推入一个组。

  • 共有5个Groups(5个吉他和弦)动画 使用view.onFrame,以便position.y更改指定的内容 dropSpeed

  • 因此无论我向那些Groups推进动画(流动)是什么 画布。

  • 还有5 Circles以及正在流下的图像/备注 在某些时候重叠圆圈。

  • 如果用户在合适的时间点击该圈子(当注意时) 重叠),他得到了一些分数。

当图像到达画布的末尾时,我正在回收它们,因此我不会有太多的物品来占用内存。

问题是,我期待看到非常非常快的表现。

  

我正在使用光栅图像,它应该非常快速地渲染   与矢量相比,我正在回收图像并使用少量图像   Canvas上的额外项目,但仍然在我正在使用的移动浏览器上   一些严重的性能问题。

即使在我的iMac上,我也希望看到以全帧速率运行 - requestAnimationFrame这是view.onFrame内部使用的)允许的60fps,但有时候帧速率也会变化。


我已对此进行了测试:

Galaxy S3,股票和Chrome浏览器(动画时在某些点滞后,帧速率每35帧冻结5,6帧)。

谷歌Nexus 5,股票和Chrome浏览器(以某种方式更好地工作,冻结5,7帧并继续)

iPhone 4 Safari浏览器(非常缓慢)

iMac 2011,8GB内存,Core2 Duo处理器(相当好的帧率,有时变化)

0 个答案:

没有答案