- Home /
How to achieve better compression for Pixel art.
I'm attempting to keep the file size down on my isometric pixel art game. Because it's isometric I need different art for the 8 different directions so I have gigantic sprite sheets. RGBA 32bit produces massive file sizes. Any kind of normal compression (DXT5, ASTC, BC7) produces unacceptable artifacts in the pixel art because those compression algorithms are designed for photorealistic textures. The thing is that although we're using 32bit colors, we have a relatively limited color palette. So if we could use Indexed compression where we store the colors as 8bit (or less) and then have a lookup table for the original colors, we could save a ton of space, but this isn't supported in Unity. ARGB 16bit helps, but it changes the color palette.
Is there an indexed compression type I can get access to in Unity? If not, is it possible to store the art on disk as PNG and convert it into a format for the graphics card at runtime? I'm sure there are reasons this is usually not done, but it pains me that my files go from 198Kb PNG to 6Mb when imported into Unity.
Any help is greatly appreciated!
Your answer
Follow this Question
Related Questions
[SOLVED]Why my tilemap looks bad after I put it in Unity? 1 Answer
Acceptable to Compress 2D pixel-perfect sprites with limited colours? 0 Answers
Pixel Art with blurry outline in Game Window 1 Answer
Should I change the Pixel To Unit ratio in a 2D Project? 0 Answers
No "Pixel Snap" option in 'Sprite-Lit-Default' material causing some sprites to tear 2 Answers