注意看 SpriteFrameCache::addSpriteFramesWithDictionary()的实现
void SpriteFrameCache::addSpriteFramesWithDictionary(ValueMap& dictionary, Texture2D* texture)
{
...
auto textureFileName = Director::getInstance()->getTextureCache()->getTextureFilePath(texture);
auto image = new Image();
image->initWithImageFile(textureFileName);
...
}
使用SpriteFrameCache创建精灵帧缓存的时候
即使使用了 TextureCache::addImage 或 TextureCache::addImageAsync实现预加载了纹理
局部变量image的image->initWithImageFile(textureFileName);仍然要重新读取纹理数据, 这样效率会不会太低了?
这样的话,采用合图的纹理文件,岂不是都要读取2次
这一块是不是应该优化一下呢