What is a KTX2 file?
KTX2 is the Khronos Texture v2 container standardised by the Khronos Group for efficient GPU textures. It stores pixel data already compressed in a GPU-native format (Basis Universal UASTC or ETC1S are most common) so engines upload textures straight to the GPU without CPU transcoding. KTX2 is the recommended texture format for glTF 2.0 assets via the KHR_texture_basisu extension.
What is a DDS file?
DDS (DirectDraw Surface) is Microsoft's legacy texture container, originally shipped with DirectX 7. It remains the de facto standard on Windows game pipelines because it natively carries BCn (Block Compression) formats such as DXT1, DXT5, and BC7. DDS files may include mipmap chains, cubemap faces, and volume textures, all described by a fixed 128-byte header.
How the browser decodes them
This tool uses three.js loaders combined with a Basis Universal WebAssembly transcoder. The container is parsed in JavaScript, the compressed mip level 0 is uploaded to WebGL as a compressed texture, then rendered to an offscreen framebuffer. The raw RGBA pixels are read back with readPixels and encoded into PNG via the Canvas 2D API.
When to choose KTX2 vs DDS
Choose KTX2 for cross-platform delivery (web, mobile, desktop) because Basis Universal transcodes once into the best GPU format for each device. Choose DDS when targeting Windows-only pipelines with mature DXT/BC7 tooling. For archival or 2D pipelines, export to PNG — which is exactly what this tool automates.





