为什么由于缺乏内存而下载和解开包装结果崩溃后,为什么将AssetBundle加载到内存中



我们刚刚完成了Unity 2D的2D游戏,但努力解决与内存有关的一些严重问题。

使用的统一版本:Unity 2017.2.2f1

我们正在使用资产捆绑和需求资源来下载平均尺寸20MB的捆绑包(纹理,精灵片,BG图像和场景(。

我们已成功地将我们的App Store大小限制在90MB。在Xcode中进行了分析,而构建的初始内存为180 MB。但是,当我们通过按需下载任何级别(Asset Bundle(时,问题现在开始资源。内存使用率从180MB跳至568MB。

1.为什么统一下载和加载20MB?

后,要消耗388MB的内存。

2.为什么我们每次加载新场景时,Unity在卸载场景后都保留一些内存,即没有清除分配的块?

3. IS RGBA压缩PVRTC 4位在iOS设备的Unity上工作?

5.是否有第三方SDK来压缩统一的2D纹理和GUI图形?

请帮助我,以便我可以将项目交付给客户其他明智,我的工作有风险:(

预先感谢。

  1. 检查您的资产捆绑压缩以及如何加载资产捆绑包。压缩资产捆绑包被完全解压缩在内存中,因此建议使用未压缩或基于Chunck的压缩来避免记忆尖峰。
  2. Unity使用托管内存加载和卸载事物可能会导致某些内存泄漏,因为GC几乎控制了所有内容。
  3. PVRTC在所有iOS设备上都可以使用。
  4. 因为您是针对iOS pvrtextool的目标

最新更新