summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorKonstantin Käfer <mail@kkaefer.com>2014-02-05 18:46:23 +0100
committerKonstantin Käfer <mail@kkaefer.com>2014-02-05 18:46:23 +0100
commiteabd99d8f6d00523e56fd8d329dc011bf22d51dc (patch)
treed96a9f20ed1a8d86de35c4c8b9ed37fd85606fb3 /src
parente94cb1b00b81685a958219e749ea638dc087adb6 (diff)
downloadqtlocation-mapboxgl-eabd99d8f6d00523e56fd8d329dc011bf22d51dc.tar.gz
always pass the parameters and verify that they're correct
Diffstat (limited to 'src')
-rw-r--r--src/renderer/line_bucket.cpp8
-rw-r--r--src/renderer/painter.cpp38
2 files changed, 9 insertions, 37 deletions
diff --git a/src/renderer/line_bucket.cpp b/src/renderer/line_bucket.cpp
index 5dc0710b8d..6e95a7bc6f 100644
--- a/src/renderer/line_bucket.cpp
+++ b/src/renderer/line_bucket.cpp
@@ -270,12 +270,8 @@ size_t LineBucket::size() const {
}
void LineBucket::bind(LineShader& shader) {
- if (!array) {
- char *vertex_index = BUFFER_OFFSET(start * 4 * sizeof(int16_t));
- array.setup(shader, *buffer, vertex_index);
- } else {
- array.bind();
- }
+ char *vertex_index = BUFFER_OFFSET(start * 4 * sizeof(int16_t));
+ array.bind(shader, *buffer, vertex_index);
}
void LineBucket::drawLines() {
diff --git a/src/renderer/painter.cpp b/src/renderer/painter.cpp
index 4a3a4456f4..3187739e8c 100644
--- a/src/renderer/painter.cpp
+++ b/src/renderer/painter.cpp
@@ -93,11 +93,8 @@ void Painter::drawClippingMask() {
glStencilMask(0xC0);
glStencilOp(GL_REPLACE, GL_KEEP, GL_KEEP);
- if (!tileStencilArray) {
- tileStencilArray.setup(*plainShader, tileStencilBuffer, BUFFER_OFFSET(0));
- } else {
- tileStencilArray.bind();
- }
+
+ tileStencilArray.bind(*plainShader, tileStencilBuffer, BUFFER_OFFSET(0));
// Draw the clipping mask
glUniform4f(plainShader->u_color, 1.0f, 0.0f, 1.0f, 1.0f);
@@ -281,11 +278,7 @@ void Painter::renderFill(FillBucket& bucket, const std::string& layer_name, cons
glUniform4fv(fillShader->u_color, 1, fill_color.data());
// Draw a rectangle that covers the entire viewport.
- if (!tileStencilArray) {
- tileStencilArray.setup(*plainShader, tileStencilBuffer, BUFFER_OFFSET(0));
- } else {
- tileStencilArray.bind();
- }
+ tileStencilArray.bind(*plainShader, tileStencilBuffer, BUFFER_OFFSET(0));
glDrawArrays(GL_TRIANGLES, 0, tileStencilBuffer.length());
}
@@ -373,21 +366,13 @@ void Painter::renderDebug(const Tile::Ptr& tile) {
glUniformMatrix4fv(plainShader->u_matrix, 1, GL_FALSE, matrix.data());
// draw tile outline
- if (!tileBorderArray) {
- tileBorderArray.setup(*plainShader, tileBorderBuffer, BUFFER_OFFSET(0));
- } else {
- tileBorderArray.bind();
- }
+ tileBorderArray.bind(*plainShader, tileBorderBuffer, BUFFER_OFFSET(0));
glUniform4f(plainShader->u_color, 1.0f, 0.0f, 0.0f, 1.0f);
glLineWidth(4.0f);
glDrawArrays(GL_LINE_STRIP, 0, tileBorderBuffer.length());
// draw debug info
- if (!tile->debugFontArray) {
- tile->debugFontArray.setup(*plainShader, tile->debugFontBuffer, BUFFER_OFFSET(0));
- } else {
- tile->debugFontArray.bind();
- }
+ tile->debugFontArray.bind(*plainShader, tile->debugFontBuffer, BUFFER_OFFSET(0));
glUniform4f(plainShader->u_color, 1.0f, 1.0f, 1.0f, 1.0f);
glLineWidth(4.0f);
glDrawArrays(GL_LINES, 0, tile->debugFontBuffer.length());
@@ -407,13 +392,8 @@ void Painter::renderMatte() {
glUseProgram(plainShader->program);
glUniformMatrix4fv(plainShader->u_matrix, 1, GL_FALSE, nativeMatrix.data());
- if (!matteArray) {
- matteArray.setup(*plainShader, matteBuffer, BUFFER_OFFSET(0));
- } else {
- matteArray.bind();
- }
-
// Draw the clipping mask
+ matteArray.bind(*plainShader, matteBuffer, BUFFER_OFFSET(0));
glUniform4fv(plainShader->u_color, 1, white.data());
glDrawArrays(GL_TRIANGLES, 0, matteBuffer.length());
@@ -427,11 +407,7 @@ void Painter::renderBackground() {
glUniformMatrix4fv(plainShader->u_matrix, 1, GL_FALSE, matrix.data());
// Draw the clipping mask
- if (!tileStencilArray) {
- tileStencilArray.setup(*plainShader, tileStencilBuffer, BUFFER_OFFSET(0));
- } else {
- tileStencilArray.bind();
- }
+ tileStencilArray.bind(*plainShader, tileStencilBuffer, BUFFER_OFFSET(0));
glUniform4fv(plainShader->u_color, 1, white.data());
glDrawArrays(GL_TRIANGLES, 0, tileStencilBuffer.length());
}