diff options
author | Konstantin Käfer <mail@kkaefer.com> | 2014-01-17 16:53:20 +0100 |
---|---|---|
committer | Konstantin Käfer <mail@kkaefer.com> | 2014-01-17 16:53:20 +0100 |
commit | 2e3b8ed0719d2668c656c8b6e7f868e89347e6e9 (patch) | |
tree | 86a3945fa303f4ef734b91afb929166aac6fe4a7 /src | |
parent | 8443687092ef95f7eb73c5020fb8d47153a68ee7 (diff) | |
download | qtlocation-mapboxgl-2e3b8ed0719d2668c656c8b6e7f868e89347e6e9.tar.gz |
renderer cleanup
Diffstat (limited to 'src')
-rw-r--r-- | src/map/tile.cpp | 2 | ||||
-rw-r--r-- | src/renderer/painter.cpp | 46 |
2 files changed, 23 insertions, 25 deletions
diff --git a/src/map/tile.cpp b/src/map/tile.cpp index c7d62bd064..15894678fa 100644 --- a/src/map/tile.cpp +++ b/src/map/tile.cpp @@ -126,8 +126,6 @@ bool tile::parse() { } } - // fprintf(stderr, "[%p] parsing tile [%d/%d/%d]... done\n", this, z, x, y); - if (state == obsolete) { return false; } else { diff --git a/src/renderer/painter.cpp b/src/renderer/painter.cpp index ae7d610789..f055761b06 100644 --- a/src/renderer/painter.cpp +++ b/src/renderer/painter.cpp @@ -83,7 +83,7 @@ void painter::teardown() { } -void painter::changeMatrix(std::shared_ptr<tile> tile) { +void painter::changeMatrix(const tile::ptr& tile) { assert(transform); // Initialize projection matrix @@ -137,7 +137,7 @@ void painter::clear() { glClear(GL_COLOR_BUFFER_BIT | GL_STENCIL_BUFFER_BIT); } -void painter::render(tile::ptr tile) { +void painter::render(const tile::ptr& tile) { if (tile->state != tile::ready) { return; } @@ -162,31 +162,31 @@ void painter::render(tile::ptr tile) { if (settings->debug) { - // draw tile outline - switchShader(lineShader); - glUniformMatrix4fv(lineShader->u_matrix, 1, GL_FALSE, matrix); - glBindBuffer(GL_ARRAY_BUFFER, tile_border_buffer); - glVertexAttribPointer(lineShader->a_pos, 2, GL_SHORT, false, 0, BUFFER_OFFSET(0)); - glUniform4f(lineShader->u_color, 1.0f, 1.0f, 1.0f, 1.0f); - glLineWidth(4.0f); - glDrawArrays(GL_LINE_STRIP, 0, sizeof(tile_border_vertices)); - - // draw debug info - switchShader(lineShader); - glUniformMatrix4fv(lineShader->u_matrix, 1, GL_FALSE, matrix); - tile->debugFontVertex.bind(); - glVertexAttribPointer(lineShader->a_pos, 2, GL_SHORT, GL_FALSE, 0, BUFFER_OFFSET(0)); - glUniform4f(lineShader->u_color, 1.0f, 1.0f, 1.0f, 1.0f); - glLineWidth(4.0f); - glDrawArrays(GL_LINES, 0, tile->debugFontVertex.length()); - glUniform4f(lineShader->u_color, 0.0f, 0.0f, 0.0f, 1.0f); - glLineWidth(2.0f); - glDrawArrays(GL_LINES, 0, tile->debugFontVertex.length()); + renderDebug(tile); } } -void painter::viewport() { +void painter::renderDebug(const tile::ptr& tile) { + // draw tile outline + switchShader(lineShader); + glUniformMatrix4fv(lineShader->u_matrix, 1, GL_FALSE, matrix); + glBindBuffer(GL_ARRAY_BUFFER, tile_border_buffer); + glVertexAttribPointer(lineShader->a_pos, 2, GL_SHORT, false, 0, BUFFER_OFFSET(0)); + glUniform4f(lineShader->u_color, 1.0f, 1.0f, 1.0f, 1.0f); + glLineWidth(4.0f); + glDrawArrays(GL_LINE_STRIP, 0, sizeof(tile_border_vertices)); + // draw debug info + switchShader(lineShader); + glUniformMatrix4fv(lineShader->u_matrix, 1, GL_FALSE, matrix); + tile->debugFontVertex.bind(); + glVertexAttribPointer(lineShader->a_pos, 2, GL_SHORT, GL_FALSE, 0, BUFFER_OFFSET(0)); + glUniform4f(lineShader->u_color, 1.0f, 1.0f, 1.0f, 1.0f); + glLineWidth(4.0f); + glDrawArrays(GL_LINES, 0, tile->debugFontVertex.length()); + glUniform4f(lineShader->u_color, 0.0f, 0.0f, 0.0f, 1.0f); + glLineWidth(2.0f); + glDrawArrays(GL_LINES, 0, tile->debugFontVertex.length()); } // Switches to a different shader program. |