summaryrefslogtreecommitdiff
path: root/src/mbgl/renderer/render_layer.hpp
diff options
context:
space:
mode:
authorMikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com>2019-05-13 11:25:29 +0300
committerMikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com>2019-05-13 11:25:29 +0300
commit04948a873e2652368e69fb7059f5d3254509d46c (patch)
tree4f4e56792e18767458f821d1246b1c0673d4a7a8 /src/mbgl/renderer/render_layer.hpp
parent615c5387fccf28c0d54fb71475f7a878318e1413 (diff)
downloadqtlocation-mapboxgl-04948a873e2652368e69fb7059f5d3254509d46c.tar.gz
[core] RenderTile shall never be created for a not renderable tileupstream/mikhail_renderable_render_tiles
A RenderTile is already never created for a not renderable tile, guarantied by the checks in `updateRenderables()`. However, the client code had plenty of `isRenderable()` checks in the render path, which complicated the code and affected rendering performance. This patch removes the unneeded checks from the client code and puts an assertion to `TilePyramid::addRenderTile()`.
Diffstat (limited to 'src/mbgl/renderer/render_layer.hpp')
-rw-r--r--src/mbgl/renderer/render_layer.hpp4
1 files changed, 1 insertions, 3 deletions
diff --git a/src/mbgl/renderer/render_layer.hpp b/src/mbgl/renderer/render_layer.hpp
index 2ecd7c0ae5..2bc2563f52 100644
--- a/src/mbgl/renderer/render_layer.hpp
+++ b/src/mbgl/renderer/render_layer.hpp
@@ -92,9 +92,6 @@ protected:
// in the console to inform the developer.
void checkRenderability(const PaintParameters&, uint32_t activeBindingCount);
- using FilterFunctionPtr = bool (*)(RenderTile&);
- RenderTiles filterRenderTiles(RenderTiles, FilterFunctionPtr) const;
-
protected:
// Stores current set of tiles to be rendered for this layer.
std::vector<std::reference_wrapper<RenderTile>> renderTiles;
@@ -104,6 +101,7 @@ protected:
RenderPass passes = RenderPass::None;
private:
+ RenderTiles filterRenderTiles(RenderTiles) const;
// Some layers may not render correctly on some hardware when the vertex attribute limit of
// that GPU is exceeded. More attributes are used when adding many data driven paint properties
// to a layer.