Unity文件下载的内存优化

作者: Pieces_Jing | 来源:发表于2018-06-20 19:44 被阅读12次

引言

通常我们在Unity中下载一个网络上的资源到本地时,简单的方式是使用WWW类进行下载,然后将Byte[]写到本地。但是这种方式有个隐藏问题就是,网络上的资源会被预先全部加载到内存中,才能被写到本地。于是我查了下资料,然后用WebClient类简单封装了一个使用方法类似WWW的下载类。在下载资源时可以有效地避免内存的增长,尤其是下载很大的资源包时特别有用。

方案优势

  • 在下载资源时可以有效地避免内存的增长,尤其是下载Size很大(上百兆)的资源包时特别有用。

文章DEMO对应的IDE版本

  • Unity 5.6.5 测试通过,理论上都兼容

总结

  • 建议将网络加载的资源分为两类,不需要存到本地的资源直接用WWW加载到内存中使用,需要存到本地的资源使用封装的Downloader类进行下载。
  • 如果有特殊需要,可以修改Downloader类实现断点续传功能。

DEMO地址

相关文章

  • Unity文件下载的内存优化

    引言 通常我们在Unity中下载一个网络上的资源到本地时,简单的方式是使用WWW类进行下载,然后将Byte[]写到...

  • 2. 托管内存

    对于Unity内存管理而言,需要理解托管堆。对于如何分析托管内存和如何优化内存,可以参见Unity优化中的理解托管...

  • [Unity优化] Unity内存优化

    一、内存使用 Q1:在Unity的内存管理机制中, Reserved Total 和 Used Total之间的关...

  • 内存优化

    内存的优化:Unity中的内存种类实际上Unity游戏使用的内存一共有三种:程序代码、托管堆(Managed He...

  • unity内存优化

    常见判断准则内存阈值关注---ManagedHeap.UsedSize建议不超过20M内存阈值关注---总体Mon...

  • unity内存优化

    一代码优化 1.foreach 不能频繁调用,容易触及堆上线,导致GC过早触发,出现卡顿现象,会产生GC Allo...

  • unity内存优化

    unity的内存优化主要集中在一下三块: www加载资源管理 美术资源管理 UI功能管理 www加载资源管理 原文...

  • Unity 3D 游戏优化

    Unity优化是一个很大的概念,我们优化时需要注意三个方面:CPU优化,GPU优化,内存优化. CPU方面的优化:...

  • Http相关

    *Unity中Http访问和下载*Unity中Http的优化*HTTP断点续传相关概念**简书:Unity发送HT...

  • Unity3D内存释放 (转)

    最近网友通过网站搜索Unity3D在手机及其他平台下占用内存太大. 这里写下关于unity3d对于内存的管理与优化...

网友评论

    本文标题:Unity文件下载的内存优化

    本文链接:https://www.haomeiwen.com/subject/qmaxyftx.html