微信小游戏有几个目录。
一个temp目录,目前看起来不太限制大小,游戏下载的文件都下在里面,但是游戏一关闭,就可能会清空。
一个用户目录,最大200M,游戏关闭后不会清空。cocos在里面做了个cache,超过了会清理一些。
你可以认为cache是把最近下载的资源,从临时目录复制到用户目录保存起来再使用。但是容量限制下,比较早的文件会被清理掉。你微信里面看到小游戏占用,就是这个目录的大小。
微信小游戏有几个目录。
一个temp目录,目前看起来不太限制大小,游戏下载的文件都下在里面,但是游戏一关闭,就可能会清空。
一个用户目录,最大200M,游戏关闭后不会清空。cocos在里面做了个cache,超过了会清理一些。
你可以认为cache是把最近下载的资源,从临时目录复制到用户目录保存起来再使用。但是容量限制下,比较早的文件会被清理掉。你微信里面看到小游戏占用,就是这个目录的大小。
重度,到时候测试拿个iPhone X说这个优化好,玩玩就崩溃了,哈哈哈哈哈
你可以怼测试,“现在还用iphonex的人比较穷,不是我们的目标玩家”。
我就经常这样说,用这么老的手机不可能充钱的。
我看文档介绍,正式版本最大的空间可以放到1G,但是我们游戏的资源有5个G,通过技术手段和策划协商,最低可以放到2G以内。。。不知道还有没有可能在微信上跑
只要不是一口气 在场景中堆满资源极限 ,可以有折腾的空间
听上去风险比较大。。。
市面上有没有资源比较大的重度游戏~ 我想去分析一下他们的资源加载
江南百景图?
哦~ 谢谢老哥,我去看看
话是这么说,但这么老的手机可能会一直看广告啊
大的背景图打开UI动态加载,关闭UI丢进回收池,长时间没有引用就回收,定时调用微信的清理内存
资源也可以先压缩一下,ios用astc
早就用上了~ 我们用的还是动态astc纹理格式
那就再道具格子回收之类的,玩家也不会一下就把所有的资源加载
大型的有啊, 你找那种端游或者重度手游改小游戏的, 类似天龙八部这种
谨慎使用它的提升到1G,仔细看看微信的文档
https://developers.weixin.qq.com/minigame/dev/guide/performance/diskspace.html
为让小游戏提供更好的品质体验(美术、特效、动画等),游戏可申请将本地用户可用空间提升至 1G 。为保护用户设备的可用空间,系统会对所有开通提升的游戏定期清理文件,以文件为维度按照最近使用时间从远到近进行清理。即开通后不保证文件永久存储,请开发者合理使用。
开通后不保证文件永久存储,也就是说里面文件可能被清理,导致cocos的cache基础条件被破坏了,cachelist表就不准确了。
可以的,一般 cache 200M 够用的,因为你加载资源(到内存/显存)后,文件本身可以被清理,如果被cache清理了,下次卸载后加载资源,重新下载对应的文件就可以了。
最极端情况来说,你把cache关闭了,那么每次进去,所有的资源你都重新下载文件。用户空间就不会占用了。然后取temp的文件时,加一个文件是否存在的判断。就可以了。
感谢提醒,我看一下
用远程下载临时资源,用完了就清除掉。这样可以吗?
比如用loadRemote 远程加载关卡的零散资源( .png, .json,不是bundle),过关就清除换再加载新关卡的零散资源,是不是不会像分包那样有容量限制了?