打包:
首先需要先创建脚本编译代码:
using System.Collections;
using System.Collections.Generic;
using UnityEditor;
using System.IO;
public class bundle
{
[MenuItem("AssetsBundle/Build AssetBundles")]
static void BuildAllAssetBundles()//进行打包
{
string dir = "AssetBundles";
//判断该目录是否存在
if (Directory.Exists(dir) == false)
{
Directory.CreateDirectory(dir);
}
//参数一为打包到哪个路径,参数二压缩选项 参数三 平台的目标
BuildPipeline.BuildAssetBundles(dir, BuildAssetBundleOptions.None, BuildTarget.StandaloneWindows64);
}
}
写完代码后保存并返回unity便可以看到如下图所示多出来了一个按钮
然后选择任意资源,将资源的AssetBundle更改
更改完成后点击多出来的那个按钮,等待unity加载完成后,根据代码中自己填写的路径,便可以看到已经打包成功了
使用:
代码:
GameObject[] game;
void Start()
{
StartCoroutine(ABBaoJiaZai());
}
///
/// AB包的加载
///
private IEnumerator ABBaoJiaZai()
{
string path = "AssetBundles/tupian.ab";//AB包的位置
//异步加载
AssetBundleCreateRequest request = AssetBundle.LoadFromMemoryAsync(File.ReadAllBytes(path));
yield return request;
AssetBundle ab = request.assetBundle;
//使用里面的资源
game = ab.LoadAllAssets();
StopCoroutine(ABBaoJiaZai());
}



