Today OpenGL 4.3 and OpenGL ES 3.0 specifications have been unveiled and for texture compression they are gonna use the newly developed ASTC texture compression algorithm. I am interested if there exist any purely software implementations (best in C/C++) of the algorithm. There are some code snippets in here, but they cover only the random hash used at the core of the algorithm, the full article is not disclosed. I am basing one of my projects on the Squish project (DXT1 in software) and would be interested how much it would benefit from ASTC. Thanks in advance if you have any resources.
The Adaptive Scalable Texture Compression (ASTC) format offers advantages, such as improved rendering performance, faster load times, a smaller in-memory footprint, better battery life, and improved visual quality.
ASTC technology developed by Arm and AMD has been adopted as an official extension to both the OpenGL® and OpenGL® ES graphics APIs. The ASTC specification includes two profiles: LDR and Full. Both of these are supported on the 2nd generation of Mali-T600 series, the Mali-T700 and Mali-T800 series.
The Adaptive Scalable Texture Compression (ASTC) technology is used by games to provide a realistic, high-resolution, 3D visual experience while reducing image data size, memory footprint, and loading time, to enhance the game performance.
Texture compression is a form of lossy image compression that allows the GPU to render directly from the compressed texture using specialized silicon blocks, reducing the texture memory and memory bandwidth required to render the texture.
There is a codec for ASTC at this website (malideveloper.com).
Source code seem to be included as well.
Hope that helps.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With