Author Topic: Image type settings / Compression in UE4.  (Read 3237 times)

Hey guys!

After importing a substance and generating its textures, they all appear to take up a LOT of memory and their compression shows as R8G8B8A8 in the top right, and the compression settings are grayed out. In one case the BaseColor image is 21854kb while the same image exported from SD and imported to have DXT1 compression is only 2731kb. I can see in the grayed out Compression settings box in the SD texture that it's set to Default (DXT1/5, etc) so is this 10-fold (almost) size increase just a bug in the UI, or is it really in some other format? :P.

I also noticed, while looking into this, that I can force DXT1 in Substance Designer on the Output node but not DXT5 or BC5.

Hello Phrixus,

We are aware of this limitation within the UE4 integration. We are currently working on a new and improved version of the plugin that will support BC4/BC5 texture compression. This will also allow us to start exposing more options directly through UE4.

Thank you for the feedback!  :)
Last Edit: November 17, 2016, 03:12:29 pm
Software Engineer, Integrations
daniel.stover@allegorithmic.com

Glad to hear it! That should be pretty good :o.

In the meantime, I've forced DXT1 / DXT5 on the channels I use on my substances, except the Normal which I set to 32-bit RGBa. Is this a good way of doing things, or should I leave the outputs to Normal?

Also, as per my other post, why does the format show up as R8G8B8A8 or G8 (for gray, which is fine), in UE4 for substances rather than whatever it ends up being compressed as? Does it actually get compressed to DXT1/5 unless you specify it in the sbsar?

I also now have a problem with 4.14's Substance plugin. The sbsar does not generate or update textures randomly after changing settings or resolution. Instead I get a black image which crashes the UE editor if I try to open it. Reimporting the substance doesn't fix the problem and sometimes crashes the editor too.
This happens with any substance I have. I even made a new one to test it with. I don't know if it's local to my project or not, but I had no such behavior in 4.13. The behavior seems more frequent if I set the output format in SD prior to building the sbsar, perhaps.
Last Edit: November 17, 2016, 08:24:30 pm

Glad to hear it! That should be pretty good :o.

In the meantime, I've forced DXT1 / DXT5 on the channels I use on my substances, except the Normal which I set to 32-bit RGBa. Is this a good way of doing things, or should I leave the outputs to Normal?

Also, as per my other post, why does the format show up as R8G8B8A8 or G8 (for gray, which is fine), in UE4 for substances rather than whatever it ends up being compressed as? Does it actually get compressed to DXT1/5 unless you specify it in the sbsar?

I also now have a problem with 4.14's Substance plugin. The sbsar does not generate or update textures randomly after changing settings or resolution. Instead I get a black image which crashes the UE editor if I try to open it. Reimporting the substance doesn't fix the problem and sometimes crashes the editor too.
This happens with any substance I have. I even made a new one to test it with. I don't know if it's local to my project or not, but I had no such behavior in 4.13. The behavior seems more frequent if I set the output format in SD prior to building the sbsar, perhaps.

Hi phrixus,

You should leave the outputs to normal. Changing the formats will cause issues with the integration. I talked with Dan Stover one of the UE4 plugin devs and he said the following:

We were handling compression in older formats before and some didn't line up exactly with what UE4 displayed. This is one of the things I am going to be aiming to fix post refactor now that we have the ability to switch compression at run time along with having the updated compression methods.

We have a hotfix coming for the parameter issues. Please stay tuned.

Cheers,
Wes
Last Edit: November 22, 2016, 05:01:11 pm
Head of Substance Demo Art Team
the3dninja@adobe.com
Twitter: The3DNinja