探寻ASTC纹理压缩后,内存下降的实际值

除非几像素小图,通常情况下astc一定比png省内存,兄弟再想想吧。

“不一定”,png 解码为raw rgba 之前可能比astc小。
很多时候 png 加载/解码后直接上传/缓存到cpu,不会缓存raw rgba数据到内存

chrome 的任务管理器里看 内存占用 没有明显减少。改为 astc6*6 后,内存没有按预期一样减少。

你说是对的 是我错了,ASTC和png一样,大家都不要用ASTC了。全部用png就行了。压缩纹理一点用都没有 :grin: :grin: :grin: :grin:

图片缓存 和 GPU 内存的确是降低了

所以你想表达什么?ASTC没有降低RAM是吧?我已经不想反驳了,也不想解释。看乐子了。没有降低就没有降低呗,没用就不用呗。反正说了又不听。没事 那就都不知道吧,反正我自己知道 :sweat_smile: :rofl: :rofl: :joy: :joy: :rofl: 真是难蚌,一整楼连内存分布都搞不明白,你家图片在js堆里面是吧

看到好几个删帖,不知道你们聊了啥。首先说明我观察到的现象 内存占用 没有减少,图片缓存和 CPU内存降低了。
astc 格式不需要在内存中进行解码,即使 js 中加载了一份原始数据,应该要比 png 少很多才对。

pc浏览器很可能不支持先确认你用的浏览器版本是否支持astc格式

支持的。network 下载的是 astc 纹理,没有下载 png。加载spriteFrame.texture.getPixelFormat() 获取的格式也是 astc 。

你查看显存使用的方式不对,这个Profiler反应的是应用JAVA层面的内存数据,不包括显卡的,换adb命令吧