Skip to content

gz65555/ktx2-encoder

Repository files navigation

ktx2-encoder

Latest NPM release License

A lightweight JavaScript library for converting images to KTX2 (.ktx2) format. Powered by BinomialLLC/basis_universal.

Features

  • Convert images to KTX2 format
  • Support for both 2D images and cubemaps
  • Integration with gltf-transform
  • Support both Browser and Node.js

Quick Start

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 gltf-transform

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.

Tool

Open the page of ktx2 encoder tool, you can use it to encode your image to ktx2.

About

KTX2(.ktx2) encoder for images and gltf

Resources

License

Stars

Watchers

Forks

Contributors