Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

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?

Product Version: UE 4.15
more ▼

asked Mar 13 '17 at 05:42 PM in Packaging & Deployment

avatar image

96 2 4 9

avatar image Norman3D Mar 14 '17 at 12:48 AM

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

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first

Hi Norman3D,

Thank you for submitting this post. I have reproduced this issue and logged a report for it here: https://issues.unrealengine.com/issue/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.


Ed Burgess

more ▼

answered Mar 15 '17 at 05:14 PM

avatar image Norman3D Mar 15 '17 at 05:37 PM

Thanks 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π69=64

avatar image Ed Burgess ♦♦ STAFF Mar 15 '17 at 05:57 PM

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

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question