Unity AssetBundle 游戏资源分类及关系
2024-08-25 23:39:24
--刚刚做完一个xlua的的热更项目,对AssetBundle资源分类总结一下。纯理论,闲谈知识,要是有建议,尽管提 ,不掺杂代码。
--这里说说,AB是如何打包,如果下载,如何加载。
1.关键词理解:有依赖(公共),无依赖,常驻(使用频率),非常驻。
所谓依赖,无依赖。
画红圈的就是有依赖关系的,但是Unity中,如何知道有哪些资源有依赖关系呐。
一般,我们每次Build后会自动生成AndroidManifest.xml,这里面就详细叙述了资源之间的
依赖关系。
2.下载资源?
下载资源的话,我这边是通过Version文件对比获取所需下载资源,没什么好讲的。
一张图,解释:
3.如何加载?
最主要的就是这边了。
I.加载的优先级
首先加载的是 常驻公共资源,
再加载经常反复资源,
当然如果进入战斗(某个特定模块),就加载非常驻公共资源。
其他资源是当使用时加载。
II.释放资源
常驻资源肯定是不能unload(false)的,这边释放资源,释放的是其他资源。
对于unload(false),还是unload(true) .
unload(false)适合反复使用资源,一次Load之后,再也不需要Load,且与其他资源没有"被依赖关系"。
unload(false),释放的是自身。
unload(true),释放的是自身以及自身所有的子节点。因此,unload(true),慎用。
III 缓存资源
一般常驻资源,最好缓存把AB存为需要的GameObject,例如子弹之类。
最新文章
- 【JavaWeb】Spring+SpringMVC+MyBatis+SpringSecurity+EhCache+JCaptcha 完整Web基础框架(一)
- Dynamics AX 2012 的工业物联网解决方案
- the difference between const int *, int * const, int const *
- Prim算法(一)之 C语言详解
- SpringRMI解析4-客户端实现
- POJ 1840 HASH
- c# word 转pdf 导出失败,因为此功能尚未安装
- 更改AlertView背景
- 第三章 XHTML 表单
- 函数式宏定义用do...while(0)的好处
- ADO.NET基本操作(CRUD、Procedure、Transaction)
- UNIX相关知识
- 团体程序设计天梯赛-练习集L2-005. 集合相似度
- Cocos2d-x Auto-batching 浅浅的”深入分析”
- 为什么使用Ninject?
- StringWriter/PrintWriter在Java输出异常信息中的作用
- Oracle trunc()函数的用法--来着心静禅定ing
- USACO奶牛博览会(DP)
- 基于jenkins的go语言项目自动化发布遇到的坑
- 【Android应用开发】RecycleView API 翻译 (文档翻译)
热门文章
- mydumper
- LeetCode第[11]题(Java):Container With Most Water 标签:Array
- Django-- 多数据库联用
- 错误:'dict' object is not callable
- kmalloc、vmalloc、__get_free_pages()的区别
- dump_stack 分析使用
- Solidity 中文文档 —— 第一章:Introduction to Smart Contracts
- Machine Learning - week 1
- 状压dp初探
- python内建函数isinstance基础用法