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文件下载的内存优化

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