diff --git a/src/MiniTK/Graphics/OpenGL/GL.cs b/src/MiniTK/Graphics/OpenGL/GL.cs index a4c3c79..6e51c20 100644 --- a/src/MiniTK/Graphics/OpenGL/GL.cs +++ b/src/MiniTK/Graphics/OpenGL/GL.cs @@ -114563,6 +114563,43 @@ namespace OpenTK.Graphics.OpenGL #endif } + /// [requires: EXT_framebuffer_blit] + /// Copy a block of pixels from the read framebuffer to the draw framebuffer + /// + /// + /// + /// Specify the bounds of the source rectangle within the read buffer of the read framebuffer. + /// + /// + /// + /// + /// Specify the bounds of the destination rectangle within the write buffer of the write framebuffer. + /// + /// + /// + /// + /// The bitwise OR of the flags indicating which buffers are to be copied. The allowed flags are GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT and GL_STENCIL_BUFFER_BIT. + /// + /// + /// + /// + /// Specifies the interpolation to be applied if the image is stretched. Must be GL_NEAREST or GL_LINEAR. + /// + /// + [AutoGenerated(Category = "EXT_framebuffer_blit", Version = "1.5", EntryPoint = "glBlitFramebufferEXT")] + public static + void BlitFramebuffer(Int32 srcX0, Int32 srcY0, Int32 srcX1, Int32 srcY1, Int32 dstX0, Int32 dstY0, Int32 dstX1, Int32 dstY1, OpenTK.Graphics.OpenGL.ClearBufferMask mask, OpenTK.Graphics.OpenGL.ExtFramebufferBlit filter) + { +#if DEBUG + using (new ErrorHelper(GraphicsContext.CurrentContext)) + { +#endif + Delegates.glBlitFramebufferEXT((Int32)srcX0, (Int32)srcY0, (Int32)srcX1, (Int32)srcY1, (Int32)dstX0, (Int32)dstY0, (Int32)dstX1, (Int32)dstY1, (OpenTK.Graphics.OpenGL.ClearBufferMask)mask, (OpenTK.Graphics.OpenGL.ExtFramebufferBlit)filter); +#if DEBUG + } +#endif + } + /// [requires: EXT_framebuffer_blit] /// Copy a block of pixels from the read framebuffer to the draw framebuffer diff --git a/src/MiniTK/Graphics/OpenGL/GLDelegates.cs b/src/MiniTK/Graphics/OpenGL/GLDelegates.cs index b35aaae..c2af7be 100644 --- a/src/MiniTK/Graphics/OpenGL/GLDelegates.cs +++ b/src/MiniTK/Graphics/OpenGL/GLDelegates.cs @@ -369,6 +369,8 @@ namespace OpenTK.Graphics.OpenGL internal delegate void BlitFramebuffer(Int32 srcX0, Int32 srcY0, Int32 srcX1, Int32 srcY1, Int32 dstX0, Int32 dstY0, Int32 dstX1, Int32 dstY1, OpenTK.Graphics.OpenGL.ClearBufferMask mask, OpenTK.Graphics.OpenGL.BlitFramebufferFilter filter); internal static BlitFramebuffer glBlitFramebuffer; [System.Security.SuppressUnmanagedCodeSecurity()] + internal delegate void BlitFramebufferEXT(Int32 srcX0, Int32 srcY0, Int32 srcX1, Int32 srcY1, Int32 dstX0, Int32 dstY0, Int32 dstX1, Int32 dstY1, OpenTK.Graphics.OpenGL.ClearBufferMask mask, OpenTK.Graphics.OpenGL.ExtFramebufferBlit filter); + [System.Security.SuppressUnmanagedCodeSecurity()] internal delegate void BlitFramebufferEXT(Int32 srcX0, Int32 srcY0, Int32 srcX1, Int32 srcY1, Int32 dstX0, Int32 dstY0, Int32 dstX1, Int32 dstY1, OpenTK.Graphics.OpenGL.ClearBufferMask mask, OpenTK.Graphics.OpenGL.BlitFramebufferFilter filter); internal static BlitFramebufferEXT glBlitFramebufferEXT; [System.Security.SuppressUnmanagedCodeSecurity()]