Convert images to KTX2
KTX2 textures stay compressed in video memory and load fast on every GPU. Encode a whole batch of textures with Basis Universal right in the browser.
Private
Files are processed on your device and never sent to a server.
Free, no account
No sign-up, no watermark, no daily limits.
Nothing to install
Works in Chrome, Edge, Firefox and Safari on desktop and mobile.
How it works
- 01
Drop one or many PNG, JPG or WebP textures.
- 02
Choose ETC1S (smallest) or UASTC (highest quality), mipmaps and normal map mode.
- 03
Encode and download the .ktx2 files.
Questions
ETC1S or UASTC?+
ETC1S gives the smallest files and suits color textures. UASTC keeps more detail — use it for normal maps and hero assets.
Which engines read KTX2?+
three.js, Babylon.js, PlayCanvas, Godot and Unity (via glTFast) read KTX2 with Basis Universal; inside GLB it is the KHR_texture_basisu extension.
Why is encoding slow?+
Basis Universal does heavy compression work once so the GPU can decode instantly. Large textures take a few seconds each.
More 3D tools
Normal Map Generator
Make a normal map from any image — OpenGL or DirectX.
OpenSeamless Texture Maker
Make any texture tile without visible seams.
Open3D Viewer
Open GLB, FBX, OBJ, STL and 20 more formats; LODs, variants, stats.
Open3D Model Converter
Convert FBX, OBJ, STL, GLB, DAE, 3MF, USDZ and more to GLB, glTF, OBJ, STL, PLY or USDZ.
OpenGLB / glTF Compressor
Shrink GLB files: Meshopt geometry, WebP or KTX2 (Basis) textures.
OpenPolygon Reducer
Reduce triangle count of any model while keeping its shape.
OpenLOD Generator
Generate LOD0–LOD4 from one model, named for Unity and Unreal.
OpenScale & Axis Fixer
Fix units, Z-up/Y-up and the pivot of a model before import.
OpenNeed game-ready trees, plants and rocks?
FoliMesh generates vegetation and rocks with LOD0–LOD3, collision and a pivot at the base — GLB, FBX or OBJ for any engine.