• This repository has been archived on 13/Dec/2021
  • Stars
    star
    582
  • Rank 76,351 (Top 2 %)
  • Language
    C#
  • Created almost 9 years ago
  • Updated about 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Unity3D AssetBundle 打包与管理系统

特点

  • 指定要打包的文件,程序会自动分析依赖、拆分打包粒度到最优方式打包
  • 缓存上次的打包信息,下次打包会增量打包
  • 自动管理卸载不用的AB
  • 可扩展,自定义打包和加载路径

如何运行

  1. 通过ABSystem/Builder Panel打开配置界面
  2. 在配置界面中更改打包配置
  3. 点击Build执行打包
  4. 增加宏 AB_MODE
  5. 运行测试

如何使用

void Start()
{
	AssetBundleManager manager = AssetBundleManager.Instance;
	manager.Init(() =>
    {
        LoadObjects();
    });
}

void LoadObjects()
{
    manager.Load("Assets.Prefabs.Sphere.prefab", (a) =>
    {
        GameObject go = a.Instantiate(); //自动管理:当go被Destroy时,AB会被释放回收
    });

    manager.Load("Assets.my_txture.png", (a) =>
    {
    	// a.Retain();	//强制引用计数加一
    	// a.Release();	//引用计数减一
    	Texture tex = a.Require(this); //自动管理:当this被Destroy时,AB会被释放回收
    });
}