ASTC Compression NOT compressing "HDR Compressed" or "HDR" type textures

I’m trying to use HDR textures in my mobile game and I’m using OpenGL ES 3.1 and ASTC. However, I’ve noticed that when cooking Unreal does not compress HDR textures, at all. Even though one of the cool features of ASTC is its ability to compress HDR textures. I’ve used Mali Texture Compression Tool to do some tests and with the 8x8 blocks a 2048x2048 is reduced form 48MB to about 2MB.
The reason why I believe it is not compressing them is because I’ve done a build with HDR textures and without them, and the delta between the two is exactly the size of an uncompressed HDR texture, which is huge!

Could anyone shed some light on this? Is it a bug or perhaps the cooker has only the super basics implemented for ASTC and HDR textures are simply being ignored and cooked as uncompressed?

I came across this issue which focuses on some artifacts when attempting to compress regular DXT5 compressed cubemaps. But the original poster also backs up my claim that HDR textures, in his specific case cubemaps, are not being compressed by the cooker. I consider this to be a separate issue to the “DXT cubemap artifact”, I think it deserves its own ticket in the issue tracker.
https://issues.unrealengine.com/issue/UE-37841

Hi Norman3D,

Thank you for submitting this post. I have reproduced this issue and logged a report for it here: Unreal Engine Issues and Bug Tracker (UE-42939)

You can track the report’s status as the issue is reviewed by our development staff. Please be aware that this issue may not be prioritized or fixed soon.

Cheers,

Ed,
We have since done some digging on our side, I’ll put a few more details here if you don’t mind.

There are two main issues:

  1. The cooker is indeed ignoring HDR textures, and thus not doing any compression. Perhaps because typically ETC2 and PVRTC are unable to compress HDR textures so somehow this was forgotten.
  2. A “exr_to_htga.exe” is missing from the folder where astcenc.exe is located. Even if the first issue was resolved, the current astcenc.exe would not be able to compress HDR data as the above mention executable is needed by astcenc.exe process.

Here is a link explaining this specific issue and how to fix it, in short: OpenEXR lib is needed to compile the exr_to_htga.exe.
https://community.arm.com/graphics/f/discussions/4619/mali-texture-compression-exr_to_tga-command?pi72=1&pi69=64

for the info, I’ll leave a private comment to the devs letting them know there is additional information here that they can use.