0

我有一些加密的图像。它们很重,所以我想通过将它们添加到 CCTextureCache 来预加载它们。但是 CCTextureCache 不接受 CCTexture2D 作为参数。我该怎么办?

CCTexture2D *img = [[[CCTexture2D alloc] initWithImage:[UIImage imageWithContentsOfEncryptedFile:path]] autorelease];

        [[CCTextureCache sharedTextureCache] addImage:img]; // not accepted!!
4

1 回答 1

1

两种选择:

  • 添加一个方法来缓存 CCTexture2D* 带有键的对象(唯一字符串)
  • 将 UIImage 保存到磁盘(在 Application Support 目录中),然后使用 cocos2d 正常加载它

由于保存和加载过程,后一个选项将导致明显的延迟。我推荐第一种方法。您编写该函数所需的大部分代码已经在 CCTextureCache 中,我相信甚至可能只有您需要的方法只需要在接口中公开。

于 2013-03-15T00:20:43.130 回答