HTML画布的'source-over'和'destination-over' globalCompositeOperation之间的性能差异
Posted
技术标签:
【中文标题】HTML画布的\'source-over\'和\'destination-over\' globalCompositeOperation之间的性能差异【英文标题】:Performance difference between 'source-over' and 'destination-over' globalCompositeOperation for HTML canvasHTML画布的'source-over'和'destination-over' globalCompositeOperation之间的性能差异 【发布时间】:2015-10-06 18:19:08 【问题描述】:查看了用于在 2D 画布上绘图的各种 globalCompositeOperation options,我突然想到 destination-over
与默认的 source-over
基本相同,但元素是反向绘制的。
我想知道是否有人知道在画布计算合成并绘制像素时这两个操作之间是否存在性能差异。
【问题讨论】:
您是否尝试过跨各种浏览器进行基准测试:在 jsperf.com 中创建一个测试并将链接粘贴给您的朋友 JSPerf 仍然失败!我可能会自己尝试这两种方法并进行眼球测试。我会尽快发布我的结果。 Aaaaw 废话......这是意料之中的,因为它“太容易”使用 从我的测试用例中,我无法用肉眼观察到任何显着的性能差异。如果有人好奇,在我的测试中,我在 iPad 上将每帧约 5 个 1024x768 PNG 图像合成到 1024x768 画布上,内存中总共有约 50 个相似的图像纹理。两种方法的表现同样不稳定!减少内存中的总图像元素数量可以提高帧速率。 【参考方案1】:如果有人感兴趣,我确实设置了一个 jsPerf 来测试它。根据我的测试,source-over
实际上更快!
jsPerf 测试可以在这里找到:http://jsperf.com/canvas-source-over-vs-destination-over/2
【讨论】:
以上是关于HTML画布的'source-over'和'destination-over' globalCompositeOperation之间的性能差异的主要内容,如果未能解决你的问题,请参考以下文章