glint_basis
The official Basis Universal reference transcoder backend for Glint Engine.
It accepts Basis-compressed KTX2 and standalone .basis textures and decodes
the selected mip on a background isolate.
final decoder = GlintTextureDecoder(
basisTranscoder: const GlintBasisTranscoder(),
);
final pixels = await GlintTexturePixels.fromAsset(
'assets/bodywork.ktx2',
decoder: decoder,
maximumDimension: 2048,
);
Pass the same decoder to GlintGameView.textureDecoder to cover particle
textures, graph textures, and embedded GLB materials. Glint resolves
KHR_texture_basisu.source ahead of an optional PNG/JPEG fallback.
Flutter GPU does not currently expose ASTC/ETC/BC texture formats or mip-level uploads, so this release transcodes to RGBA8 before upload. The public backend boundary preserves the compressed asset pipeline and can select a native GPU format when Flutter GPU exposes those capabilities.
The package vendors only the upstream transcoder and Zstandard decoder, builds
them through Dart native assets, and runs each decode in a background isolate.
See THIRD_PARTY_NOTICES.md for licensing.
Libraries
- glint_basis
- Basis Universal/KTX2 texture transcoding for Glint Engine.