0

これが私の質問です。空のcocos2dプロジェクトの重みは3.38MBです(標準の「Helloworld」)。プロファイル->割り当てキットで確認します。これで、サイズが382x512ピクセルの.png画像ができました。RAM(2度)で512x512に拡張されます。このファイルを次のようにプロジェクトに追加します。

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で2MBを超えています。

私は何が間違っているのですか?そして、どうすればそれを修正できますか?:/ どうも。

4

1 に答える 1

0

これについてどこかで読んだ記憶があります。cocos2d フォーラムを調べたところ、次の投稿が見つかりました: http://www.cocos2d-iphone.org/forum/topic/4510

私にとって理にかなっていると思われるカールの説明を確認する必要があります。

ローダー ルーチンは OS を使用して UIImage をロードし、新しく割り当てられたバッファーにピクセルを GL に適した 32 ビット形式でコピーするため、8 MB を消費します。これは、1024x1024 の画像の読み込みに 8MB かかることを意味しますが、UIImage が解放されると、そのうちの 4MB を解放する必要があります...

于 2012-01-23T11:16:05.567 に答える