【问题标题】:cocos2d something strange with sprite weightcocos2d 精灵重量有些奇怪
【发布时间】:2012-01-23 19:16:05
【问题描述】:

这是我的问题。空 cocos2d 项目的重量为 3.38 MB(标准“Hello world”)。我通过 Profile->Allocate Kit 检查它。 现在我有一个大小为 382x512 像素的 .png 图像。它将在 RAM 中扩展到 512x512(2 度)。我像这样将此文件添加到项目中:

CCSprite* sprite = [CCSprite spriteWithFile:@"mySprite.png"];

现在是最有趣的。 “mySprite.png”具有 8888 像素格式,即它必须占用 512x512 = 0.5*0.5 = 0.25 MB * 4 = 1 MB(像素格式的 4 - 4 个字节)。我对吗?我是这么认为的,但是当我检查项目的重量时,我发现该项目有 5,54 MB,即“mySprite”在 RAM 中的 oppupied > 2 MB。

我做错了什么?我该如何解决? :/ 谢谢。

【问题讨论】:

    标签: cocos2d-iphone textures ccsprite


    【解决方案1】:

    我记得在某处读到过这方面的内容。我浏览了 cocos2d 论坛,发现了这个帖子: http://www.cocos2d-iphone.org/forum/topic/4510

    您应该查看 Karl 的解释,这对我来说似乎很有意义:

    它占用了 8MB,因为加载程序例程使用操作系统加载 UIImage,然后将像素以 GL 友好的 32 位格式复制到新分配的缓冲区。这意味着您的 1024x1024 图像将需要 8MB 来加载,但是一旦 UIImage 被释放,其中的 4MB 应该被释放......

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-24
      • 2010-12-18
      • 1970-01-01
      相关资源
      最近更新 更多