Lets you manage cross-references and dependencies between different asset bundles and player builds.
@MenuItem("Assets/Auto Build Asset Bundles")
static function ExportResource () { // Enable cross-references for all following asset bundles files until
// we call PopAssetDependencies
BuildPipeline.PushAssetDependencies(); var options =
BuildAssetBundleOptions.CollectDependencies |
BuildAssetBundleOptions.CompleteAssets; // All subsequent resources share assets in this asset bundles
// It is up to you to ensure that the shared asset bundle is
// loaded prior to loading other resources
BuildPipeline.BuildAssetBundle(
AssetDatabase.LoadMainAssetAtPath("assetsartworklerpzuv.tif"),
null, "Shared.unity3d", options); // By pushing and popping around the asset bundle, this file
// will share resources but later asset bundles will not share assets in this resource
BuildPipeline.PushAssetDependencies();
BuildPipeline.BuildAssetBundle(
AssetDatabase.LoadMainAssetAtPath("AssetsArtworkLerpz.fbx"),
null, "Lerpz.unity3d", options);
BuildPipeline.PopAssetDependencies(); // By pushing and popping around the asset bundle, this file
// will share resources but later asset bundles will not share assets in this resource
BuildPipeline.PushAssetDependencies();
BuildPipeline.BuildAssetBundle(
AssetDatabase.LoadMainAssetAtPath("AssetsArtworkexplosive guitex.prefab"),
null, "explosive.unity3d", options);
BuildPipeline.PopAssetDependencies(); // By pushing and popping around the asset bundle, this file
// will share resources but later asset bundles will not share assets in this resource
BuildPipeline.PushAssetDependencies();
BuildPipeline.BuildStreamedSceneAssetBundle(
["Assets/AdditiveScene.unity"], "AdditiveScene.unity3d", BuildTarget.WebPlayer);
BuildPipeline.PopAssetDependencies();
BuildPipeline.PopAssetDependencies();
}