比如,游戏地图有n个,每个地图的贴图资源可能都较大,切换不同的地图则加载不同的资源,我是否应该在每次切换时都释放掉之前的资源?如果用户频繁的切换地图,是否要频繁的释放、加载资源?
有没有大佬讲解一下。
看时机运行效果,如果是大型游戏,内存也是挺紧张的,把这个当作一个优化点,如果游戏内存还好,为了体验好牺牲内存也是可以的。还有可以从贴图资源想想能不能压缩
自己做个控制加载,不用的资源先存起来,定时释放不用的资源,比如5分钟没有再用过,就释放
你自己都告诉自己答案了啊,每个地图的贴图资源可能都较大。这种资源肯定要释放的啊。其实不管文件大不大合理管理内存都会是一个好习惯,可以为以后省很多的事。当然你如果真的时间精力有限并且完全不考虑ios平台可以不去考虑做内存管理。
看到大家的建议了,首先感谢大家的回复,我会根据大家的思路找个相对优解
我们的项目地图只加载可视区域内的部分,在可视区域外的部分不加载。地图图片是动态下载的
可以用 LRU 或者 LFU 算法缓存资源
大游戏肯定是多种释放策略混合的,要根据业务场景、业务使用频次、重要程度定策略,再用LRU等辅助, 不可能像cocos的demo那种一个api搞定