summaryrefslogtreecommitdiff
path: root/src/mbgl/renderer/render_orchestrator.cpp
diff options
context:
space:
mode:
authorAleksandar Stojiljkovic <aleksandar.stojiljkovic@mapbox.com>2019-07-09 14:07:41 +0300
committerAleksandar Stojiljkovic <aleksandar.stojiljkovic@mapbox.com>2019-07-09 15:13:38 +0200
commit286bc66ba4eef043af1d67858f8f5ec540717f31 (patch)
treea2219a29b1d195909e07a2632535d26d95940467 /src/mbgl/renderer/render_orchestrator.cpp
parent2c5528e691b502673b16723205c83add62317734 (diff)
downloadqtlocation-mapboxgl-286bc66ba4eef043af1d67858f8f5ec540717f31.tar.gz
Issue #15065 changelogs and nit fix.
Diffstat (limited to 'src/mbgl/renderer/render_orchestrator.cpp')
-rw-r--r--src/mbgl/renderer/render_orchestrator.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/mbgl/renderer/render_orchestrator.cpp b/src/mbgl/renderer/render_orchestrator.cpp
index c70ce63c76..cf5a7d190e 100644
--- a/src/mbgl/renderer/render_orchestrator.cpp
+++ b/src/mbgl/renderer/render_orchestrator.cpp
@@ -342,15 +342,16 @@ std::unique_ptr<RenderTree> RenderOrchestrator::createRenderTree(const UpdatePar
}
}
- uint32_t i = static_cast<uint32_t>(layerRenderItems.size()) - 1;
- for (auto it = layerRenderItems.begin(); it != layerRenderItems.end(); ++it, --i) {
- RenderLayer& renderLayer = it->layer;
- renderLayer.prepare({it->source, *imageManager, *patternAtlas, *lineAtlas, updateParameters.transformState});
+ auto opaquePassCutOffEstimation = layerRenderItems.size();
+ for (auto& renderItem : layerRenderItems) {
+ RenderLayer& renderLayer = renderItem.layer;
+ renderLayer.prepare({renderItem.source, *imageManager, *patternAtlas, *lineAtlas, updateParameters.transformState});
if (renderLayer.needsPlacement()) {
layersNeedPlacement.emplace_back(renderLayer);
}
if (renderLayer.is3D() && renderTreeParameters->opaquePassCutOff == 0) {
- renderTreeParameters->opaquePassCutOff = i;
+ --opaquePassCutOffEstimation;
+ renderTreeParameters->opaquePassCutOff = uint32_t(opaquePassCutOffEstimation);
}
}
// Symbol placement.