Texture processing tools with support for Direct3D 10 and 11 formats.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
Ignacio aeddd65f81
Update README.md
3 years ago
.github Add release build. 4 years ago
cmake Cleanup configuration. 4 years ago
data Add baboon image to waterloo image set. 4 years ago
doc Update version number. 4 years ago
extern Remove unused dependencies. 4 years ago
project Target AVX2 in all projects and configurations. 4 years ago
src Fix data testsuite path 4 years ago
.gitignore Update version number. 4 years ago
CMakeLists.txt Update version number. 4 years ago
ChangeLog Update changelog. 4 years ago
LICENSE Update copyright. 4 years ago
README.md Update README.md 3 years ago
VERSION Update version number. 4 years ago
configure Integrate more changes from cfcohen. 9 years ago


NVTT is discontinued

After more than 14 years maintaining and updating this library on my spare time, I've decided to officially discontinue it and focus my energy on other projects.

When I released NVTT there was very little public information about compression for GPU texture formats. Existing codecs were closed-source, encumbered by patents, and not particularly efficient or high quality. A lot has changed since then. NVTT doesn't support the latest formats anymore, some of its codecs are outdated, and it's source code has aged. Today most IHVs maintain their own open source codecs and several companies develop high quality commercial products around texture compression.

If you are looking for alternative texture compression tools and processing algorithms I recommend you check these out:

Open Source Encoders

Image Processing and IO

Commercial Libraries

NVIDIA Texture Tools Actions Status MIT GitHub

The NVIDIA Texture Tools is a collection of image processing and texture manipulation tools, designed to be integrated in game tools and asset processing pipelines.

The primary features of the library are mipmap and normal map generation, format conversion, and DXT compression.

How to build (Windows)

Use the provided Visual Studio 2017 solution project/vc2017/thekla.sln.

How to build (Linux/OSX)

Use cmake and the provided configure script:

$ ./configure
$ make
$ sudo make install

Using NVIDIA Texture Tools

To use the NVIDIA Texture Tools in your own applications you just have to include the following header file:


And include the nvtt library in your projects.

The following file contains a simple example that shows how to use the library:


Detailed documentation of the API can be found at: