重绘画布与图层的部分

时间:2016-11-02 19:23:50

标签: javascript html5 canvas

假设我有画布。上半部分不断变化,下半部分很少变化。在我的场景中,我有很多不同的动画/动画,所以我不想让那些画布相互叠加。

我目前的方法是在整个页面上绘制动画,然后在其上面绘制下半部分。 如果我只画上半部分而不重绘下半部分,它会优化速度吗?或者没关系?

谢谢,我感谢所有答案。

1 个答案:

答案 0 :(得分:3)

画布表现通常与您更改的像素数有关。因此,只绘制画布的一半,而不清除画布,通常比更新整个画布更快。当你没有绘制到画布时,它也会注意消耗任何CPU资源,因为它基本上充当图像。

但是,与所有与绩效相关的问题一样,不要寻求建议,做一些测量

使用内置的开发人员工具( F12 )来分析渲染性能。启用屏幕重绘矩形以查看浏览器的哪些部分正在重绘。看看是否只绘制画布的一部分会导致浏览器重绘整个事物。