From ff5a0189e096e029acf107b9a1268f1791221bc7 Mon Sep 17 00:00:00 2001 From: Clownacy Date: Wed, 31 Jul 2019 22:50:14 +0000 Subject: [PATCH] OpenGL: Ditch index buffer Seems completely unnecessary for 2D --- src/Backends/Rendering/OpenGL3.cpp | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/src/Backends/Rendering/OpenGL3.cpp b/src/Backends/Rendering/OpenGL3.cpp index eee941da..be0263dc 100644 --- a/src/Backends/Rendering/OpenGL3.cpp +++ b/src/Backends/Rendering/OpenGL3.cpp @@ -210,13 +210,6 @@ BOOL Backend_Init(SDL_Window *p_window) glBindBuffer(GL_ARRAY_BUFFER, vertex_buffer_id); glBufferData(GL_ARRAY_BUFFER, sizeof(vertex_buffer), NULL, GL_DYNAMIC_DRAW); - // Set up Index Buffer Object - const GLuint indices[4] = {0, 1, 2, 3}; - GLuint index_buffer_id; - glGenBuffers(1, &index_buffer_id); - glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, index_buffer_id); - glBufferData(GL_ELEMENT_ARRAY_BUFFER, sizeof(indices), indices, GL_STATIC_DRAW); - // Set up the vertex attributes glEnableVertexAttribArray(1); glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, 0, (GLvoid*)offsetof(VertexBuffer, vertexes)); @@ -297,7 +290,7 @@ void Backend_DrawScreen(void) vertex_buffer.vertexes[3][1] = 1.0f; glBufferSubData(GL_ARRAY_BUFFER, 0, sizeof(vertex_buffer), &vertex_buffer); - glDrawElements(GL_TRIANGLE_FAN, 4, GL_UNSIGNED_INT, NULL); + glDrawArrays(GL_TRIANGLE_FAN, 0, 4); SDL_GL_SwapWindow(window); @@ -399,7 +392,7 @@ static void BlitCommon(Backend_Surface *source_surface, const RECT *rect, Backen vertex_buffer.vertexes[3][1] = vertex_bottom; glBufferSubData(GL_ARRAY_BUFFER, 0, sizeof(vertex_buffer), &vertex_buffer); - glDrawElements(GL_TRIANGLE_FAN, 4, GL_UNSIGNED_INT, NULL); + glDrawArrays(GL_TRIANGLE_FAN, 0, 4); } void Backend_Blit(Backend_Surface *source_surface, const RECT *rect, Backend_Surface *destination_surface, long x, long y, BOOL colour_key) @@ -453,7 +446,7 @@ static void ColourFillCommon(Backend_Surface *surface, const RECT *rect, unsigne vertex_buffer.vertexes[3][1] = vertex_bottom; glBufferSubData(GL_ARRAY_BUFFER, 0, sizeof(vertex_buffer), &vertex_buffer); - glDrawElements(GL_TRIANGLE_FAN, 4, GL_UNSIGNED_INT, NULL); + glDrawArrays(GL_TRIANGLE_FAN, 0, 4); } void Backend_ColourFill(Backend_Surface *surface, const RECT *rect, unsigned char red, unsigned char green, unsigned char blue) @@ -602,7 +595,7 @@ static void DrawGlyphCommon(Backend_Surface *surface, Backend_Glyph *glyph, long vertex_buffer.vertexes[3][1] = vertex_bottom; glBufferSubData(GL_ARRAY_BUFFER, 0, sizeof(vertex_buffer), &vertex_buffer); - glDrawElements(GL_TRIANGLE_FAN, 4, GL_UNSIGNED_INT, NULL); + glDrawArrays(GL_TRIANGLE_FAN, 0, 4); } void Backend_DrawGlyph(Backend_Surface *surface, Backend_Glyph *glyph, long x, long y, const unsigned char *colours)