question about fixing D3DRENDERSTATE_TEXTUREMAPBLEND

Alexander Dorofeyev alexd4 at inbox.lv
Wed Jan 9 03:54:28 CST 2008


I ran a little test, it didn't show any differences in Wine or XP in such case 
(D3DTA_TEXTURE alpha selected and no alpha in texture pixelformat). This seems 
to give alpha=1.0. I found nothing on this at msdn, but it more or less makes 
sense (no alpha = opaque image). Do you think there would be any use in adding 
such test to ddraw/tests/visual.c?

Stefan Dösinger wrote:
> Am Montag, 7. Januar 2008 07:55:08 schrieb Alexander Dorofeyev:
>> "D3DTBLEND_MODULATE Modulate texture-blending is supported. In this mode,
>> the RGB values of the texture are multiplied with the RGB values that would
>> have been used with no texturing. Any alpha values in the texture replace
>> the alpha values that would have been used with no texturing."
> D3DTA_TEXTURE has a somewhat strange behavior. If no texture is set, it 
> behaves like D3DTA_PREVIOUS. Perhaps for alphaarg it behaves similarly if 
> there is a texture, but it has no alpha. If that is the case, then I think it 
> matches what you need for D3DTBLEND_MODULATE. Otherwise I think a private 
> value like your D3DTOP_DX6MODULATE is the only way.
> 
> So I'd say test how D3DTA_TEXTURE should behave, maybe we implement it 
> incorrectly at the moment.
> 
> 




More information about the wine-devel mailing list