Asset Bundles and Compressed Formats
Welcome to the third and final post in this series looking at reducing a Unity game’s file size. At this point you’ve exhausted the built-in options Unity provides, and you’ve split your assets up by platform as appropriate. But your game is still too large. It’s time for the nuclear option.
Moving Assets Outside Unity
When we started work on Tumblestone for mobile phones it was quickly apparent that the art needed for Xbox One didn’t make sense on an iPhone. For consoles we had many, many 1920x1080 sprites for the game’s backgrounds and story. On the phone the story takes place in a much smaller viewport. Likewise, players see much less of each background on their phones. For Tumblestone, clamping or compressing these textures didn’t yield enough savings. The time had come to maintain parallel versions of artwork for each platform.
Twisting Nobs in Unity
While developing Tumblestone for mobile devices I needed to greatly reduce the amount of disk space the game required. For iOS in particular games must be at or below 100 mb. Players must be on wifi in order to download games above 100 mb – initially, Tumblestone was over 1 gb! Over the course of development I tried a number of things to reduce the game’s file size. I’m writing this series in the hope that my experience will help you on your project.
It’s always a heady time when I’m struck with an exciting, new game idea. Oftentimes all I want to do is crack open an editor and start banging out code so I can see the idea take shape. But the euphoria of fresh code can’t sustain a project forever and eventually a niggle nags its way into focus:
If I spend my time and money on this game, will it be worthwhile?
The Game: Letter Flipping Word Game
You have a board filled with letters. Move letters left and right to spell words down or across. Keep the letters from reaching the top of the board. Words are collected in real-time as you form them, triggering chain reactions.