wined3d: Fixed render states

H. Verbeet hverbeet at gmail.com
Tue Jan 31 07:13:40 CST 2006


On 31/01/06, Vitaly Budovski <vbudovsk at cs.rmit.edu.au> wrote:
> wined3d: Fixed up render states POINTSCALEENABLE, POINTSPRITENABLE,
> EDGEANTIALIAS, MULTISAMPLEANTIALIAS
You probably want to split the patch up in smaller pieces.

> +        if(This->stateBlock->renderState[D3DRS_POINTSCALEENABLE]) {
> +            att[0] = *((float*)&This->stateBlock->renderState[D3DRS_POINTSCALE_A]) /
> +                (This->stateBlock->viewport.Height * This->stateBlock->viewport.Height);
> +            att[1] = *((float*)&This->stateBlock->renderState[D3DRS_POINTSCALE_B]) /
> +                (This->stateBlock->viewport.Height * This->stateBlock->viewport.Height);
> +            att[2] = *((float*)&This->stateBlock->renderState[D3DRS_POINTSCALE_C]) /
> +                (This->stateBlock->viewport.Height * This->stateBlock->viewport.Height);
> +        }
You're not supposed to use D3DRS_ stuff in wined3d, rather use the
respective WINED3DRS_ defines, as the original code did.

> +        if(GL_SUPPORT(ARB_POINT_PARAMETERS)) {
Same problem as with your patch for d3d8, wined3d doesn't currently
check for ARB_POINT_PARAMETERS support (in IWineD3DImpl_FillGLCaps).

> -                /* Doesn't work with GL_POINT_SMOOTH on on my ATI 9600, but then ATI drivers are buggered! */
> -                glDisable(GL_POINT_SMOOTH);
Did you verify that this isn't required anymore? Otherwise that's a
potential regression.

> +            checkGLcall("glEnable(Gl_LINE_SMOOTH)");
> +            checkGLcall("glDisable(Gl_LINE_SMOOTH)");
That should probably say Gl_LINE_SMOOTH, but it's not really critical.



More information about the wine-devel mailing list