博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[Unity热更新]02.依赖关系
阅读量:4345 次
发布时间:2019-06-07

本文共 1248 字,大约阅读时间需要 4 分钟。

参考链接:

https://www.jianshu.com/p/7e7b34b24296

 

1.manifest

打包后,会生成一个与AssetBundle对应的.manifest文件,以及与输出目录对应的.manifest文件

 

2.测试

a.新建一个Cube和Sphere,依赖同一个材质,然后打包(不打材质)。如下,因为不打材质,导致Cube和Sphere的AB包内都有一份相同的材质,.manifest文件也没啥变化

 

b.如下,打了材质后,Cube和Sphere的AB包会依赖材质的AB包,自身的包体积也会减少,.manifest文件会显示出依赖关系

 

3.加载

加载原则为,先加载AB包的依赖包,再加载AB包。AB包的依赖包可以通过.manifest文件获取

如果不加载依赖包会出现这种情况:

 

代码如下:

1 using UnityEngine; 2  3 public class TestAB : MonoBehaviour 4 { 5     void Start() 6     { 7         AssetBundle ab = AssetBundle.LoadFromFile("Assets/AB/AB"); 8         AssetBundleManifest manifest = ab.LoadAsset
("AssetBundleManifest"); 9 10 string[] dependencies = manifest.GetAllDependencies("cube");11 for (int i = 0; i < dependencies.Length; i++)12 {13 AssetBundle.LoadFromFile("Assets/AB/" + dependencies[i]);14 }15 16 AssetBundle cubeAB = AssetBundle.LoadFromFile("Assets/AB/cube");17 if (cubeAB != null)18 {19 GameObject go = Instantiate(cubeAB.LoadAsset
("cube"));20 go.transform.localScale = Vector3.one * 2;21 }22 }23 }

 

效果:

posted on
2019-05-25 16:47  阅读(
...) 评论(
...) 收藏

转载于:https://www.cnblogs.com/lyh916/p/10922938.html

你可能感兴趣的文章
TCP状态转换图解析
查看>>
.net web 开发遇到的一些问题总结
查看>>
Spring整合Mybatis原理简单分析
查看>>
阻塞&&非阻塞
查看>>
centos7,yum安装工具报错
查看>>
[BZOJ 1003] 物流运输
查看>>
Android Studio 代码无提示,无颜色区分
查看>>
移动端返回刷新
查看>>
SAML
查看>>
What is event bubbling and capturing?
查看>>
File and Folder Permissions
查看>>
DBContext
查看>>
firewall 允许app访问网络
查看>>
window.addEventListener介绍说明
查看>>
JSON字符串转JavaBean,net.sf.ezmorph.bean.MorphDynaBean cannot be cast to ……
查看>>
Java小知识----POI事件模式读取Excel 2007
查看>>
Linux常见英文报错中文翻译
查看>>
17. Letter Combinations of a Phone Number
查看>>
高铁运营数据积累
查看>>
collections模块方法详解
查看>>