I had a fight with asset bundles this week. Sometimes when you're using Unity it's awesome, you can feel the progress you're making rushing past your head like you're travelling 200 miles per hour. Other times it feels like you're walking around a haunted house in pitch blackness, and every corner you turn you get punched in the face by a big fucking witch.
So the issue I was trying to quickly solve here was our build times. We used to have about a 10 minute build time. This mean that when we committed code 15 minutes later it was on Steam for osx, linux and windows. This is awesome when you're iterating quickly - you can go through bug reports and be like "try now", and they can try and see instant results. Lately, after changing to Unity5, and especially after changing to Speed Trees, our build times have been hitting an hour. Which makes iterating a lot slower, it makes our whole development a lot less dynamic.
Asset Bundles basically would mean putting the majority of content in these big bundle files. In theory that means that we wouldn't include content with the 7 different builds we do, which would mean they would compile in less than a minute each. We would also be able to put out 1.3gb of textures in its own bundle, which we wouldn't have to ship with the server. Plus we want to enable people to create their own maps etc, and asset bundles are the way to do this in Unity.. so it's work that would need to be done anyway.
But after a day of work that didn't exactly work out. It seems that the asset bundles between opengl and directx are incompatible, and between 64bit and 32bit are incompatible. Which reduces the usefulness of them significantly.
So I ended up spending another half a day breaking our build process up in jenkins, so instead of building each platform linearly - one after the other, it
now builds them all simultaneously. This brings our build time from an hour to around 15 minutes. Which is much better.
None of this changes the game at all. I just wanted to give you guys a feel for what goes on behind the scenes, the kind of day to day stuff we have to do.