图片显存计算

 

显存容量=显示分辨率×颜色位数/8bit

注意,图片在显存中的占用空间和存储时的占用空间,是不同的概念,显存主要是解码后的每个点的数据,文件数据要看你的格式、压缩比、文件头、附加信息等等,因此文件数据和图片在内存和显存中的数据差别可能会很大。

以下图为例

直接查看属性,可以看到,文件大小,41.8KB,170*153分辨率,占用空间44.0KB,占用空间和文件本身大小差距不大,存储文件占用的内存受到文件格式、压缩比等的影响。但是项目中调用这张图片资源时,占用的显存却并不是44KB或者41.8KB。运行显存包含解码后每个像素点的数据。

计算显存

显存容量=显示分辨率×颜色位数/8bit

注意这个公式的分辨率是显示分辨率,而不是图片分辨率

(图片所占显存大小 = 图片长度(像素) * 图片宽度(像素) * 一个像素所占内存空间(单位:字节) )

计算显存时,分辨率取的不是图片本身的分辨率,而是图片本身分辨率向上取2^n之后的分辨率,因为显存纹理的宽和高都要是2次幂数

属性详情显示位深(即颜色位数)为24位,故一个像素占用字节数为24/8(一个字节占用8位)=3,

2^4<170<2^5

2^4<153<2^5

 

所以图片占用显存大小为

2^5*2^5*3 = 192KB,远大于文件本身的41.8KB,因此,在项目设计时,散图资源如果在2^n附近时,尽量让美术修改到小于等于2^n大小。对游戏体验影响较大,并且可以极大降低显存,提升H5游戏流畅度。

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值