我有一个纸牌游戏,我一次创建了所有 52 张纸牌,然后一张一张地缓存它们。
我希望能够尽可能高效地多次显示同一张牌(例如黑桃 K)。目前,每当我需要显示现有卡片的多个实例时,我就会克隆现有卡片。
有没有办法克隆缓存卡,以便克隆具有相同的缓存或获取对我的卡的位图(缓存)版本的引用?
最佳答案
您可以使用card.clone()
克隆卡片,它将与原始克隆的项目共享相同的cacheCanvas
。此外,您可以使用另一个cacheCanvas作为源来创建位图:
var bmp = new createjs.Bitmap(otherItem.cacheCanvas);
您是否考虑过使用 SpriteSheetBuilder 类?在幕后创建单个 SpriteSheet,然后使用它生成 Sprite 将为您带来性能提升,因为幕后仅使用单个位图。
http://www.createjs.com/docs/easeljs/classes/SpriteSheetBuilder.html
关于javascript - 使用 createJS 获取对容器的缓存版本的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35840249/