提升canvas性能技巧

参考文章:html

http://codetheory.in/optimizing-html5-canvas-to-improve-your-game-performance/html5

http://www.html5rocks.com/en/tutorials/canvas/performance/canvas


【总结】动画

1)少用drawImage,能将多张图拼成一张,尽可能多拼;code

2)drawImage的时候,用上所有参数,也就是用上sprite技术;orm

3)只作少许的,必要的碰撞检测;htm

4)使用整型,少用浮点型;get

5)让动画基于时间,别基于帧,帧不可靠,基于时间能够更平滑;it

6)文本绘制的成本很高;form

7)使用预渲染技术,将须要反复绘制的东西预渲染到看不见的canvas上,再从它上面渲染至显示用的canvas上,预渲染用的canvas大小不宜过大,否则它的开销太大,得不偿失。也就是说,预渲染用的canvas不宜使用sprite技术;

8)在路径方面,合并多个路径一次绘出来,不要屡次绘制零散的路径;

9)改变context上下文的成本比较高,在相同的上下文下尽可能将相同的事情作完,再作另外一件事,不要频繁切换上下文;

10)用多个canvas,分别绘制不一样的图层,不一样图层能够有不一样的fps;

11)避免使用阴影;

相关文章
相关标签/搜索