On 2/12/20 00:02, Henri Verbeet wrote:
That won't work; see the way e.g. d3d9_device_SetRenderState() works after Zebediah's recent changes.
I.e., if the application does something like the following:
SetRenderState(..., D3DRS_POINTSIZE, ...); SetRenderState(..., D3DRS_POINTSIZE, ...); SetRenderState(..., D3DRS_POINTSIZE, ...); DrawPrimitive(...);
wined3d will never see the first two D3DRS_POINTSIZE values, and will only see the third one once the DrawPrimitive() call is made.
Oh yeah, I just realized that too. So maybe it is better to move the logic to d3d9 and provide blend state object from there? Or maybe just ignore this state triggering logic and let those states behave like normal states until we find an application which wants it the other way?