A lightweight JavaScript library for converting images to KTX2 (.ktx2) format. Powered by BinomialLLC/basis_universal.
- Convert images to KTX2 format
- Support for both 2D images and cubemaps
- Integration with gltf-transform
- Support both Browser and Node.js
Install:
npm install --save ktx2-encoder
Import:
import { encodeToKTX2, encodeKTX2Cube } from 'ktx2-encoder';
Usage:
// encode a 2D image
encodeToKTX2(data /** ArrayBuffer of png */, options);
// encode a cube map
encodeKTX2Cube([data, ...] /** ArrayBuffer of png */, options);
See options API documentation for more details.
For the users of gltf-transform, you can use the provided function ktx
. For example:
import { ktx2 } from "ktx2-encoder/gltf-transform";
await document.transform(
ktx2({
isUASTC: true,
enableDebug: false,
generateMipmap: true,
wasmUrl: "/basis_encoder.wasm"
})
);
Note: It's recommended to host the
basis_encoder.wasm
file on your own server.
- Start server
npm run dev
-
Open the page,default is http://localhost:5174/