summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian.droege@collabora.co.uk>2012-10-17 15:37:53 +0200
committerSebastian Dröge <sebastian.droege@collabora.co.uk>2012-10-18 14:22:50 +0200
commitcefe4f1e041540726e2d258515e34913c490f517 (patch)
tree695f5f9132c8f507b3552bbeebbc77b4c97d6698
parent89c910ff1a04590ceab56649142cdcd7d67c00a2 (diff)
eglglessink: Provide the texture positions to the shader on every frame too
-rw-r--r--ext/eglgles/gsteglglessink.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/ext/eglgles/gsteglglessink.c b/ext/eglgles/gsteglglessink.c
index f51c6face..bb33ee42b 100644
--- a/ext/eglgles/gsteglglessink.c
+++ b/ext/eglgles/gsteglglessink.c
@@ -1589,14 +1589,6 @@ gst_eglglessink_setup_vbo (GstEglGlesSink * eglglessink, gboolean reset)
if (got_gl_error ("glBufferData position_buffer"))
goto HANDLE_ERROR_LOCKED;
- /* Map the texpos already */
- glUseProgram (eglglessink->eglglesctx.glslprogram[0]);
- glVertexAttribPointer (eglglessink->eglglesctx.texpos_loc, 2, GL_FLOAT,
- GL_FALSE, 5 * sizeof (gfloat), (gpointer) (3 * sizeof (gfloat)));
- if (got_gl_error ("glVertexAttribPointer"))
- goto HANDLE_ERROR_LOCKED;
- glUseProgram (0);
-
glBindBuffer (GL_ELEMENT_ARRAY_BUFFER, eglglessink->eglglesctx.index_buffer);
if (got_gl_error ("glBindBuffer index_buffer"))
goto HANDLE_ERROR_LOCKED;
@@ -2538,6 +2530,11 @@ gst_eglglessink_render_and_display (GstEglGlesSink * eglglessink,
if (got_gl_error ("glVertexAttribPointer"))
goto HANDLE_ERROR;
+ glVertexAttribPointer (eglglessink->eglglesctx.texpos_loc, 2, GL_FLOAT,
+ GL_FALSE, sizeof (coord5), (gpointer) (3 * sizeof (gfloat)));
+ if (got_gl_error ("glVertexAttribPointer"))
+ goto HANDLE_ERROR;
+
glDrawElements (GL_TRIANGLE_STRIP, 4, GL_UNSIGNED_SHORT, 0);
if (got_gl_error ("glDrawElements"))
goto HANDLE_ERROR;