Henri Verbeet : wined3d: Add support for EXT_draw_buffers2.
Alexandre Julliard
julliard at winehq.org
Fri Mar 26 12:11:49 CDT 2010
Module: wine
Branch: master
Commit: 13a57c81f079474be73d8ef82a504c08d609ce9a
URL: http://source.winehq.org/git/wine.git/?a=commit;h=13a57c81f079474be73d8ef82a504c08d609ce9a
Author: Henri Verbeet <hverbeet at codeweavers.com>
Date: Thu Mar 25 22:51:23 2010 +0100
wined3d: Add support for EXT_draw_buffers2.
---
dlls/wined3d/directx.c | 1 +
dlls/wined3d/wined3d_gl.h | 23 +++++++++++++++++++++++
2 files changed, 24 insertions(+), 0 deletions(-)
diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c
index b136eb4..084e56b 100644
--- a/dlls/wined3d/directx.c
+++ b/dlls/wined3d/directx.c
@@ -104,6 +104,7 @@ static const struct {
{"GL_EXT_blend_equation_separate", EXT_BLEND_EQUATION_SEPARATE, 0 },
{"GL_EXT_blend_func_separate", EXT_BLEND_FUNC_SEPARATE, 0 },
{"GL_EXT_blend_minmax", EXT_BLEND_MINMAX, 0 },
+ {"GL_EXT_draw_buffers2", EXT_DRAW_BUFFERS2, 0 },
{"GL_EXT_fog_coord", EXT_FOG_COORD, 0 },
{"GL_EXT_framebuffer_blit", EXT_FRAMEBUFFER_BLIT, 0 },
{"GL_EXT_framebuffer_multisample", EXT_FRAMEBUFFER_MULTISAMPLE, 0 },
diff --git a/dlls/wined3d/wined3d_gl.h b/dlls/wined3d/wined3d_gl.h
index 9b46dd7..b529c52 100644
--- a/dlls/wined3d/wined3d_gl.h
+++ b/dlls/wined3d/wined3d_gl.h
@@ -1782,6 +1782,7 @@ typedef enum wined3d_gl_extension
EXT_BLEND_EQUATION_SEPARATE,
EXT_BLEND_FUNC_SEPARATE,
EXT_BLEND_MINMAX,
+ EXT_DRAW_BUFFERS2,
EXT_FOG_COORD,
EXT_FRAMEBUFFER_BLIT,
EXT_FRAMEBUFFER_MULTISAMPLE,
@@ -2958,6 +2959,15 @@ typedef void (WINE_GLAPI *PGLFNBLENDEQUATIONSEPARATEEXTPROC)(GLenum modeRGB, GLe
typedef void (WINE_GLAPI *PGLFNBLENDFUNCSEPARATEEXTPROC)(GLenum sfactorRGB, GLenum dfactorRGB,
GLenum sfactorAlpha, GLenum dfactorAlpha);
+/* GL_EXT_draw_buffers2 */
+typedef GLvoid (WINE_GLAPI *PGLFNCOLORMASKINDEXEDEXTPROC)(GLuint buffer_idx, GLboolean r, GLboolean g,
+ GLboolean b, GLboolean a);
+typedef GLvoid (WINE_GLAPI *PGLFNGETBOOLEANINDEXEDVEXTPROC)(GLenum param, GLuint index, GLboolean *value);
+typedef GLvoid (WINE_GLAPI *PGLFNGETINTEGERINDEXEDVEXTPROC)(GLenum param, GLuint index, GLint *value);
+typedef GLvoid (WINE_GLAPI *PGLFNENABLEINDEXEDEXTPROC)(GLenum target, GLuint index);
+typedef GLvoid (WINE_GLAPI *PGLFNDISABLEINDEXEDEXTPROC)(GLenum target, GLuint index);
+typedef GLboolean (WINE_GLAPI *PGLFNISENABLEDINDEXEDEXTPROC)(GLenum target, GLuint index);
+
/* GL_EXT_fog_coord */
#ifndef GL_EXT_fog_coord
#define GL_EXT_fog_coord 1
@@ -4178,6 +4188,19 @@ typedef BOOL (WINAPI *WINED3D_PFNWGLSETPIXELFORMATWINE)(HDC hdc, int iPixelForma
/* GL_EXT_blend_func_separate */ \
USE_GL_FUNC(PGLFNBLENDEQUATIONSEPARATEEXTPROC, \
glBlendEquationSeparateEXT, EXT_BLEND_EQUATION_SEPARATE, NULL) \
+ /* GL_EXT_draw_buffers2 */ \
+ USE_GL_FUNC(PGLFNCOLORMASKINDEXEDEXTPROC, \
+ glColorMaskIndexedEXT, EXT_DRAW_BUFFERS2, NULL) \
+ USE_GL_FUNC(PGLFNGETBOOLEANINDEXEDVEXTPROC, \
+ glGetBooleanIndexedvEXT, EXT_DRAW_BUFFERS2, NULL) \
+ USE_GL_FUNC(PGLFNGETINTEGERINDEXEDVEXTPROC, \
+ glGetIntegerIndexedvEXT, EXT_DRAW_BUFFERS2, NULL) \
+ USE_GL_FUNC(PGLFNENABLEINDEXEDEXTPROC, \
+ glEnableIndexedEXT, EXT_DRAW_BUFFERS2, NULL) \
+ USE_GL_FUNC(PGLFNDISABLEINDEXEDEXTPROC, \
+ glDisableIndexedEXT, EXT_DRAW_BUFFERS2, NULL) \
+ USE_GL_FUNC(PGLFNISENABLEDINDEXEDEXTPROC, \
+ glIsEnabledIndexedEXT, EXT_DRAW_BUFFERS2, NULL) \
/* GL_EXT_fog_coord */ \
USE_GL_FUNC(PGLFNGLFOGCOORDFEXTPROC, \
glFogCoordfEXT, EXT_FOG_COORD, NULL) \
More information about the wine-cvs
mailing list