从中创建 BitmapData 和 sprite 以及可能的性能差异

Creating BitmapData and a sprite from it and possible performance differences

我正在使用 Phaser-framework 制作 HTML5 游戏。

我需要创建一个只有一种颜色的 sprite,并将其 alpha 设置为低于 1,以便可以看穿它。我想到的这两种方式在性能上有什么不同吗?

选项 1:创建一个大小为 1x1 的 BitmapData,从该 BitmapData 对象创建一个 sprite,然后将 sprite 缩放到正确的大小:

var bitmapData = game.add.bitmapData(1, 1);
bitmapData.fill(0, 0, 0, 0.7);
var sprite = game.add.sprite(0, 0, bitmapData);
sprite.width = 1024;
sprite.height = 768;

选项 2:将 BitmapData 创建为将要使用的确切大小,然后从中创建 sprite:

var bitmapData = game.add.bitmapData(1024, 768);
bitmapData.fill(0, 0, 0, 0.7);
game.add.sprite(0, 0, bitmapData);

这样做的目的是用一种颜色为整个游戏区域着色,并能够看到后面是什么。

据我所知,对性能最重要的是你在屏幕上绘制的精灵的大小,无论你是如何加载或生成它的,所以这两个应该表现同样出色。