Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

A High Quality SIMD BC1 Encoder

License

NotificationsYou must be signed in to change notification settings

castano/icbc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is the BC1 texture block encoder used byNVTT, extracted as an easy to use single header file library.

Since its initial release I've improved quality and performance. I've added support for multiple quality levels that allow reducing compression time at the cost of some quality, and I've vectorized some of the algorithms to take advantage of the vector units in modern CPUs.

vector-scaling

This work was inspired by Rich Geldreich'sRGBCX, which is a close competitor and most likely a better choice if you are looking for a well supported and actively developed library.

Results

The following chart shows the average PSNR of different BC1 compressors and different configurations on theKodim andWaterloo image sets plotted against the time it took to encode them:

kodim-chart

  • ICBC is version 1.03 withthree_color_mode andthree_color_black set totrue.
  • RGBCx is version 1.12 levels 0 to 18 withallow_3color anduse_transparent_texels_for_black enabled.
  • stb is stb_dxt version 1.09 with various improvements that Rich and I have proposed.
  • squish is version 1.15
  • CMP is AMD's CMP_Core V4.0.4855

References

ICBC implements several algorithms:

About

A High Quality SIMD BC1 Encoder

Resources

License

Stars

Watchers

Forks

Sponsor this project

    Packages

    No packages published

    [8]ページ先頭

    ©2009-2025 Movatter.jp