快速的 ISPC 纹理压缩工具 - 更新

下载代码示例

本文和示例代码项目由英特尔公司的 Marc Fauconneau Dufresne 撰写。

2016 年 4 月 12 日更新
本次更新添加了面向 RGBA ASTC 压缩的支持。

2015 年 8 月 26 日更新
本次更新在快速的 ISPC 纹理压缩示例中添加了高质量的 ETC1 和 ASTC 压缩。对于 ASTC 压缩,目前只支持 RGB 2D LDR 输入。支持最高 8x8 的模块规格(而非 10x5 或 10x6)。利用 英特尔 SPMD 编译器启用 SIMD 指令集。下图展示了在带有 6x6 模块的 Kodak 数据集上,astcenc 与快速 ISPC 纹理压缩工具的性能与质量关系的对比。在快速预置方面与 astcenc 不相上下,但是速度提升了 44 倍。


图 1 - 快速 ISPC 纹理压缩工具与 astcenc 之间的性能与质量对比需要注意的是,x 轴运用了对数尺度。

 

2014 年 5 月 13 日更新
本示例在 一流的 BC7 纹理压缩工具上 添加了 BC6H(DX11 HDR 纹理格式)支持。我们采用了相似的方法进行快速分区过滤、选择和修改,还采用了高效的搜索策略,以充分利用 B6CH 端点转换。利用 英特尔 SPMD 编译器启用了 SIMD 指令集。提供了质量与性能之间的各种关系。


图 2ISPC 纹理压缩工具更新 - 2014 年 5 月 13 日

原始版本(2013 年 11 月 5 日)
本示例展示了一流的 BC7 (DX11) 纹理压缩工具。BC7 分区被简化为若干阶段,利用迭代端点修改优化了最终的分区。支持所有 BC7 模式。借助 英特尔 SPMD 编译器启用了 SIMD 指令集。提供了质量与性能之间的各种关系。


图 3 - 原始 ISPC 纹理压缩工具 - 2013 年 11 月 5 日

有关编译器优化的更完整信息,请参阅优化通知