Texture processing tools with support for Direct3D 10 and 11 formats.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Ignacio aeddd65f81
Update README.md
9 months ago
.github Add release build. 1 year ago
cmake Cleanup configuration. 1 year ago
data Add baboon image to waterloo image set. 2 years ago
doc Update version number. 1 year ago
extern Remove unused dependencies. 1 year ago
project Target AVX2 in all projects and configurations. 1 year ago
src Update README.md 9 months ago
.gitignore Update version number. 1 year ago
CMakeLists.txt Update version number. 1 year ago
ChangeLog Update changelog. 1 year ago
LICENSE Update copyright. 1 year ago
README.md Update README.md 9 months ago
VERSION Update version number. 1 year ago
configure Integrate more changes from cfcohen. 6 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: