第一步创建一个Editor文件夹
第二步编写BuildAb(这个脚本一点要放在Editor中因为这是一个编辑器脚本,放在其他地方可能会报错)
using System.IO;
using UnityEditor;
using UnityEngine;
public class BuildAb : MonoBehaviour
{
// 在Unity编辑器的菜单栏中添加一个菜单项
[MenuItem("Assets/Build AssetBundles")]
static void BuildAllAssetBundles()
{
// 定义Ab包的输出目录
string assetBundleDirectory = "Assets/AssetBundles";
// 检查目录是否存在,如果不存在则创建该目录
if (!Directory.Exists(assetBundleDirectory))
{
Directory.CreateDirectory(assetBundleDirectory);
}
// 使用BuildPipeline构建AssetBundles
// 参数1:输出目录
// 参数2:构建选项,这里使用默认选项(None)
// 参数3:目标平台,这里选择Windows平台
BuildPipeline.BuildAssetBundles(assetBundleDirectory, BuildAssetBundleOptions.None, BuildTarget.StandaloneWindows);
}
}

把脚本编译完成后就能在菜单中看到我们刚刚添加的选项了

第三步创建一个资源文件夹再创建一个预制体放进去

第4步给你需要打包的Ab包取名字(这里取的是abtext)

第五步打包Ab资源

打包完如果出现了这个文件夹那就说明打包成功了

第六步编写读写资源脚本ReadAbBag
using System.IO;
using UnityEngine;
public class ReadAbBag : MonoBehaviour
{
void Start()
{
string path = Path.Combine("Assets/AssetBundles", "abtext");//ab包路径
AssetBundle assetBundle = AssetBundle.LoadFromFile(path);//加载AssetBundle
//读取需要的资源
GameObject obj = Instantiate(assetBundle.LoadAsset<GameObject>("block"),gameObject.transform);//加载prefab
}
}

第七步创建一个空对象并将刚刚编写的脚本拖上去

运行游戏就能读取到刚刚打包的AB资源了


大致流程

新年第一篇文章,祝大家新年快乐 !


















![[读书日志]从零开始学习Chisel 第一篇:书籍介绍,Scala与Chisel概述,Scala安装运行(敏捷硬件开发语言Chisel与数字系统设计)](https://i-blog.csdnimg.cn/direct/1161f20bc4b84fc7a3c2cfc5c61427c2.jpeg)
