5313人加入学习
(36人评价)
Unity商业游戏底层资源加载框架(Unity2018.1)

更新完成,更新时间2018-12-26

价格 ¥ 350.00
该课程属于 Unity - A计划(永久有效期) 请加入后再学习

测试异步加载

测试卸载音频,包含完全卸载和非完全卸载。

 

完全卸载包含从编辑器下加载资源的完全卸载和ab 包加载资源的完全卸载。 

 

Resource.unloadunusedresource,用于编辑器下卸载没有引用到的资源。

编辑器下退出游戏时需调用Resource.unloadunusedresource

 

[展开全文]

异步循环加载采用高中低轮流加载。

等待一帧是为了防止卡死。

sprite不可以强转为obj. 

[展开全文]

连续加载时间大于20万微秒后 等待一帧在加载下一个资源并更新开始时间 。

[展开全文]

resourcemanager在while中根据优先级加载异步资源。  

[展开全文]

设计异步加载类和回调类。 

[展开全文]

普通资源异步加载的对象需要缓存,加载完成需要回调。  

[展开全文]

异步加载分为3个优先级,用3个列表缓存。  

[展开全文]

测试资源从编辑器加载和从ab包加载

测试音频资源的卸载,分为回收和不回收两种情况。不回收的情况需要将obj对应的ab卸载,obj 可以不用置空。

[展开全文]

ResourceManager从ResourceItem对象加载出资源后,需要重新缓存ResourceItem对象

[展开全文]

资源同步加载:1.先从缓存获取;2.没有的话从编辑器或ab获取;3.如果从ab获取或从编辑器获取失败,调用AssetBundleManager.LoadResourceAssetBundle方法以获取ResourceItem。

[展开全文]

ResourceItem存储ab包,加载的资源对象,引用计数等。

将ResourceItem存储在双向链表,缓存引用计数为0的资源,由ResourceManager管理。

 

AssetDic缓存正在使用中的资源字典。

[展开全文]

继续完善CMaplist ,提供清空链表,查找元素,刷新元素的方法。

[展开全文]

创建CMapList类,管理一个双向链表对象,方便插入,删除,获取某个元素T。

[展开全文]

实现删除某个节点的方法

实现移动某个节点到头部的方法

[展开全文]

分别实现添加一个节点到头部或尾部的方法

[展开全文]

双向链表的数据结构实现

 

[展开全文]

卸载资源先卸载它的依赖包 再卸载自身包

卸载包先减少计数 若计数小于0 则真正卸载包 并从类对象池回收 从字典删除

[展开全文]

加载单个ab包并用字典存储起来。加载时先从字典找,没有的话先从类对象池取,再为类对象初始化。

 

[展开全文]

加载单个资源对应的ab包和依赖包

设计数据结构存储ab包 存储于类对象池

 

[展开全文]

授课教师

课程特色

下载资料(4)
视频(205)