views:

261

answers:

0

Hi all

I am a first time poster. I have a problem that seems very common to a lot of people but I can't seem to find or decipher an answer anywhere.

The game I'm making has 3 rather large sprites on screen (230 high) x various widths. Each sprite has 3 1024x1024 character sheets where the frames of animations are taken from.

I've experimented with PVR's but at that size they are absolutely horrible so I want to keep PNG's.

From other information I believe that the device can handle 3 1024x1024 PNGs in memory without memory warnings.

My problem is I end up with 9 as if I don't use imagenamed then the time it takes to load the sheet from disk is unacceptable.

I have created a NSMutableDictionary to store the data from the png image sheets into, but here lies my problem.

How do I add uncompressed png data to the NSMutableDictionary without using imagenamed? If I add it in uncompressed (imagewithcontents of file) then there is still a massive loading time when I get the image from the cache.

I need to somehow store it uncompressed in the NSMutableDictionary - Assign it to the image of the sprite (sprites are UIImageViews) so that it doesn't get stored as it does if I use imageNamed.

Completely free the png from texture memeory if I need to change the sheet the sprite is grabbing the frames from. (not from my NSMutableDictionary cache)

thanks in advance -