godot icon indicating copy to clipboard operation
godot copied to clipboard

Fix decompressing textures with dimensions that are not multiples of 4

Open BlueCube3310 opened this issue 1 year ago • 2 comments
trafficstars

Fixes #97862

Fixes the alignment of some compressed textures when decompressing. This issue seems to stem from the fact that the extra padding on compressed images is not taken into account when importing as VRAM compressed.

Also, the image linked in the issue's MRP seems to not decompress properly. Looking into the image's data, it looks like the endpoint indices are unusual (set to 1, for solid color blocks most compressors set them to 0). This tricks bcdec into thinking that the block has punchthrough transparency and incorrectly decompresses it. Godot doesn't support the BC1 punchthrough mode, so the compressed images appear fine.

BlueCube3310 avatar Oct 06 '24 09:10 BlueCube3310

@lyuma could you review this since you debugged an earlier problem like this

fire avatar Oct 06 '24 16:10 fire

Here are the original glbs that the texture was from if anyone wants to figure out how the images were imported like that: https://github.com/user-attachments/files/17269720/SmallShips.zip

nikitalita avatar Oct 06 '24 21:10 nikitalita

Thanks!

Repiteo avatar Oct 10 '24 23:10 Repiteo

Could it fix https://github.com/godotengine/godot/issues/85747 too?

okla avatar Oct 28 '24 07:10 okla