[PATCH] WineD3D: Split the psizemax state handler=0A=

Stefan Doesinger stefan at codeweavers.com
Sat Jul 5 15:47:59 CDT 2008


=0A=
---=0A=
 dlls/wined3d/state.c |   37 +++++++++++++++++++++++++++----------=0A=
 1 files changed, 27 insertions(+), 10 deletions(-)=0A=
=0A=
diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c=0A=
index f37ba5f..ee1f5a8 100644=0A=
--- a/dlls/wined3d/state.c=0A=
+++ b/dlls/wined3d/state.c=0A=
@@ -1433,21 +1433,36 @@ static void state_psizemin_arb(DWORD state, =
IWineD3DStateBlockImpl *stateblock,=0A=
     checkGLcall("glPointParameterfARB(...)");=0A=
 }=0A=
 =0A=
-static void state_psizemax(DWORD state, IWineD3DStateBlockImpl =
*stateblock, WineD3DContext *context) {=0A=
+static void state_psizemax_arb(DWORD state, IWineD3DStateBlockImpl =
*stateblock, WineD3DContext *context) {=0A=
     union {=0A=
         DWORD d;=0A=
         float f;=0A=
     } tmpvalue;=0A=
 =0A=
     tmpvalue.d =3D stateblock->renderState[WINED3DRS_POINTSIZE_MAX];=0A=
-    if(GL_SUPPORT(ARB_POINT_PARAMETERS)) {=0A=
-        GL_EXTCALL(glPointParameterfARB)(GL_POINT_SIZE_MAX_ARB, =
tmpvalue.f);=0A=
-        checkGLcall("glPointParameterfARB(...)");=0A=
-    }=0A=
-    else if(GL_SUPPORT(EXT_POINT_PARAMETERS)) {=0A=
-        GL_EXTCALL(glPointParameterfEXT)(GL_POINT_SIZE_MAX_EXT, =
tmpvalue.f);=0A=
-        checkGLcall("glPointParameterfEXT(...)");=0A=
-    } else if(tmpvalue.f !=3D 64.0) {=0A=
+    GL_EXTCALL(glPointParameterfARB)(GL_POINT_SIZE_MAX_ARB, tmpvalue.f);=0A=
+    checkGLcall("glPointParameterfARB(...)");=0A=
+}=0A=
+=0A=
+static void state_psizemax_ext(DWORD state, IWineD3DStateBlockImpl =
*stateblock, WineD3DContext *context) {=0A=
+    union {=0A=
+        DWORD d;=0A=
+        float f;=0A=
+    } tmpvalue;=0A=
+=0A=
+    tmpvalue.d =3D stateblock->renderState[WINED3DRS_POINTSIZE_MAX];=0A=
+    GL_EXTCALL(glPointParameterfEXT)(GL_POINT_SIZE_MAX_EXT, tmpvalue.f);=0A=
+    checkGLcall("glPointParameterfEXT(...)");=0A=
+}=0A=
+=0A=
+static void state_psizemax_w(DWORD state, IWineD3DStateBlockImpl =
*stateblock, WineD3DContext *context) {=0A=
+    union {=0A=
+        DWORD d;=0A=
+        float f;=0A=
+    } tmpvalue;=0A=
+=0A=
+    tmpvalue.d =3D stateblock->renderState[WINED3DRS_POINTSIZE_MAX];=0A=
+    if(tmpvalue.f !=3D 64.0) {=0A=
         FIXME("WINED3DRS_POINTSIZE_MAX not supported on this opengl, =
value is %f\n", tmpvalue.f);=0A=
     }=0A=
 }=0A=
@@ -4323,7 +4338,9 @@ const struct StateEntryTemplate =
ffp_vertexstate_template[] =3D {=0A=
     { STATE_RENDER(WINED3DRS_POINTSCALE_A),               { =
STATE_RENDER(WINED3DRS_POINTSCALEENABLE),           state_pscale        =
}, 0                               },=0A=
     { STATE_RENDER(WINED3DRS_POINTSCALE_B),               { =
STATE_RENDER(WINED3DRS_POINTSCALEENABLE),           state_pscale        =
}, 0                               },=0A=
     { STATE_RENDER(WINED3DRS_POINTSCALE_C),               { =
STATE_RENDER(WINED3DRS_POINTSCALEENABLE),           state_pscale        =
}, 0                               },=0A=
-    { STATE_RENDER(WINED3DRS_POINTSIZE_MAX),              { =
STATE_RENDER(WINED3DRS_POINTSIZE_MAX),              state_psizemax      =
}, 0                               },=0A=
+    { STATE_RENDER(WINED3DRS_POINTSIZE_MAX),              { =
STATE_RENDER(WINED3DRS_POINTSIZE_MAX),              state_psizemax_arb  =
}, ARB_POINT_PARAMETERS            },=0A=
+    { STATE_RENDER(WINED3DRS_POINTSIZE_MAX),              { =
STATE_RENDER(WINED3DRS_POINTSIZE_MAX),              state_psizemax_ext  =
}, EXT_POINT_PARAMETERS            },=0A=
+    { STATE_RENDER(WINED3DRS_POINTSIZE_MAX),              { =
STATE_RENDER(WINED3DRS_POINTSIZE_MAX),              state_psizemax_w    =
}, 0                               },=0A=
     /* Samplers for NP2 texture matrix adjustions */=0A=
     { STATE_SAMPLER(0),                                   { =
STATE_SAMPLER(0),                                   sampler_texmatrix   =
}, 0                               },=0A=
     { STATE_SAMPLER(1),                                   { =
STATE_SAMPLER(1),                                   sampler_texmatrix   =
}, 0                               },=0A=
-- =0A=
1.5.4.5=0A=
=0A=

------=_NextPart_000_0013_01C8E78B.FF7AD6D0--




More information about the wine-patches mailing list