We are exploring supporting the glTF_texture_basisu extensions without requiring heavy wasm files.
The extension requires support for these internal formats:
ETC1S with BasisLZ (used for color-perceptual content)
UASTC with optional Zstandard compression (used for data content)
Since ASTC seems to be the most widely (chrome/firefox/safari/android/ios) GPU compressed format, we would only target ASTC, and require fallback textures if not available.
provides options to select for compilation:
BASISD_SUPPORT_UASTC
BASISD_SUPPORT_ASTC or BASISD_SUPPORT_ASTC_HIGHER_OPAQUE_QUALITY
plus BASISD_SUPPORT_KTX2_ZSTD to 1
With these options, eg. only ASTC support the wasm shrinks to 260KB which is bit better.
With BASISD_SUPPORT_ASTC_HIGHER_OPAQUE_QUALITY it goes up to 330KB.
Let's see if this is useful.
We are exploring supporting the glTF_texture_basisu extensions without requiring heavy wasm files.
The extension requires support for these internal formats:
Since ASTC seems to be the most widely (chrome/firefox/safari/android/ios) GPU compressed format, we would only target ASTC, and require fallback textures if not available.
https://github.com/BinomialLLC/basis_universal/wiki/How-to-Use-and-Configure-the-Transcoder#shrinking-the-transcoders-compiled-size
provides options to select for compilation: BASISD_SUPPORT_UASTC BASISD_SUPPORT_ASTC or BASISD_SUPPORT_ASTC_HIGHER_OPAQUE_QUALITY plus BASISD_SUPPORT_KTX2_ZSTD to 1
would then suffice ?
Would else would need to be considered ?