//Create a folder (right click in the Assets folder and go to Create>Folder), and name it "Editor" if it doesn't already exist
//Place this script in the Editor folder
//This script creates a new Menu named "Build Asset" and new options for different Build Asset Bundle Options. Click these menu items to build an AssetBundle.
using UnityEngine;
using UnityEditor;
namespace BuildDocExamples
{
public class BuildAssetBundleOptions_Examples
{
//Creates a new menu (Build Asset Bundles) and item (Normal) in the Editor
[MenuItem("BuildDocExamples/Build Asset Bundles/Normal")]
static void BuildABsNone()
{
//Build AssetBundles with no special options
//They will be written in the custom folder ("MyAssetBuilds") which needs to exist prior to this call.
BuildPipeline.BuildAssetBundles("Assets/MyAssetBuilds", BuildAssetBundleOptions.None, BuildTarget.StandaloneOSX);
}
//Creates a new item (Append Hash) in the new Build Asset Bundles menu
[MenuItem("BuildDocExamples/Build Asset Bundles/Append Hash")]
static void BuildABsAppend()
{
//Build the AssetBundles in this mode
BuildPipeline.BuildAssetBundles("Assets/MyAssetBuilds", BuildAssetBundleOptions.AppendHashToAssetBundleName, BuildTarget.StandaloneOSX);
}
//Creates a new item (Strict Mode) in the new Build Asset Bundles menu
[MenuItem("BuildDocExamples/Build Asset Bundles/Strict Mode")]
static void BuildABsStrict()
{
//Build the AssetBundles in strict mode (build fails if any errors are detected)
BuildPipeline.BuildAssetBundles("Assets/MyAssetBuilds", BuildAssetBundleOptions.StrictMode, BuildTarget.StandaloneOSX);
}
//Creates a new item (Ignore Type Tree Changes) in the new Build Asset Bundles menu
[MenuItem("BuildDocExamples/Build Asset Bundles/Ignore Type Tree Changes")]
static void BuildABsIgnoreTypeTreeChanges()
{
//Build the AssetBundles in ignore type tree changes build mode
BuildPipeline.BuildAssetBundles("Assets/MyAssetBuilds", BuildAssetBundleOptions.IgnoreTypeTreeChanges, BuildTarget.StandaloneOSX);
}
//Creates a new item (Dry Run Build) in the new Build Asset Bundles menu
[MenuItem("BuildDocExamples/Build Asset Bundles/Dry Run Build")]
static void BuildABsDry()
{
//Build the AssetBundles in dry run build mode
BuildPipeline.BuildAssetBundles("Assets/MyAssetBuilds", BuildAssetBundleOptions.DryRunBuild, BuildTarget.StandaloneOSX);
}
}
}