19 releases

0.1.20 Jul 4, 2022
0.1.19 Jul 2, 2022
0.1.18 Apr 10, 2022
0.1.11 Mar 23, 2022

#28 in Rendering engine

MIT license

14MB
2.5K SLoC

Rust 2K SLoC // 0.1% comments C++ 450 SLoC // 0.0% comments

Contains (static library, 2MB) libkernelx86_64-unknown-linux-gnu.a, (static library, 2MB) src/ispc/kerneli686-pc-windows-msvc.lib, (static library, 2MB) kernelx86_64-pc-windows-msvc.lib, (static library, 2MB) libkerneli686-unknown-linux-gnu.a, (static library, 1.5MB) src/ispc/libkernelx86_64-apple-darwin.a, (static library, 1MB) kernel_astci686-pc-windows-msvc.lib and 12 more.

ISPC Texture Compression Rust bindings

Latest version Documentation

Yet an another Rust binding for ispc texture compression

Supported texture formats:

  • BC6H (FP16 HDR input)
  • BC7
  • ETC1
  • BC1, BC3 (aka DXT1, DXT5) and BC4, BC5 (aka ATI1N, ATI2N)

Work in progress support format:

  • ASTC (LDR, block sizes up to 8x8)

Integration

To use this crate, one could simply add this to it's Cargo.toml

[dependencies]
ispc-texcomp = "0.1"

But this would only work on platforms that comes with our prebuilt textcomp kernels, for platform outside those list, one must has ispc installed in PATH, and the ispc feature must be toggled.

[dependencies]
ispc-texcomp = {version="0.1", features=["ispc"]}

Thus ispc would been called on build time, compiling texcomp kernels into rs bindings and platform-specific static libraries.

Acknowledgement: this repo was imported from https://github.com/gwihlidal/intel-tex-rs, which seems to be dead.

Dependencies