1
\$\begingroup\$

We've been working on this mobile game for about a year now, and we're very close to the end but we've started to face many problems.

Mainly, our game crashes and has a huge size for a 2D game (on iOS only).

Those of you who are a Unity developer please take a look at this editor log (the other please keep reading cause this is not a Unity specific thread)

Textures 783.1 mb 95.0%

Meshes 0.0 kb 0.0%

Animations 342.2 kb 0.0%

Sounds 24.1 mb 2.9%

Shaders 22.7 kb 0.0%

Other Assets 2.3 mb 0.3%

Levels 8.6 mb 1.0%

Scripts 1.1 mb 0.1%

Included DLLs 3.9 mb 0.5%

File headers 622.9 kb 0.1%

Complete size 824.2 mb 100.0%

As you saw there the Textures size in near 800mb, which is HUGE for a 2D mobile game.

And the main reason we're having this is because the artists made all the game assets to look great for a 1080p screen, so whenever they are working on something, the start a 1920x1080 canvas and start drawing.

This is my first experience working with artists on a game like this so I really didn't think it's going to be a problem, specially that the first builds where around 30mb on Android and ~80mb on iOS which was ok.

But the game kept getting bigger and bigger, specially on iOS (it's still ~100mb on Android) but also these huge texture size is causing some crashing in some levels on iOS too, so we really need to fix this.

Obviously the must-do solution is reducing the Texture size, and I've been trying to do that in Unity by changing the texture import setting and we kinda reached a bottleneck of a certain quality that we can't go under and the game is still HUGE, so we're thinking about re-drawing some of the graphics assets, for that I need to know what we should keep in mind when making this, that 1080p canvas approach was a bad idea right? What should I tell the artists to do instead?

Any other advice is more than welcomed.

\$\endgroup\$
  • 1
    \$\begingroup\$ This will likely become closed because it's a discussion topic more than something that can be proven, but still, I think 800mb is too big even on PC for a 2D game. Are you sure your builds have absolutely nothing irrelevant in them? Unity usually packs every single asset into the game and never leaves anything out. You can try something like asset hunter for that: assetstore.unity3d.com/en/#!/content/22983 . But if you have a good file structure, you shouldn't need that. Anyway, Unity's compression is not good, I'd suggest compressing before importing (not sure how). \$\endgroup\$ – John Hamilton Dec 4 '16 at 4:17
  • \$\begingroup\$ "unity usually pack every single asset into the game and never leaves anything out." WHAT ?!? NO WAY ! i really looked into that and people say unity don't include unused assets into the final build, are you sure of this ? cause i have TONS of them \$\endgroup\$ – alaslipknot Dec 4 '16 at 4:39
  • 1
    \$\begingroup\$ I'm pretty sure (haven't done extensive testing). Just try cutting and pasting a part of the assets (to somewhere other than the assets folder, obviously) to see if that results in a size reduction. If it doesn't, you can just put them back anyway. \$\endgroup\$ – John Hamilton Dec 4 '16 at 4:43
  • \$\begingroup\$ that wont be necessary, am looking at the important part of the editor log and am already seeing some VERY surprising results, see that big 63mb png file ? i didn't knew it even existed, we are using a tool called GAF that basically let unity play .SWF files, for some reason, importing the "Transformation" animation resulted in a creating a 4074x4074 uncompressed texture! and the whole reason we used Gaf is because when we were using the 2d unity animator, the game kept crashing on iPhone for large animations so we thought this will make things smaller. \$\endgroup\$ – alaslipknot Dec 4 '16 at 5:15
  • 1
    \$\begingroup\$ Well, I'm glad you found some stuff which can determine your problem. If you can solve the underlying issue, post your answer here and choose it as the answer, it will help the community ;) \$\endgroup\$ – John Hamilton Dec 4 '16 at 5:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.