纹理优化三-KTX纹理压缩

192 篇文章 38 订阅
46 篇文章 9 订阅

KTX简介:

在这里插入图片描述
KTX (Khronos Texture) 是一种纹理存储格式,大部分移动设备的 GPU 均支持这种格式。可以有效降低设备的显存占用,提高运行效率和稳定性。
在这里插入图片描述

ktx是容器,astc是算法。ktx存的图像可以是BCn,astc,etc,astc存储的结果也可以放在ktx或者dds,或者自己随便弄个raw buffer存。 如果网络流式传输完全不需要这些gpu用的压缩啊(只需要体积减少)有压缩比更高还无损的比如zip(纹理压缩体积会变大,这个是给你GPU读取更快的算法) 这个是给你GPU读取更快的算法.

纹理压缩与图像压缩的内存对比

纹理压缩为什么存储体积变大,在显存占的显存是否变大: 只是传输体积会变大(网络传输或者磁盘体积变大),但是特别注意在GPU的内存会变小, 传输体积变大是因为JPG和PNG这种本来就设计有压缩, 传统图像只是因为编码减少了传输体积,还是要decode的!压缩纹理也可以GZIP但效果没那么好所以通常纹理压缩了的不再进行像JPG/png压缩,然而JPG/PNG decode后仍然是RGBA8/RGBA4/RGB24的,所以最终实际占据的内存和显存更多,decode也需要时间, 压缩纹理不需要再CPU做decode, 所以你文件体积多大在显存里就是多大 。容易混淆了两个"内存"(总结一下就是jpg\png那种是解压后在GPU采样得到的比纹理压缩的体积相对大) ;压缩纹理最大的问题就是有损,在UI这种情况可能不太适用.

Basis Universal 超压缩的支持,以实现可靠,无处不在的GPU纹理分布。 Basis Universal是Binomia l开发的一种压缩技术,可产生紧凑的纹理,这些纹理可以在运行时有效地转码为各种GPU压缩纹理格式。除此之外,Khronos发布了KHR_texture_basisu 扩展,使glTF可以包含KTX 2.0纹理,从而产生了可普遍发布的glTF资产,这些资产减小了下载尺寸,并使用了本地支持的纹理格式来减小GPU内存大小并提高了在各种设备和平台上的渲染速度。最后,Khronos发布了开源工具和代码转换器,以及开发人员和艺术家指南,以支持并鼓励在glTF生态系统中广泛使用KTX 2.0纹理,包括已经集成了支持功能的three.js,Babylon.js和Gestaltor查看器。
纹理贴图通常使用JPG或PNG压缩图像来传输具有减小的文件大小的纹理。 但是,这些格式不能直接由GPU处理,必须在GPU内存中解压缩为完整大小的图像,从而消耗宝贵的内存空间和带宽,并导致较差的渲染性能和高功耗,这在移动设备上尤其成问题。 GPU压缩的纹理格式可实现紧凑的内存纹理,并具有优化的内存访问,可实现更快,更高效的渲染。 但是,在分布广泛的glTF资产中使用GPU纹理格式是不切实际的,因为高度分散的GPU纹理格式格式(与硬件有关所以定义一种中间的格式),会使它们无法在许多目标设备上使用。
Binomial的Basis Universal压缩技术通过定义一种“通用”压缩纹理格式来解决此问题,该格式可以在运行时有效地转码为目标设备上本机支持的GPU格式。 Basis Universal为开发人员提供了两种压缩选项,这些选项将Khronos定义的ETC1和ASTC GPU纹理格式的选定模式与RDO编码和基于LZ的超压缩相结合,以实现紧凑的纹理文件尺寸。 与JPEG和PNG纹理相比,ETC1S模式可以实现更小的传输和内存大小。 与ETC1S相比,UASTC模式可提供更高质量的纹理,特别适用于法线贴图,同时仍可实现较小的文件大小和显着的内存节省。

ktx 有很多种格式,如 astc, dxt, pvrtc, etc1,etc2
在这里插入图片描述

纹理优化:

纹理优化一、纹理压缩
纹理优化二-模型贴图优化

在这里插入图片描述

参考资料:

各种移动GPU压缩纹理的使用方法
纹理压缩简介
gltf中的ktx2.0 texture
ktx官网

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值