【问题标题】:Opengl-es texture dimensions vs file size performanceOpengl-es 纹理尺寸与文件大小性能
【发布时间】:2014-09-19 13:04:09
【问题描述】:

如果您有两个 2048px X 2048px .p​​ng 纹理,一个大小为 300kb,另一个只有 30kb(小 10 倍)。较小的纹理在opengl-es中是否具有更好的渲染性能?还是因为opengl读取每个像素都没有关系?

【问题讨论】:

    标签: opengl-es textures


    【解决方案1】:

    它根本不应该有所作为。您必须解压缩 PNG 文件才能将其加载到 OpenGL 纹理中,因此一旦您加载和解压缩文件,并且在 OpenGL 看到图像数据之前,大小差异就会消失。

    OpenGL 可以支持压缩纹理,其中确切的压缩格式是版本和平台特定的。 ES 2.0 具有压缩纹理的机制,但允许实现支持少至 0 种压缩格式。

    所有常见的纹理压缩格式都使用具有固定压缩因子的有损压缩。因此,一旦您选择了格式,图像的内容就不会对最终的内存使用和性能产生影响。细节很少的纹理(通常使用 PNG 可以很好地压缩)可能会更好地使用纹理压缩,因为有损压缩会引入更少的质量损失。如果您的 OpenGL 实现让您可以在不同的压缩格式之间进行选择,您也许可以对具有“简单”内容的纹理使用具有更高压缩系数的格式。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-11
      • 1970-01-01
      • 2015-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-21
      • 2014-01-31
      相关资源
      最近更新 更多