https://bugs.winehq.org/show_bug.cgi?id=48631
Christian Costa titan.costa@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |titan.costa@gmail.com
--- Comment #2 from Christian Costa titan.costa@gmail.com --- I remember investigating this issue few years ago. It seemed D3DXGetImageInfoFromFileInMemory should return D3DFMT_A8R8G8B8 instead of D3DFMT_X8R8G8B8. I didn't find a clear way how TGA files are supposed to advertise if an alpha channel is present or not for 32 bpp and how windowscodecs.dll handles this.
Maybe there's something similar to a patch in wine-staging where D3DFMT_A8R8G8B8 is returned when at least 1 pixel has a non zero alpha component.
The patch fixes the cursor transparency in Runaway 2.
Tests were upstreamed: https://source.winehq.org/git/wine.git/commitdiff/a30fd8c0e44833b2a6412987a3...
Fix is still in wine-staging: https://github.com/wine-staging/wine-staging/blob/master/patches/d3dx9-32bpp...