http://bugs.winehq.org/show_bug.cgi?id=16559
--- Comment #37 from W3ird_N3rd mailme667@yahoo.co.uk 2009-09-19 15:01:23 --- I'm messing around a bit and seeing strange things.
First the patch from Andrew Church. I've learned Trickstyle uses pixelformats 19 (X8L8V8U8), 64 (R8G8B8A8_SNORM) and 70 (R16G16_SNORM) all three for most tracks, the ground, the walls etc. When I disable any of them they become blank as you can see in the screenshot attached to this thread. Everything becomes blank the same way. It does not matter which one I disable.
There are only two ways to put the R16G16_SNORM texture together:
DDPixelFormat->u2.dwBumpDuBitMask = 0x0000ffff; DDPixelFormat->u3.dwBumpDvBitMask = 0xffff0000;
or the same in reverse. The problem is: it works *EITHER* way.
I've even made up this complete bullcrap:
DDPixelFormat->u2.dwBumpDuBitMask = 0x00ff00ff; DDPixelFormat->u3.dwBumpDvBitMask = 0xff00ff00;
And it still works. Why? I went on, there were two values Andrew wasn't quite sure about, u4 an u5 for R8G8B8A8_SNORM or pixelformat 64:
DDPixelFormat->u4.dwBumpLuminanceBitMask = 0x00ff0000; // FIXME: correct? DDPixelFormat->u5.dwLuminanceAlphaBitMask = 0xff000000; // FIXME: correct?
So I decided to break them.
DDPixelFormat->u4.dwBumpLuminanceBitMask = 0xffffffff; DDPixelFormat->u5.dwLuminanceAlphaBitMask = 0xffffffff;
Surprise, game still works.
So I went nuts. I took the values for u2, u3, u4 u5 and changed all of them for pixelformats 19/64/70 to 0xffffffff;. All of them. Sure I've broken it now.
Errr... no. The game still works. And looks fine. So it looks like these values are completely irrelevant. Cookie for whoever "gets" this.