tweak the texture import settings on Sprites and Icons
tayl0r opened this issue · 0 comments
tayl0r commented
I would recommend tweaking the texture import settings on your Sprites.
- They are all set to "generate mip maps" (you probably do not want that)
- Format is Compressed. For 2d things, you generally want to use either 16 bits, truecolor, or alpha-8 (have to change to Advanced to see this). Your sprites seem to all be grayscale, so I would recommend alpha-8. You might have to tweak your shaders if you use alpha-8 though, since the color and alpha channels are handled differently.
- sprites like the sprite128, sprite150 and sprite150-border are way too big. they are 512x512, and are setup as 9-sliced, so you could easily make these 64x64 with no loss of quality. you only need 1 pixel in the middle sections, so your sprite would basically only contain the rounded corners, and then 1 pixel in the middle (that gets stretched). Instead of 1 pixel though, I usually use 4 just because sometimes you have problems with only 1 pixel.
- spriteMagicWhite is 512x512 - way too big
- close and closeWhite are 128x128 - too big
- you might want to use a packing tag for all these sprites, so they get bundled into the same atlas (helps with reducing draw calls). all your sprites are square powers of 2 so this won't save any memory in the GPU, but it would reduce draw calls since it can draw every sprite in 1 call.
Mobile app developers really care about sprite sizes. It impacts build size and memory consumption, both of which generally need to be as small as possible. You should try to have all your sprites the as small as possible, and using the most optimum image format.
I would not use Compressed format because it usually ends up looking like shit. And, on Android, there isn't even a standard for Compressed so a lot of devices will end up converting it back to uncompressed at runtime. If you do want to use Compressed though, go into the iOS overrides and you can set the Compressed quality to High.