[core] Introduce SegmentVector

This commit is contained in:
John Firebaugh
2016-11-14 11:57:02 -08:00
parent 58877d1b3d
commit 377d0fb0d2
18 changed files with 86 additions and 36 deletions

View File

@@ -18,7 +18,7 @@ void Painter::renderTileDebug(const RenderTile& renderTile) {
MBGL_DEBUG_GROUP(std::string { "debug " } + util::toString(renderTile.id));
auto draw = [&] (Color color, const auto& vertexBuffer, auto drawMode) {
auto draw = [&] (Color color, const auto& vertexBuffer, const auto& segments, auto drawMode) {
programs->debug.draw(
context,
drawMode,
@@ -29,7 +29,8 @@ void Painter::renderTileDebug(const RenderTile& renderTile) {
uniforms::u_matrix::Value{ renderTile.matrix },
uniforms::u_color::Value{ color }
},
vertexBuffer
vertexBuffer,
segments
);
};
@@ -45,12 +46,22 @@ void Painter::renderTileDebug(const RenderTile& renderTile) {
tile.expires, frame.debugOptions, context);
}
draw(Color::white(), tile.debugBucket->vertexBuffer, gl::Lines { 4.0f * frame.pixelRatio });
draw(Color::black(), tile.debugBucket->vertexBuffer, gl::Lines { 2.0f * frame.pixelRatio });
draw(Color::white(),
tile.debugBucket->vertexBuffer,
tile.debugBucket->segments,
gl::Lines { 4.0f * frame.pixelRatio });
draw(Color::black(),
tile.debugBucket->vertexBuffer,
tile.debugBucket->segments,
gl::Lines { 2.0f * frame.pixelRatio });
}
if (frame.debugOptions & MapDebugOptions::TileBorders) {
draw(Color::red(), tileLineStripVertexBuffer, gl::LineStrip { 4.0f * frame.pixelRatio });
draw(Color::red(),
tileBorderVertexBuffer,
tileBorderSegments,
gl::LineStrip { 4.0f * frame.pixelRatio });
}
}