Unity 安卓手机 AssetBundle.LoadFromFile() SerializedFile占用大量内存
2017-02-22 14:59
531 查看
原文地址:http://blog.csdn.net/huutu/article/details/53504039
这几天都在安卓手机上测试游戏,通过Profiler
查看Memory 发现,SerializedFile 占用了大部分内存,游戏内存占用一度达到400M,导致频繁崩溃。
初步理解为,SerializedFile 里面存储的是Assetbundle 硬盘镜像文件,于是把所有加载的 Assetbundle 都列出来,然后统计大小。
然而发现加载的Assetbundle 文件总数324 个,占用磁盘空间 73MB,与SerializedFile 占用内存相差很大。
于是在Google中查找相关资料,在Unity 论坛中发现 Unity 工程师如下解释:
帖子地址:
[html] view
plain copy
https://community.unity.com/t5/Android/Unity-5-2-1f1-SerializedFile-memory/m-p/2343988#M10133
意思就是说,每个Assetbundle文件在Load的时候都会产生 0.5MB的内存,直到Unload掉。
我的游戏是一直不Unload的,所以SerializedFile 占用内存特别多。
转自http://blog.csdn.NET/huutu http://www.thisisgame.com.cn
那么现在要做的就是减少AssetBundle文件,有两个点:
1、打Bundle的时候,只有一个引用的就不设置AssetbundleName。减少Assetbundle文件数量。
2、加载完之后,人工判断哪些资源可以立即释放。
这几天都在安卓手机上测试游戏,通过Profiler
查看Memory 发现,SerializedFile 占用了大部分内存,游戏内存占用一度达到400M,导致频繁崩溃。
初步理解为,SerializedFile 里面存储的是Assetbundle 硬盘镜像文件,于是把所有加载的 Assetbundle 都列出来,然后统计大小。
然而发现加载的Assetbundle 文件总数324 个,占用磁盘空间 73MB,与SerializedFile 占用内存相差很大。
于是在Google中查找相关资料,在Unity 论坛中发现 Unity 工程师如下解释:
帖子地址:
[html] view
plain copy
https://community.unity.com/t5/Android/Unity-5-2-1f1-SerializedFile-memory/m-p/2343988#M10133
意思就是说,每个Assetbundle文件在Load的时候都会产生 0.5MB的内存,直到Unload掉。
我的游戏是一直不Unload的,所以SerializedFile 占用内存特别多。
转自http://blog.csdn.NET/huutu http://www.thisisgame.com.cn
那么现在要做的就是减少AssetBundle文件,有两个点:
1、打Bundle的时候,只有一个引用的就不设置AssetbundleName。减少Assetbundle文件数量。
2、加载完之后,人工判断哪些资源可以立即释放。
相关文章推荐
- Unity 安卓手机 AssetBundle.LoadFromFile() SerializedFile占用大量内存
- Unity Assetbundle的加载方式的效率和内存占用
- Unity Assetbundle的加载方式的效率和内存占用
- unity assetBundle内存占用情况的总结
- AssetBundle.CreateFromFile的有趣事情
- 【U3D】AssetBundle.CreateFromFile()加载资源失败
- Unity3D 优化 5 (AssetBundle的SerializedFile内存)
- Assetbundle内存占用测试
- AssetBundle.CreateFromFile的有趣事情
- AssetBundle.CreateFromFile使用时注意事项
- unity 安卓 如何读取 Application.persistentDataPath这个路径下面的assetbundle文件
- Java代码实现获取安卓手机指定App的流量、CPU和内存占用信息
- Unity3d 同步加载 Assetbundle 方法 AssetBundle.CreateFromFile
- TextMesh Pro SpriteAsset Load From Assetbundle
- Unity中 动态加载 Resources.Load()和Asset Bundle 的区别
- 【Unity3d】关于AssetBundle.CreateFromFile()方法加载资源失败解决方法
- Unity3d 4.6版本时assetbundle.createFromFile的问题
- Unity3d 同步加载 Assetbundle 方法 AssetBundle.CreateFromFile
- Assetbundle内存占用测试
- image asset:Could not load the "scene" image referenced from a nib in the bundle with identifier