Ho intenzione di chiedere questo per un bel po 'ora. Sto creando questo gioco in cui disegno uno sfondo molto grande. Ma il problema è (ovviamente), quando inserisco più elementi nel gioco, ottengo un'eccezione OutOfMemory.Eccezione OutOfMemory: la compressione delle immagini ridurrà le dimensioni dell'heap?
Quello che ho intenzione di chiedere è, la compressione dell'immagine ridurrà l'allocazione della dimensione heap? Ad esempio, il mio sfondo PNG (3000 per 2000 in pixel) è di circa 1,5 MB. Dopo una serie di compressioni PNG (tramite software come TinyPNG e PNGGauntlet), la dimensione dello sfondo è stata drasticamente ridotta a 712 KB. L'immagine compressa qui ha ancora le stesse dimensioni dell'originale (3000 per 2000).
L'allocazione della dimensione heap per la dimensione dello sfondo originale (1,5 MB) è uguale a quella compressa (712 KB)?
Domanda molto bella. La risposta è probabilmente "sì", perché i sistemi grafici necessitano di immagini non compresse da disegnare sullo schermo, ma non ne sono sicuro. Vorrei provare a ridurre lo sfondo, diciamo, 1500 per 1000, e vedere se il consumo di memoria diminuisce di quattro volte. – dasblinkenlight
Sì, lo proverò non appena avrò finito con gli altri moduli. Non sono sicuro di come procedere, ma dopo aver eseguito le compressioni di immagine, il FPS del gioco è aumentato drasticamente. Tuttavia, non sono completamente sicuro che la dimensione dell'heap sia stata ridotta. – dabaerju