Re: wined3d: dirtify colorkey state in IWineD3DDeviceImpl_SetTexture
Am Donnerstag, 27. Dezember 2007 07:27:21 schrieb Alexander Dorofeyev:
Hi.
Colorkey emulation by alpha test should be disabled when game sets no texture (or texture without colorkey) and reenabled when needed. Dirtifying a state here, so that state_alpha will be called, fixes the problem. In theory the texture stage handler calls the colorkey handler if a color key change condition is met. Can you check why the call to state_alpha() in sampler() in state.c, line 2415 isn't called properly?
Oops, too bad I didn't notice it's supposed to happen in sampler. Why that isn't called - I think it's because that check at line 2415 is inside if(stateblock->textures[sampler]) { block. Since the app is setting texture to NULL, it's not entering. Taking the colorkey part out of this block helps. I guess it will be a better fix then. Stefan Dösinger wrote:
Am Donnerstag, 27. Dezember 2007 07:27:21 schrieb Alexander Dorofeyev:
Hi.
Colorkey emulation by alpha test should be disabled when game sets no texture (or texture without colorkey) and reenabled when needed. Dirtifying a state here, so that state_alpha will be called, fixes the problem. In theory the texture stage handler calls the colorkey handler if a color key change condition is met. Can you check why the call to state_alpha() in sampler() in state.c, line 2415 isn't called properly?
participants (2)
-
Alexander Dorofeyev -
Stefan Dösinger