2011-09-06 18 views
0

這是我的問題。空的cocos2d項目有3.38 MB(standart「Hello world」)。我通過Profile-> Allocate Kit檢查它。 現在我有一個大小爲382x512像素的.png圖像。它將被擴展到RAM(2度)的512x512。我將這個文件添加到項目中,就像這樣:cocos2d雪碧的重量奇怪的東西

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

而現在最有趣。 「mySprite.png」具有8888像素格式,即其必須佔用512×512 = 0.5×0.5 = 0.25MB×4 = 1MB(來自像素格式的4-4個字節)。我對嗎?我這麼認爲,但是當我檢查項目的重量時,我發現該項目有5,54 MB,即「mySprite」在RAM中有2 MB以上的空間。

我在做什麼錯?我該如何解決它? :/ Thx。

回答

0

我記得有人在讀這個地方。我通過cocos2d的論壇去,發現這個帖子: http://www.cocos2d-iphone.org/forum/topic/4510

您應該檢查卡爾的解釋,這似乎是有道理的我:

它佔用8MB,因爲裝入程序使用OS加載UIImage,然後將這些像素以GL友好的32位格式複製到新分配的緩衝區中。這意味着您的1024x1024圖像需要8MB才能加載,但是一旦UIImage被釋放,其中的4MB應該被釋放...