赞 | 79 |
VIP | 0 |
好人卡 | 0 |
积分 | 51 |
经验 | 0 |
最后登录 | 2023-6-12 |
在线时间 | 705 小时 |
Lv4.逐梦者
- 梦石
- 0
- 星屑
- 5060
- 在线时间
- 705 小时
- 注册时间
- 2018-12-11
- 帖子
- 241
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
大家都知道MV网页版的弊病,就是老要出LOADING,每过一个图都可能弹一下,严重影响游玩体验。
因为MV的资源管理模式几乎就是用到再加载,其实就是边玩边加载图片,这样图片稍微加载慢一点就出LOADING了,玩玩就LOADING,很烦。但为什么其他网游没这个问题,因为他们在游戏启动的时候一次性把资源全都预加载上来了。
不是说其他游戏就没这个问题,只是他们都解决了,所以说。你们玩过的氪金网游,是不是或多或少会有启动加载界面?
最近我也模仿这些大型端游改写了MV的图片缓存机制,在启动时进行预加载并且花钱找UI做了加载界面。(参考:https://lisliz.xyz)虽然这样是彻底消除了网页版MV的LOADING问题。
但是来了新的问题,预加载的这些图片很占内存。
用浏览器的性能分析工具可以看到预加载的这些图片占用350MB内存,这个是我个人不太能接受的。这样很多1G内存的手机基本就没法玩了,究其原因还是MV使用的图片格式是png,GPU本身是不支持显示png格式的,必须被CPU解压成RGBA位图才能被显卡所识别呈现给玩家。RGBA位图是每个像素占用4字节,也就是说一张1000*1000分辨率的图片在内存里要占用1000*1000*4=4MB的内存,非常可怕。
个人稍微调查了一下GPU能识别的压缩图片格式,如果MV使用这种压缩图片格式,则不需要解压成每个像素占用4字节的RGBA格式,大量节省内存,主要格式有S3TC,ETC,PVRTC这三种,参考文章:https://www.cnblogs.com/wbaoqing/p/6185252.html
图:webgl告诉我你的显卡可以用S3TC的压缩格式。
如果MV要使用这些压缩纹理来节省图片内存占用的话,有什么方法可以让MV使用压缩纹理么。或者有大佬可以做这样的插件,我直接用买的,研究这个真的心累。
|
|