Module: wine Branch: master Commit: e4e28c47ea2cc6a75c027687fa1e1962ab1ff29c URL: http://source.winehq.org/git/wine.git/?a=commit;h=e4e28c47ea2cc6a75c027687fa...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Thu Mar 31 20:04:44 2011 +0200
wined3d: Fix the EXT_blend_color extension definitions.
---
dlls/wined3d/state.c | 16 ++++++++-------- dlls/wined3d/wined3d_gl.h | 14 +++++++++++++- 2 files changed, 21 insertions(+), 9 deletions(-)
diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c index a37f8ce..ad9374d 100644 --- a/dlls/wined3d/state.c +++ b/dlls/wined3d/state.c @@ -314,8 +314,8 @@ static void state_blend(DWORD state, struct wined3d_stateblock *stateblock, stru FIXME("WINED3DRS_DESTBLEND = WINED3DBLEND_BOTHINVSRCALPHA, what to do?\n"); break;
- case WINED3DBLEND_BLENDFACTOR : dstBlend = GL_CONSTANT_COLOR; break; - case WINED3DBLEND_INVBLENDFACTOR : dstBlend = GL_ONE_MINUS_CONSTANT_COLOR; break; + case WINED3DBLEND_BLENDFACTOR : dstBlend = GL_CONSTANT_COLOR_EXT; break; + case WINED3DBLEND_INVBLENDFACTOR : dstBlend = GL_ONE_MINUS_CONSTANT_COLOR_EXT; break; default: FIXME("Unrecognized dst blend value %#x.\n", stateblock->state.render_states[WINED3DRS_DESTBLEND]); @@ -348,8 +348,8 @@ static void state_blend(DWORD state, struct wined3d_stateblock *stateblock, stru dstBlend = GL_SRC_ALPHA; break;
- case WINED3DBLEND_BLENDFACTOR : srcBlend = GL_CONSTANT_COLOR; break; - case WINED3DBLEND_INVBLENDFACTOR : srcBlend = GL_ONE_MINUS_CONSTANT_COLOR; break; + case WINED3DBLEND_BLENDFACTOR : srcBlend = GL_CONSTANT_COLOR_EXT; break; + case WINED3DBLEND_INVBLENDFACTOR : srcBlend = GL_ONE_MINUS_CONSTANT_COLOR_EXT; break; default: FIXME("Unrecognized src blend value %#x.\n", stateblock->state.render_states[WINED3DRS_SRCBLEND]); @@ -417,8 +417,8 @@ static void state_blend(DWORD state, struct wined3d_stateblock *stateblock, stru srcBlendAlpha = GL_ONE_MINUS_SRC_ALPHA; FIXME("WINED3DRS_DESTBLENDALPHA = WINED3DBLEND_BOTHINVSRCALPHA, what to do?\n"); break; - case WINED3DBLEND_BLENDFACTOR : dstBlendAlpha = GL_CONSTANT_COLOR; break; - case WINED3DBLEND_INVBLENDFACTOR : dstBlendAlpha = GL_ONE_MINUS_CONSTANT_COLOR; break; + case WINED3DBLEND_BLENDFACTOR : dstBlendAlpha = GL_CONSTANT_COLOR_EXT; break; + case WINED3DBLEND_INVBLENDFACTOR : dstBlendAlpha = GL_ONE_MINUS_CONSTANT_COLOR_EXT; break; default: FIXME("Unrecognized dst blend alpha value %#x.\n", stateblock->state.render_states[WINED3DRS_DESTBLENDALPHA]); @@ -445,8 +445,8 @@ static void state_blend(DWORD state, struct wined3d_stateblock *stateblock, stru srcBlendAlpha = GL_ONE_MINUS_SRC_ALPHA; dstBlendAlpha = GL_SRC_ALPHA; break; - case WINED3DBLEND_BLENDFACTOR : srcBlendAlpha = GL_CONSTANT_COLOR; break; - case WINED3DBLEND_INVBLENDFACTOR : srcBlendAlpha = GL_ONE_MINUS_CONSTANT_COLOR; break; + case WINED3DBLEND_BLENDFACTOR : srcBlendAlpha = GL_CONSTANT_COLOR_EXT; break; + case WINED3DBLEND_INVBLENDFACTOR : srcBlendAlpha = GL_ONE_MINUS_CONSTANT_COLOR_EXT; break; default: FIXME("Unrecognized src blend alpha value %#x.\n", stateblock->state.render_states[WINED3DRS_SRCBLENDALPHA]); diff --git a/dlls/wined3d/wined3d_gl.h b/dlls/wined3d/wined3d_gl.h index 4c20e70..fc362a7 100644 --- a/dlls/wined3d/wined3d_gl.h +++ b/dlls/wined3d/wined3d_gl.h @@ -2970,6 +2970,18 @@ typedef void (WINE_GLAPI *PGLFNSTENCILFUNCSEPARATEATIPROC)(GLenum, GLenum, GLint #define GL_MIRROR_CLAMP_TO_EDGE_ATI 0x8743 #endif
+/* GL_EXT_blend_color */ +#ifndef GL_EXT_blend_color +#define GL_EXT_blend_color 1 +#define GL_CONSTANT_COLOR_EXT 0x8001 +#define GL_ONE_MINUS_CONSTANT_COLOR_EXT 0x8002 +#define GL_CONSTANT_ALPHA_EXT 0x8003 +#define GL_ONE_MINUS_CONSTANT_ALPHA_EXT 0x8004 +#define GL_BLEND_COLOR_EXT 0x8005 +#endif +typedef GLvoid (WINE_GLAPI *PGLFNBLENDCOLOREXTPROC)(GLclampf red, + GLclampf green, GLclampf blue, GLclampf alpha); + /* GL_EXT_blend_equation_separate */ typedef void (WINE_GLAPI *PGLFNBLENDEQUATIONSEPARATEEXTPROC)(GLenum modeRGB, GLenum modeAlpha);
@@ -4237,7 +4249,7 @@ typedef BOOL (WINAPI *WINED3D_PFNWGLSWAPINTERVALEXTPROC)(int interval); USE_GL_FUNC(PGLFNSTENCILFUNCSEPARATEATIPROC, \ glStencilFuncSeparateATI, ATI_SEPARATE_STENCIL, NULL) \ /* GL_EXT_blend_color */ \ - USE_GL_FUNC(PGLFNBLENDCOLORPROC, \ + USE_GL_FUNC(PGLFNBLENDCOLOREXTPROC, \ glBlendColorEXT, EXT_BLEND_COLOR, NULL) \ /* GL_EXT_blend_equation_separate */ \ USE_GL_FUNC(PGLFNBLENDFUNCSEPARATEEXTPROC, \