[1/2] wined3d: Add GL_EXT_framebuffer_blit to extension handler

Fabian Bieler der.fabe at gmx.net
Thu Apr 5 15:52:16 CDT 2007


-------------- next part --------------
From a293f61a54ad0bfb16a12af3d59c9cea7b6413b2 Mon Sep 17 00:00:00 2001
From: Fabian Bieler <der.fabe at gmx.net>
Date: Thu, 5 Apr 2007 20:59:20 +0200
Subject: [PATCH] wined3d: Add GL_EXT_framebuffer_blit to extension handler

---
 dlls/wined3d/directx.c    |    3 +++
 include/wine/wined3d_gl.h |   12 ++++++++++++
 2 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c
index 2d4024f..6ba4c28 100644
--- a/dlls/wined3d/directx.c
+++ b/dlls/wined3d/directx.c
@@ -679,6 +679,9 @@ BOOL IWineD3DImpl_FillGLCaps(IWineD3D *iface, Display* display) {
             } else if (strcmp(ThisExtn, "GL_EXT_framebuffer_object") == 0) {
                 TRACE_(d3d_caps)(" FOUND: EXT Frame Buffer Object support\n");
                 gl_info->supported[EXT_FRAMEBUFFER_OBJECT] = TRUE;
+            } else if (strcmp(ThisExtn, "GL_EXT_framebuffer_blit") == 0) {
+                TRACE_(d3d_caps)(" FOUND: EXT Frame Buffer Blit support\n");
+                gl_info->supported[EXT_FRAMEBUFFER_BLIT] = TRUE;
             } else if (strcmp(ThisExtn, "GL_EXT_blend_minmax") == 0) {
                 TRACE_(d3d_caps)(" FOUND: EXT Blend minmax support\n");
                 gl_info->supported[EXT_BLEND_MINMAX] = TRUE;
diff --git a/include/wine/wined3d_gl.h b/include/wine/wined3d_gl.h
index 1b4744f..7a2ffdb 100644
--- a/include/wine/wined3d_gl.h
+++ b/include/wine/wined3d_gl.h
@@ -364,6 +364,15 @@ typedef void (APIENTRY * PGLFNGLFRAMEBUFFERTEXTURE3DEXTPROC)(GLenum target, GLen
 typedef void (APIENTRY * PGLFNGLFRAMEBUFFERRENDERBUFFEREXTPROC)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
 typedef void (APIENTRY * PGLFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC)(GLenum target, GLenum attachment, GLenum pname, GLint *params);
 typedef void (APIENTRY * PGLFNGLGENERATEMIPMAPEXTPROC)(GLenum target);
+/* GL_EXT_framebuffer_blit */
+#ifndef GL_EXT_framebuffer_blit
+#define GL_EXT_framebuffer_blit 1
+#define GL_READ_FRAMEBUFFER_EXT                0x8CA8
+#define GL_DRAW_FRAMEBUFFER_EXT                0x8CA9
+#define GL_DRAW_FRAMEBUFFER_BINDING_EXT        0x8CA6
+#define GL_READ_FRAMEBUFFER_BINDING_EXT        0x8CAA
+#endif
+typedef void (APIENTRY * PGLFNGLBLITFRAMEBUFFEREXTPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
 /* GL_EXT_secondary_color */
 #ifndef GL_EXT_secondary_color
 #define GL_EXT_secondary_color 1
@@ -1508,6 +1517,7 @@ typedef enum _GL_SupportedExt {
   EXT_BLEND_MINMAX,
   EXT_FOG_COORD,
   EXT_FRAMEBUFFER_OBJECT,
+  EXT_FRAMEBUFFER_BLIT,
   EXT_PALETTED_TEXTURE,
   EXT_PIXEL_BUFFER_OBJECT,
   EXT_POINT_PARAMETERS,
@@ -1622,6 +1632,8 @@ typedef enum _GL_SupportedExt {
     USE_GL_FUNC(PGLFNGLGENERATEMIPMAPEXTPROC,          glGenerateMipmapEXT); \
     USE_GL_FUNC(PGLFNGLGETRENDERBUFFERPARAMETERIVEXTPROC, glGetRenderbufferParameterivEXT); \
     USE_GL_FUNC(PGLFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC, glGetFramebufferAttachmentParameterivEXT); \
+    /* GL_EXT_framebuffer_blit */ \
+    USE_GL_FUNC(PGLFNGLBLITFRAMEBUFFEREXTPROC, glBlitFramebufferEXT); \
     /* GL_EXT_paletted_texture */ \
     USE_GL_FUNC(PGLFNGLCOLORTABLEEXTPROC,             glColorTableEXT); \
     /* GL_EXT_point_parameters */ \
-- 
1.4.4.1



More information about the wine-patches mailing list