Hello everyone,
I need to load quite a few big animations (sprite sheets 1024*1024) so to save on memory I decided (as said in the best practice) to use 16-bit textures (RGBA4444 since I need transparency for fading in and out).
To do so, first I converted my sprite sheets with DamageControl using 444+4 mode
And putting the following line before loading each sprite sheet:
[Texture2D setDefaultAlphaPixelFormat:kTexture2DPixelFormat_RGBA4444];
Seeing that this did not change the memory consumption at all (from the 32-bit textures), I looked in my code and found this:
[[Director sharedDirector] setPixelFormat:kPixelFormatRGBA8888];
Which apparently sets the buffer size. So I wanted to change the value to RGBA4444.
But the possible values are only RGBA_8888 or RGB_565
I tried using RGB_565 since it is a 16 bit format (hoping that there would be no verification on the buffer content) but there was no change.
Looking on around I found that there is a bug converting 32bit texture to 16bit:
http://code.google.com/p/cocos2d-iphone/issues/detail?id=410
But I am using 16bit textures.
Is this also a bug or is there something I am doing wrong?
Thank you for any help
Jonathan
Cocos2d Version 0.8.2
Xcode Version 3.2.1
iPhoneSDK 3.1.2