problem exporting asset bundles

Hey. i am having a little problem with the ExportResource.js script in unity 3. i select the scene file,right clicking it and clicking "select dependencies". after that i click on "build asset bundle from selection - track dependencies" in order to create a single assetbundle. now here's the problem : it does create the file,yet it seems to fail to include the scene prefab,and i am afraid that's what causing me to be unable to load that asset bundle in runtime. this is the error i am getting :

Asset bundles can not include Editor Objects (DefaultAsset): assets/bundle/gallery1.prefab.

UnityEditor.BuildPipeline:BuildAssetBundle(Object, Object[], String, BuildAssetBundleOptions) exportresource_203:ExportResource() (at Assets/Editor/exportresource_203.js:12)

and the code inside the script that exports the asset bundle :

@MenuItem("Assets/Build AssetBundle From Selection - Track dependencies")

static function ExportResource () { // Bring up save panel var path = EditorUtility.SaveFilePanel ("Save Resource", "", "New Resource", "unity3d"); if (path.Length != 0) { // Build the resource file from the active selection. var selection = Selection.GetFiltered(typeof(Object), SelectionMode.DeepAssets);

    BuildPipeline.BuildAssetBundle(Selection.activeObject, selection, path, BuildAssetBundleOptions.CollectDependencies | BuildAssetBundleOptions.CompleteAssets);  
    Selection.objects = selection;
}

}

@MenuItem("Assets/Build AssetBundle From Selection - No dependency tracking") static function ExportResourceNoTrack () { // Bring up save panel var path = EditorUtility.SaveFilePanel ("Save Resource", "", "New Resource", "unity3d"); if (path.Length != 0) { // Build the resource file from the active selection. BuildPipeline.BuildAssetBundle(Selection.activeObject, Selection.objects, path); } }

i heard that's a bug with unity 3 about exporting asset bundles,yet i couldn't find anything about it. i'll really appreciate it if someone could atleast give me a clue on what's wrong

2 Answers

2

Hey shalom, As far as I know, you cannot bundle a scene into an asset bundle with the standard BuildPipeline.BuildAssetBundle call. You need to go with BuildPipeline.BuildPlayer with the BuildOptions.BuildAdditionalStreamedScenes flag (Unity Pro only, I'm afraid).

Cheers, Ben

Question, how did you get that "build asset bundle from selection - track dependencies" to show up on right click? do you have right-click during scene running?

and how/where was that script attached to?