unity打包AssetBundle的优化点

1.打包压缩:LZ4
BuildAssetBundleOptions.ChunkBasedCompression

2.打包后加载不用AssetBundle加载Asset的扩展名
BuildAssetBundleOptions.DisableLoadAssetByFileNameWithExtension

3.打包时禁用TypeTree!!!
(此标签的意义:用不同的unity版本发布bundle热更 才会有意义,否则请禁用!!!)
BuildAssetBundleOptions.DisableWriteTypeTree
打包时有三大好处:
第一:bundle的包体变小
第二:CPU的加载耗时减少
第三:内存的总占用减少(AB的头部减少)

4.关于Bundle的包体大小:
第一:不能过大
对于WebRequest下载:2M左右最好
对于从本地加载Bundle:5-10M最好(超过10M容易出问题)
第二:不能过小
例如:1k的Bundle,ab的头部占比太大,asset的占比非常小,bundle的意义被弱化

5.同步加载和异步加载同时用容易出问题:
主要原因是:Preload调度任务 和 Persistent容易冲突
个人理解:
(1)类似于多线程,两个线程同时请求访问一个数据,但是数据的时序性不透明,先后顺序没有保证;
(2)在一个线程访问此数据的时候会lock,确保线程的安全,那么另外一个线程就处于阻塞状态。。。。 gameOver…

用Unity Profiler调试查看AssetBundle的头部信息所占内存:
Other->SerializedFile->archive:/CAB-。。。。。。。。。
在这里插入图片描述5.在Editor模式和真机调试内存大小不同的:
在Editor模式下: 保证unity Editor的流畅性和速度效率=》加载和序列化会相对更多
在真机下: 只有用到的才会加载到

unity中国区官方直播:
https://www.bilibili.com/video/av243477332/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值