WineD3D: Handle WINED3DSPSM_DZ and WINED3DSPSM_DW in texcrd in arb shaders

Stefan Dösinger stefandoesinger at
Sun Mar 25 07:27:23 CDT 2007

> No, 2.0+ has the D3DSI_TEXLD_PROJECT, 1.4 has _dw/_dz modifiers and
> pre-1.4 has the fixed function D3DTTFF_PROJECTED flag.
Oh oops, its a < ps_2.0 check, not a >= :-) Anyway, I think that should go 
into a different patch :-)

> You do bring up another issue though... I think we should decide on
> what the ARB backend is supposed to implement. Right now it's a bit of
> a mess with some parts only supporting up to ps_1.3, other parts doing
> ps_1.4, and some broken support for vs_2.0 added in. (eg. mova). I
> think that if we're going to say we don't support anything higher than
> ps_1.3 there, we shouldn't try to compile shaders with higher versions
> either.
How much does ARB_fragment_program support? AFAIK it does up to and including 
ps_1.4, for 2.0 some features like loops are missing. Is there anything in 
1.4 that isn't supported by arb fp?

IMO we should support at least ps_1.4, and if there is something that arb fp 
does not support write an ERR to tell the user to switch to glsl. If we have 
support for 2.0 things like mova(*) or someone contributes 2.0 features we 
shouldn't refuse that as long as it fits nicely into the code. I personally 
don't plan to add any tricky 2.0 or 3.0 features to the arb shader 
path(unless MacOS forces me to try)

(*) If we do not advertize 2.0 shaders with arb how come that some of Andras' 
games used mova with arb? Did the game ignore the limit and we do not 
complain if it violates them?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url :

More information about the wine-devel mailing list