microsoft / DirectXTex

DirectXTex texture processing library
https://walbourn.github.io/directxtex/
MIT License
1.8k stars 443 forks source link

GPU-compressed `BC7_UNORM_SRGB` textures contain red streaks when using texconv.exe under wine #419

Closed expenses closed 1 month ago

expenses commented 10 months ago

Hi, feel free to close this issue given that it's most-likely an emulation-related problem. It might help some other people with the same issue though.

I tried to compress the following image (arco_frente.png from San Miguel from McGuire's Computer Graphics Archive) with this command: wine texconv.exe arco_frente.png -srgb -bc x -f BC7_UNORM_SRGB -fixbc4x4 -y.

arco_frente

It displays (both in-engine and in renderdoc) with a red streak of bad blocks in the first mip level:

20231204_14h55m53s_grim

This is the same for all images that I've run texconv.exe on with this particular setting, although I haven't extensively tested it.

Luckily, I don't get this issue at all when using -nogpu so that's a good-enough solution for now.

I got the texconv.exe binary from here: https://github.com/Microsoft/DirectXTex/wiki/Texconv.

Version: Microsoft (R) DirectX Texture Converter [DirectXTex] Version 2023.10.31.1 Texconv listed adapter: Intel(R) HD Graphics 4000 GPU: Intel TigerLake-LP GT2 [Iris Xe Graphics] (not sure why these two are different) Wine: wine-8.21

walbourn commented 10 months ago

Hmmm. My guess is there's something in the DirectCompute driver/platform for WINE.