SquishLib - DXT 压缩库


MIT
跨平台
C/C++

软件简介

SquishLib (libsquish) 是 C++ 实现的开源 DXT 压缩库,具有以下特点:

  • 支持 DXT1, DXT3 和 DXT5 格式.

  • 特别为 SSE 和 Altivec SIMD 指令集而优化

  • 支持多个平台,目前已测试 x86 和 PPC

  • 使用非常简单

示例代码:

#include <squish.h>

int main()
{
    squish::u8 pixels[16*4];  // 16 pixels of input
    squish::u8 block[8];      // 8 bytes of output

    /* write some pixel data */

    // compress the 4x4 block using DXT1 compression
    squish::Compress( pixels, block, squish::kDxt1 );
    
    // decompress the 4x4 block using DXT1 compression
    squish::Decompress( pixels, block, squish::kDxt1 );
}