本篇文章是介绍Unity如何AssetBundle打包,最好的介绍其实就是官方手册。https://docs.unity3d.com/Manual/AssetBundles-Workflow.html
我这里稍微介绍下怎么实现。
- 创建一个Editor文件夹,
- 在Editor文件夹下创建一个脚本不需要继承MonoBehaviour,导入using UnityEditor;和using System.IO;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEditor;
using System.IO;
public class CreateAssetBundles {
[MenuItem("Assets/Build AssetBundles")]
static void BuildAllAssetBundles()
{
string assetBundleDirectory = "Assets/AssetBundles";
if (!Directory.Exists(assetBundleDirectory))
{
Directory.CreateDirectory(assetBundleDirectory);
}
BuildPipeline.BuildAssetBundles(assetBundleDirectory, BuildAssetBundleOptions.None, BuildTarget.StandaloneWindows);
}
}
上述代码执行完后在Asset菜单栏下会有一个Build AssetBundles下拉选项,点击将会在Project面板创建一个AssetBundles文件,里面就会出现打包好的内容。
需要注意的就是:需要打包的文件必须提供包名后缀。如图所示需要将Cube打包,必须为其在添加相应的包名后缀。(小写)
这里就会出现一个问题,如果需要打包的文件很多,那么手动添加似乎不那么明智。在下篇文章就会介绍到如何通过代码自动添加包名后缀。