The 2.1 release is the second release in the 2.x series. It includes another set of significant performance optimizations and number of smaller new features.
:warning: A reminder for users of the library interface - the library API is not designed to be stable across versions, and this release is not compatible with 2.0. Please recompile the client-side using the updated `astcenc.h` header.
Features:
* **Command line:**
* **Bug fix:** The meaning of the `-tH\cH\dH` and `-th\ch\dh` compression modes was inverted. They now match the documentation; use `-*H` for HDR RGBA, and `-*h` for HDR RGB with LDR alpha.
* **Feature:** A new `-fastest` quality preset is now available. This is designed for fast "roughing out" of new content, and sacrifices significant image quality compared to `-fast`. We do not recommend its use for production builds.
* **Feature:** A new `-candidatelimit` compression tuning option is now available. This is a power-user control to determine how many candidates are returned for each block mode encoding trial. This feature is used automatically by the search presets; see `-help` for details.
* **Improvement:** The compression test modes (`-tl\ts\th\tH`) now emit a MTex/s performance metric, in addition to coding time.
* **Core API:**
* **Feature:** A new quality preset `ASTCENC_PRE_FASTEST` is available. See `-fastest` above for details.
* **Feature:** A new tuning option `tune_candidate_limit` is available in the config structure. See `-candidatelimit` above for details.
* **Feature:** Image input/output can now use `ASTCENC_TYPE_F32` data types.
* **Stability:**
* **Feature:** The SSE2, SSE4.2, and AVX2 variants now produce identical compressed output when run on the same CPU when compiled with the preprocessor define `ASTCENC_ISA_INVARIANCE=1`. For Make builds this can be set on the command line by setting `ISA_INV=1`. ISA invariance is off by default; it reduces performance by 1-3%.
Performance
Performance benefits vary based on image color format, ASTC quality settings, and ASTC block size.
* Compressing using `-thorough` is between 1.3x and 1.6x faster than asctenc 2.0.
* Compressing using `-medium` is between 1.4x and 2.1x faster than asctenc 2.0.
* Compressing using `-fast` is between 1.4x and 2.4x faster than asctenc 2.0.
* Compressing using the new `-fastest` setting is 2.1x - 3.8x faster than using astcenc 2.0 `-fast`.