[Mesa-dev] [PATCH 4/4] mesa: implement glFramebufferTexture
Jordan Justen
jordan.l.justen at intel.com
Sat Apr 27 16:37:55 PDT 2013
Signed-off-by: Jordan Justen <jordan.l.justen at intel.com>
---
src/mapi/glapi/gen/GL3x.xml | 2 +-
src/mesa/main/fbobject.c | 17 +++++++++++++++++
src/mesa/main/fbobject.h | 4 ++++
3 files changed, 22 insertions(+), 1 deletion(-)
diff --git a/src/mapi/glapi/gen/GL3x.xml b/src/mapi/glapi/gen/GL3x.xml
index 9ca3d47..5078f7b 100644
--- a/src/mapi/glapi/gen/GL3x.xml
+++ b/src/mapi/glapi/gen/GL3x.xml
@@ -607,7 +607,7 @@
<param name="params" type="GLint64 *"/>
</function>
- <function name="FramebufferTexture" offset="assign" exec="skip">
+ <function name="FramebufferTexture" offset="assign">
<param name="target" type="GLenum"/>
<param name="attachment" type="GLenum"/>
<param name="texture" type="GLuint"/>
diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c
index 419e871..32dcc75 100644
--- a/src/mesa/main/fbobject.c
+++ b/src/mesa/main/fbobject.c
@@ -2402,6 +2402,23 @@ _mesa_FramebufferTextureLayer(GLenum target, GLenum attachment,
void GLAPIENTRY
+_mesa_FramebufferTexture(GLenum target, GLenum attachment,
+ GLuint texture, GLint level)
+{
+ GET_CURRENT_CONTEXT(ctx);
+
+ if ((_mesa_is_desktop_gl(ctx) && ctx->Version >= 32) ||
+ ctx->Extensions.ARB_geometry_shader4) {
+ framebuffer_texture(ctx, "Layer", target, attachment, 0, texture,
+ level, 0, GL_TRUE);
+ } else {
+ _mesa_error(ctx, GL_INVALID_OPERATION,
+ "unsupported function (glFramebufferTexture) called");
+ }
+}
+
+
+void GLAPIENTRY
_mesa_FramebufferRenderbuffer(GLenum target, GLenum attachment,
GLenum renderbufferTarget,
GLuint renderbuffer)
diff --git a/src/mesa/main/fbobject.h b/src/mesa/main/fbobject.h
index ba013fd..2d88001 100644
--- a/src/mesa/main/fbobject.h
+++ b/src/mesa/main/fbobject.h
@@ -192,6 +192,10 @@ _mesa_FramebufferTextureLayer(GLenum target, GLenum attachment,
GLuint texture, GLint level, GLint layer);
extern void GLAPIENTRY
+_mesa_FramebufferTexture(GLenum target, GLenum attachment,
+ GLuint texture, GLint level);
+
+extern void GLAPIENTRY
_mesa_FramebufferRenderbuffer(GLenum target, GLenum attachment,
GLenum renderbuffertarget,
GLuint renderbuffer);
--
1.7.10.4
More information about the mesa-dev
mailing list