Am 30.09.2009 um 16:22 schrieb Henri Verbeet:
I prefer that all d3d version specific behaviors in wined3d(ie, those that can't be handled by the client lib alone) are controlled by one wined3d parameter. I don't feel strongly about this though. I could as well make them a parameter of CreateVertexBuffer if you prefer this.
I think it might make more sense there, although I suppose there's something to say for keeping the differences centralised as well.
Are the patches ok with you in that case? Otherwise I'll just fix bug 19365 with the old dxVersion hack and implement whatever properly designed setup you prefer the next time I have a few hours to kill (read: On my 16 hour flight to the google mentor summit later next month)
Is there any reason you're not sending these mails to wine-devel as well?
Apparently because the "reply" button in Apple Mail doesn't do the same as the "reply" button in kmail. Apparently because there's no "reply to mailing list" either.
009/9/30 Stefan Dösinger stefandoesinger@gmx.at:
Are the patches ok with you in that case? Otherwise I'll just fix bug 19365 with the old dxVersion hack and implement whatever properly designed setup you prefer the next time I have a few hours to kill(read: On my 16 hour flight to the google mentor summit later next month)
Just fix 19365 with a dxVersion check I'd say, that bug has been in its current state long enough.
Am 30.09.2009 um 16:47 schrieb Henri Verbeet:
009/9/30 Stefan Dösinger stefandoesinger@gmx.at:
Are the patches ok with you in that case? Otherwise I'll just fix bug 19365 with the old dxVersion hack and implement whatever properly designed setup you prefer the next time I have a few hours to kill(read: On my 16 hour flight to the google mentor summit later next month)
Just fix 19365 with a dxVersion check I'd say, that bug has been in its current state long enough.
OK
that still leaves the question how to get rid of dxVersion in the long run open
We could use the global flags as my patches here do. (I attached the full set for reference)
Or we could use API specific flags that are placed close to where the difference occurs(ie, a CreateVertexBuffer flag(or a classic usage flag that is filtered by d3d8/9). Easy for 4, 5, 8, 9, but is more tricky for 2, 3 and 6(flag has to be set during object creation)
4 and 9 could be handled in the client lib as well. For patch 9 we'd have to duplicate the stateblock logic in ddraw (or d3d8+d3d9) to make GetViewport work correctly during BeginStateblock() - SetRenderTarget - EndStateblock.