AnsweredAssumed Answered

Issues with AMDCompress library

Question asked by rly on Apr 7, 2016


And thank you for providing the AMDCompress library to the developer community!



However, I have found two issues with it (the current version 2.2.2740 and at least one older version from a couple of months back):


* The first problem (that exists in both versions) is that when I try to compress with DXT1 and 1-bit Alpha, the alpha channel is lost and the pixels are just black. This used to work in the older ATI_Compress version.

* The second problem is that the process crashes on 64 bits (access violation trying to write to memory). From the debugger it looks like it's trying to access a memory location that has been moved through a 32-bit integer (i.e. 0x00000000XXXXXXXX), and the lower 32 bits looks similar to pointers to the structs of the input parameters.


I use the VS2015 version.


Both issues are easily reproducible on the "examples" project that ships with AMDCompress. The DXT1 problem can be reproducted by adding the following lines after "options.nCompressionSpeed = ...":


   options.bDXT1UseAlpha = true;

   options.nAlphaThreshold = 128;


Can someone from AMD confirm if this is a bug in the library or if it is something that I can do? The code is essentially unchanged since using the working ATI_Compress version (except for the new header file and the migration needed by this).