Hi there, I´m trying to make my GUI for an Ipod/Ipad Project however I´m a little troubled with compressions, right now I´m using the RGBA PVRTC 4 bits format but it ruins greatly the quality of my graphical elements so I was wondering what other option do I have considering the Ipod limited capacities.
Hope you can help me out
Thank you!
Are your textures already a square power of 2? If not, then Unity is not only compressing them but also scaling them to either the nearest or larger texture size which is never a good thing (well in most cases). I would first always make sure your textures meet the iOS requirements (square power of 2) before putting them into unity. If the source textures are all kindsa strange sizes (which we deal with quite a bit) then consider atlasing them all into a single texture groups base on need.
Unity added 2 compression levels for iOS and made the lowest the default, which doesn’t match the other platforms compression quality. Chose Override for iPhone in the texture importer and set the Compression Quality to Best. I wish that was the default setting.
If compressed still don’t look good enough, try 16 bit. It does use more memory, but you will be OK if you are not using too many, and don’t need square, power-of-2.
We never compress UI textures. They often have fine lines and other details that don’t compress well.
There’s a few workarounds here…
-
Try 16bit, sometimes it’s better, sometimes it’s worse. It all depends on how much memory you’ve got left for this.
-
Double the resolution of your compressed images. So, if you have a 1024x1024 4bit PVRT, make it 2048x2048, after it’s scaled down, this can (in most circumstances) effectively double the quality while still being cheaper than a 32bit image.
-
Break off everything that isn’t looking good enough into a seperate 32bit atlas (keep it as small as possible). This will split your maps and thus make it 2 draw calls (i’m presuming you’re batching everything), but 2 draw calls is probably better than 8mb of images
