Unity3d’s asset bundle system is easier than ever, but it still has a lot of rough edges. These utilities wrap the new system to help make it bulletproof for the real world of games and applications. Why spend a week figuring it all out when you could just import this in an hour?
This plugin provides an optimized, battle hardened Asset Bundle manager for loading assets, and tools to make it easier to build the bundles.
Why asset bundles?
In mobile games, those first few seconds matter. This is make or break. If you are downloading the rest of your game that couldn’t fit in the binary, you lost your player somewhere around 5 seconds in. This knocks out those “split binary” types of app loading systems that download everything up front.
Ideally you want to embed as much as you can in the binary so no download is needed. But with the plethora of devices on the market you have to pick and choose what you embed. Asset bundles allow you to choose exactly what goes in to give the best possible experience to as many users as possible.
What’s this Asset Bundle thing?
A game has two basic pieces: code and assets. Code is the stuff that tell the computer what to do with the assets. That means that assets are pretty much everything else: the pictures, sound files, and models that are unique to your game.
Those assets (pictures, sounds, etc.) each have a variety of ways they can be saved. One of the jobs of a good game is to store them in a way that is really easy for the computer to unpack and use when playing. Unity3d does this by packing them into ‘asset bundles’, which is literally just a whole bunch of assets stuffed into one file.
The thing is, because there are so many ways to save the assets, it becomes important to make sure that the assets are the best possible format for each kind of computer. iPhones use one format, desktop computers use another. Android phones have five! And you have to manually make sure that you don’t repeat an asset, which is a very easy thing to do, the way Unity3d stores the bundles.
That’s where this tool comes in - to make it easier to pack them correctly.
|What is it?||How to fit a big game into a small screen.|
|What about Unity3d’s?||The new one they just released is super complicated, and their old code was buggy.|
|What does this one do for me?||Prevents easy to make mistakes.|
|Why not write my own?||Because you want to make your game, not waste your time on bugs in your loading system.|
|What versions of Unity3d is supported?||This has been used in most versions since 5.3 all the way up to 2018. Backward compatibility was intentional.|
|What platforms are supported?||Developed and tested on Standalone, iOS and Android platforms. Expected to work on other platforms.|
Comparison to Other Tools
|Asset Bundle #9||Unity3d 5 Bundles||Unity3d Addressables|
|Multiple Download Queues||Yes||No||No|
|Limit Network Saturation||Yes||No||No|
|Removal of duplicate assets across bundles||Yes||No||No|
|Automatic Download Retries||Yes||No||No|
|Calculation of needed download size||Yes||No||No|
|Hot-swappable Bundle Sets||Yes||No||No|
|Multiple Bundle Sets at the same time||Yes||No||No|