NeilJed / VTFLib

VTFLib is a LGPL open source programming library that provides a C and C++ API for reading and writing Valve VTF and VMT format image files.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Errors compiling with nvDXT

NeilJed opened this issue · comments

nvDXT is a legacy library compiled with an older version of Visual Studio. Due to "breaking changes" introduced in Visual Studio 2015 there are a large number of errors that occur when trying to link it.

These needs to be fixed or, more practically, the legacy nvDXT library needs to be replaced.

Currently working on updating to the newer nVidia DXT library some progress made but haven't committed the changes into the dev branch just yet. There are a lot of changes to data structures that need figuring out.

There is a port of VTFLib to linux that uses libtxc_dxtn to replace the S3TC utilities that were provided by nvidia DXT. https://github.com/panzi/VTFLib/blob/d90a8a549a8b07d47ae987be497f061fcde0b5c0/src/VTFFile.cpp#L3463

The remaining nvidia-provided features aren't supported, but it seems like it might be a good starting point if you are still considering ditching nvidia DXT.

@sheybey Yeah I was looking at several alternative DXT libraries including that one. The reason I'm leaning more towards using the newer nVidia library is mostly because it has a lot of feature parity with the one we are currently using. Filters, sub-formats and also GPU acceleration, plus it's open source and cross platform.

I have a sort of working implementation already in a branch I need to commit, I just need to work out getting the MipMaps sorted out. There's a lot of features in the DXT library that sort of replace stuff in VTFlib so I'm sort of pondering what to deprecate in our codebase and use from theirs.

This is blocking other issues since newcomers can't compile it.