Quad: Don't discard VBO on each update

This never yielded any traceable performance gains.
I also apparently forgot to unbind the buffer after
updating.
This commit is contained in:
Jonas Kulla 2014-05-16 21:37:28 +02:00
parent 8dd7c1b48c
commit e74f889bc5
1 changed files with 4 additions and 2 deletions

View File

@ -112,6 +112,8 @@ struct Quad
VBO::bind(vbo); VBO::bind(vbo);
shState->bindQuadIBO(); shState->bindQuadIBO();
VBO::allocEmpty(sizeof(Vertex[4]), GL_DYNAMIC_DRAW);
glEnableVertexAttribArray(Shader::Color); glEnableVertexAttribArray(Shader::Color);
glEnableVertexAttribArray(Shader::Position); glEnableVertexAttribArray(Shader::Position);
glEnableVertexAttribArray(Shader::TexCoord); glEnableVertexAttribArray(Shader::TexCoord);
@ -136,8 +138,8 @@ struct Quad
void updateBuffer() void updateBuffer()
{ {
VBO::bind(vbo); VBO::bind(vbo);
VBO::allocEmpty(sizeof(Vertex) * 4, GL_DYNAMIC_DRAW); VBO::uploadSubData(0, sizeof(Vertex[4]), vert);
VBO::uploadData(sizeof(Vertex) * 4, vert, GL_DYNAMIC_DRAW); VBO::unbind();
} }
void setPosRect(const FloatRect &r) void setPosRect(const FloatRect &r)