我正在构建小型lib,以使自己熟悉canvas及其API。 Github上提供了工作版本:
https://github.com/hinok/wavy-canvas/tree/optimize-perf
,下图显示了动画
我上周末一直试图提高波浪帆布的性能。我将CPU使用率从50%降低到25%左右,所以这很好,但主要问题仍然存在 - 笔记本电脑中的粉丝真的非常响亮。
整个代码可以在Github上找到,所以如果有经验丰富的人可以看一下并向我展示可以改进的方向,我将不胜感激。
关键事实
我很确定 577 MB 对于那种简单的效果太过分了。
我做了一些不改变性能的实验,其中之一是:
使用
context.globalAlpha
而不是
context.fillStyle = ...
context.strokeStyle = ...