关于GFX Texture Mem(M)纹理内存占用的疑问

  • Creator 版本: 3.0.1

  • 目标平台:谷歌浏览器

  • 重现方式:必现

1.首先新建一个空项目工程调试面版信息如下:空工程纹理内存占用是0.26M

QQ截图20210429093958

2.然后放入一张1580x720分辨率的jpg背景图测试,根据内存占用计算公式(1580x720x4)/(1024x1024),该背景图内存占用应该为4.33M。接下来看看调试面板信息:

QQ截图20210429094422

显示4.6M,到此一切正常

3.接下来就是不正常的地方了,非常疑惑,希望官方能解答一下
我们先把背景图删除,换上一张33x19分辨率的png图片,如果按图片内存占用的公式计算,这张图的内存占用应该是(33x19x4)/ (1024x1024)= 0.0024M。但是调试面版信息显示让人疑惑:

纹理内存占用既然跑到16.26M。多余的内存是哪来的,希望官方能解惑
其次,我尝试过多张图片测试,有部分是正常的,有部分内存占用跑到非常高

貌似哪里看到一个知识, 一般没经过纹理压缩的图片(非图片压缩), GPU都是按最大的内存去加载的
不知道是不是和这个有关, 毕竟我太菜了 :upside_down_face:

动态合批了解下…2048*2048/1024/1024 = 16m
大的图是不加入动态合批的

1赞

问题是我的测试项目中只有一张图片呀,你意思是小图,引擎底层也会放到动态合批,然后以最大的尺寸缓存到内存中?

我强制关闭动态合批试试

确认的,多出的内存占用确实是动态合图生成的,谢谢

该主题在最后一个回复创建后14天后自动关闭。不再允许新的回复。