[PATCH] WineD3D: Split th psizemin handler up=0A=
Stefan Doesinger
stefan at codeweavers.com
Sat Jul 5 15:45:39 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 644cf79..f37ba5f 100644=0A=
--- a/dlls/wined3d/state.c=0A=
+++ b/dlls/wined3d/state.c=0A=
@@ -1399,25 +1399,40 @@ static void state_normalize(DWORD state, =
IWineD3DStateBlockImpl *stateblock, Win=0A=
}=0A=
}=0A=
=0A=
-static void state_psizemin(DWORD state, IWineD3DStateBlockImpl =
*stateblock, WineD3DContext *context) {=0A=
+static void state_psizemin_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_MIN];=0A=
- if(GL_SUPPORT(ARB_POINT_PARAMETERS)) {=0A=
- GL_EXTCALL(glPointParameterfARB)(GL_POINT_SIZE_MIN_ARB, =
tmpvalue.f);=0A=
- checkGLcall("glPointParameterfARB(...)");=0A=
- }=0A=
- else if(GL_SUPPORT(EXT_POINT_PARAMETERS)) {=0A=
- GL_EXTCALL(glPointParameterfEXT)(GL_POINT_SIZE_MIN_EXT, =
tmpvalue.f);=0A=
- checkGLcall("glPointParameterfEXT(...)");=0A=
- } else if(tmpvalue.f !=3D 1.0) {=0A=
+ if(tmpvalue.f !=3D 1.0) {=0A=
FIXME("WINED3DRS_POINTSIZE_MIN not supported on this opengl, =
value is %f\n", tmpvalue.f);=0A=
}=0A=
}=0A=
=0A=
+static void state_psizemin_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_MIN];=0A=
+ GL_EXTCALL(glPointParameterfEXT)(GL_POINT_SIZE_MIN_EXT, tmpvalue.f);=0A=
+ checkGLcall("glPointParameterfEXT(...)");=0A=
+}=0A=
+=0A=
+static void state_psizemin_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_MIN];=0A=
+ GL_EXTCALL(glPointParameterfARB)(GL_POINT_SIZE_MIN_ARB, tmpvalue.f);=0A=
+ checkGLcall("glPointParameterfARB(...)");=0A=
+}=0A=
+=0A=
static void state_psizemax(DWORD state, IWineD3DStateBlockImpl =
*stateblock, WineD3DContext *context) {=0A=
union {=0A=
DWORD d;=0A=
@@ -4300,7 +4315,9 @@ const struct StateEntryTemplate =
ffp_vertexstate_template[] =3D {=0A=
{ STATE_RENDER(WINED3DRS_EMISSIVEMATERIALSOURCE), { =
STATE_RENDER(WINED3DRS_COLORVERTEX), state_colormat =
}, 0 },=0A=
{ STATE_RENDER(WINED3DRS_VERTEXBLEND), { =
STATE_RENDER(WINED3DRS_VERTEXBLEND), state_vertexblend =
}, 0 },=0A=
{ STATE_RENDER(WINED3DRS_POINTSIZE), { =
STATE_RENDER(WINED3DRS_POINTSCALEENABLE), state_pscale =
}, 0 },=0A=
- { STATE_RENDER(WINED3DRS_POINTSIZE_MIN), { =
STATE_RENDER(WINED3DRS_POINTSIZE_MIN), state_psizemin =
}, 0 },=0A=
+ { STATE_RENDER(WINED3DRS_POINTSIZE_MIN), { =
STATE_RENDER(WINED3DRS_POINTSIZE_MIN), state_psizemin_arb =
}, ARB_POINT_PARAMETERS },=0A=
+ { STATE_RENDER(WINED3DRS_POINTSIZE_MIN), { =
STATE_RENDER(WINED3DRS_POINTSIZE_MIN), state_psizemin_ext =
}, EXT_POINT_PARAMETERS },=0A=
+ { STATE_RENDER(WINED3DRS_POINTSIZE_MIN), { =
STATE_RENDER(WINED3DRS_POINTSIZE_MIN), state_psizemin_w =
}, 0 },=0A=
{ STATE_RENDER(WINED3DRS_POINTSPRITEENABLE), { =
STATE_RENDER(WINED3DRS_POINTSPRITEENABLE), state_pointsprite =
}, 0 },=0A=
{ STATE_RENDER(WINED3DRS_POINTSCALEENABLE), { =
STATE_RENDER(WINED3DRS_POINTSCALEENABLE), state_pscale =
}, 0 },=0A=
{ STATE_RENDER(WINED3DRS_POINTSCALE_A), { =
STATE_RENDER(WINED3DRS_POINTSCALEENABLE), state_pscale =
}, 0 },=0A=
-- =0A=
1.5.4.5=0A=
=0A=
------=_NextPart_000_0011_01C8E609.E5B5F320--
More information about the wine-patches
mailing list