streaming AssetBundle via server/webpage

Hi all, I am doing the AssetBundle tutorial with Unity Pro 3.0. There are few issues and problems that I have and I need them solved and answered, hopefully someone can help me with this.

  1. When I download this sample software and executed it in Unity Pro, I realize the assetbundles are not present in any possible exported resource folder or somewhere it should store it. I manually exported explosives.unity3d lerpz.unity3d and then manually drop and drop it to the proper detected folder. I realize we cannot include scenes for exportation so I could not export the AdditiveScene out, is there a proper way of doing so.

  2. I am attempting to change the script such that the .unity3d files are streamed from a server I uploaded each .unity3d file to (using Filezilla), and realize I can’t even open the download link in Internet Explorer, let alot from the application, is there some form of server restriction I have to deal with or there’s a way to code it around. Because I realize zipping the .unity3d makes it downloadable, but is it even possible to unzip it in the application.

  3. I am actually into researching on how downloadable content may be both possible for games AND applications(e.g. Ebooks), and there seems to be restrictions on streaming script assetbundles even though I can export it. As well as realizing that each asset creates one .unity3d file. This can be turn out to be huge problem for a program downloading alot of new assets via asset bundles.

  4. Finally, is there a way to stream and save asset bundles permanently and if you can specify where the saved folder is at. For example, a game with a dlc where player should only download the dlc once and play it forever.

Sorry, I am a novice, did searched alot of relevant resources via Unity Support but to no avail, and hopefully someone can answer my queries.

Thanks in advance,
Research Dolphin =).

  1. Wrong. you can, there is the possibility to build scenes for external loading through a pro only feature :slight_smile:
    .unity3d normally are webplayer files though (thats the extension applied to them) so you might want to consider using .assetbundle for asset bundles just to cleanly seperate the two

  2. They are always streamed from a webserver, you can’t open them from anywhere else unless its a standalone windows / osx player. the webplayer can not access the system for example.
    The only requirement is that the place is reachable through WWW so you can request it. And don’t zip the file or it becomes useless (also it won’t become smaller as assetbundles are lzma compressed thats worlds stronger than zip)

  3. There is no restriction on streaming scripts. its plain simply not possible. code must be in the player you build (ie the game / application) or its not present unless you want to go through reflection etc which again makes it impossible to ever port your solution to iOS

  4. with a standalone yes. with the webplayer you must license the asset cache addon license from UT per project ontop of your unity pro licenses for the team. this addon license is significantly more expensive than the pro licenses.
    if you have a standalone player you can just use System.IO.File.WriteAllBytes and write the bytes you get from the www object .bytes :slight_smile: (and load it again through usage of WWW and the file:// protocol)

what you are looking for btw is not unity support but reading basics of .NET on MSDN or go-mono as file system stuff etc is .net functionality, nothing unity specific

Thanks alot, this confirms many queries of the tasks I am given at work. I understood there are countless posts on answering this and I greatly appreciate that you are willing to thoroughly give me information for my understanding.