[5/5] wined3d: change colorkey fixup for stage 0 alphaop / alphaarg

Stefan Dösinger stefan at codeweavers.com
Wed Jan 2 05:44:24 CST 2008

Am Mittwoch, 2. Januar 2008 13:38:57 schrieb Alexander Dorofeyev:
> In case of colorkey emulation for a texture, if the application wants to
> select alpha from diffuse color at stage 0, a fixup to modulate with
> texture alpha more closely matches what the application wants than fixup to
> just select alpha from texture.
I am not sure about this. From my understanding of color keying, the color 
keying should only depend on the texture, not the diffuse color. 
Unfortunately, this is mutually exclusive with always honoring the app's 
blending settings. I have two games which use color keying, Moto Racer 2 and 
Prince of Persia 3D. I'll test the patches with those two games.

The problem is that our color keying is emulated, so we'll always have to 
fiddle to get it working properly everywhere. The correct, but complex and 
incomplete fix would be a replacement shader for the fixed function pipeline 
which can implement color keying properly using 'KIL' or 'discard'. 
Unfortunately that won't fix the problem for cards without fragment shader 

The other patches look good to me

More information about the wine-devel mailing list