Why does Unity save graphic resources in Android apks and iOS ipas in a bitmap format(width*height*bpp)?

I want to save my resources in a small apk, but instead of 1mb for an image Unity stores 11mb for a single image.


1 Answer 1


Your source texture is stored and converted regarding the individual platform settings. These settings include resolution, compress and the like. On Android for example you can choose between RGBA16 or ETC1 textures. Those are part of the build settings.

  • \$\begingroup\$ Yes. I understand this. But other frameworks take a source texture(if it not compressed) and store it as .png into a bundle or .apk. For example, I have an atlas 1024*1024 with ui sprites, which takes only 750kb on disk. It's perfect size for storing in final build. I don't want to compress it. I know, Android will take 4mb of heap for atlas in runtime, it's ok. But Unity takes 4mb of apk/bundle size. I don't understand why. \$\endgroup\$
    – scame
    Commented Nov 28, 2014 at 11:08
  • \$\begingroup\$ @scame How do you measure what of the APK is the acutal texture? There is way more in it than just the assets. APK can also depending if you are building a FAT APK for x86 and ARM together. \$\endgroup\$
    – aggsol
    Commented Dec 2, 2014 at 7:59

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .