Home

Awesome

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:

src/nvtt/nvtt.h

And include the nvtt library in your projects.

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

src/nvtt/tools/compress.cpp

Detailed documentation of the API can be found at:

https://github.com/castano/nvidia-texture-tools/wiki/ApiDocumentation