注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

穷到掉渣的超级奶爸阿赵

阿赵的博客

 
 
 

日志

 
 

关于AssetBundle拆分力度的探讨  

2016-02-05 17:14:27|  分类: Unity教程 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
之前曾经写过一篇介绍AssetBundle拆分力度何为合理的文章。不过里面提供的方法思路,被某位网友指出了是有漏洞的。
之前的方法是这样的:
1、首先获取指定文件夹下面的所有资源(这些资源是固定要打AssetBundle的)的依赖,然后做计数器。
2、把统计出来依赖大于2的资源提取出来(我们暂时称为待打包资源)做二次检查。第二次检查的时候,只获取待打包资源的第一层依赖,
3、把统计出来依赖大于2的资源提取出来,看看是否属于制定文件夹下面的内容,如果不是,就作为拆分的资源,需要打AssetBundle。
这样做的缺陷是如果刚好有些资源虽然在待打包资源里面的依赖数不大于2,甚至等于0,但实际上它还是会被两个以上的非待打包资源引用着。这样虽然不会出现拆得过散,但却会造成了冗余。

后来经过思考,改进了一下。变成流程是这样的:
1、获取指定文件夹下面所有资源(这些资源是固定要打AssetBundle的)的完整依赖,不需要做计数器,全部存入列表作为待选资源。
2、将指定文件夹内的所有资源路径加上刚才的待选资源,作为一个整体的判断列表。注意检查这个列表里面必须没有重复的资源路径,注意两种斜杠“\\”和"/"需要做一个统一转换的处理。
3、将上面得到的判断列表遍历一次,每个资源都获取他们的第一层依赖,然后做计数器
4、将计数器大于2的资源提取出来,看看是否属于制定文件夹下面的内容,如果不是,作为拆分的资源,需要打AssetBundle

经过多次反复的尝试,这次修改的方法应该是比较完善了,各位如果感兴趣可以试试,看还有没有什么漏考虑到的情况。

  评论这张
 
阅读(1788)| 评论(8)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016