gltransformation: draw with GL_TRIANGLES

Drawing 5 vertices with GL_TRIANGLE_STRIP will draw an extra unneeded
triangle.
This commit is contained in:
Matthew Waters 2017-08-17 13:42:21 +10:00 committed by Tim-Philipp Müller
parent 0214f4fb55
commit 1dc074d401

View file

@ -253,7 +253,7 @@ gst_gl_transformation_init (GstGLTransformation * filter)
filter->fov = 90;
filter->aspect = 1.0;
filter->znear = 0.1f;
filter->zfar = 100;
filter->zfar = 100.0;
filter->xscale = 1.0;
filter->yscale = 1.0;
@ -853,7 +853,7 @@ gst_gl_transformation_filter_texture (GstGLFilter * filter,
return TRUE;
}
static const GLushort indices[] = { 0, 1, 2, 3, 0 };
static const GLushort indices[] = { 0, 1, 2, 0, 2, 3 };
static void
_upload_vertices (GstGLTransformation * transformation)
@ -863,10 +863,10 @@ _upload_vertices (GstGLTransformation * transformation)
/* *INDENT-OFF* */
GLfloat vertices[] = {
-transformation->aspect, 1.0, 0.0, 1.0, 0.0, 1.0,
transformation->aspect, 1.0, 0.0, 1.0, 1.0, 1.0,
-transformation->aspect, -1.0, 0.0, 1.0, 0.0, 0.0,
transformation->aspect, -1.0, 0.0, 1.0, 1.0, 0.0,
-transformation->aspect, -1.0, 0.0, 1.0, 0.0, 0.0
transformation->aspect, 1.0, 0.0, 1.0, 1.0, 1.0,
-transformation->aspect, 1.0, 0.0, 1.0, 0.0, 1.0,
};
/* *INDENT-ON* */
@ -966,7 +966,7 @@ gst_gl_transformation_callback (gpointer stuff)
_upload_vertices (transformation);
_bind_buffer (transformation);
gl->DrawElements (GL_TRIANGLE_STRIP, 5, GL_UNSIGNED_SHORT, 0);
gl->DrawElements (GL_TRIANGLES, 6, GL_UNSIGNED_SHORT, 0);
if (gl->GenVertexArrays)
gl->BindVertexArray (0);