wined3d: Fixed render states

Vitaly Budovski vbudovsk at cs.rmit.edu.au
Tue Jan 31 07:47:56 CST 2006


H. Verbeet wrote:
> 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.
>   
How would I do this?
>   
>> +        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.
>   
Typo, I'll fix that.
>> +        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).
>   
Will be submitted as a separate patch. Falls back to the EXT version for 
now.
>> -                /* 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.
>   
This seems to be a bug with (some?) ATI hardware/drivers.
Point smoothing should normally be supported I believe.
>> +            checkGLcall("glEnable(Gl_LINE_SMOOTH)");
>> +            checkGLcall("glDisable(Gl_LINE_SMOOTH)");
>>     
> That should probably say Gl_LINE_SMOOTH, but it's not really critical
>   
Non-critical typo, but will be fixed when I resend the patch.




More information about the wine-devel mailing list