首页 > 代码库 > 游戏中开启MipMap会导致纹理消耗内存增大多少
游戏中开启MipMap会导致纹理消耗内存增大多少
当物体与投影面的距离发生变化的时候,物体在投影面的大小也发生着变化,如果此时还是用一张尺寸大,分辨率高的纹理就会过分的消耗GPU的性能,所以我们有了MipMap可以生成一组分辨率逐渐降低的纹理序列,可是当我们开启MipMap的时候他究竟会比没有开内存相差多少?
来源:https://en.wikipedia.org/wiki/Mipmap
先看一下他们的大小总和:
T(n) = 1 + 1/4 + 1/16 + 1/64 + ......1/4^n
然后我们求解这个公式可得:
其中:
1/4 + 1/16 + 1/64 + ......1/4^n = 1/4 + 1/4(1/4 + 1/16 + 1/64 + ......1/4^(n-1))
1/4 + 1/16 + 1/64 + ......1/4^n - 1/4(1/4 + 1/16 + 1/64 + ......1/4^(n-1)) = 1/4
因为接近于无穷 所以可约等于:
3/4(1/4(1/4 + 1/16 + 1/64 + ......1/4^n) = 1/4
然后将左右两侧除以3/4可得
(1/4(1/4 + 1/16 + 1/64 + ......1/4^n) ≈ 1/3
所以T(n) =1 + 1/3
所以开启MipMap之后产生的内存消耗与没有开启相差 4/3倍
游戏中开启MipMap会导致纹理消耗内存增大多少
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。