diff options
Diffstat (limited to 'src/mbgl/renderer/tile_pyramid.cpp')
-rw-r--r-- | src/mbgl/renderer/tile_pyramid.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/mbgl/renderer/tile_pyramid.cpp b/src/mbgl/renderer/tile_pyramid.cpp index 51999c0aac..4f095ed97d 100644 --- a/src/mbgl/renderer/tile_pyramid.cpp +++ b/src/mbgl/renderer/tile_pyramid.cpp @@ -242,12 +242,15 @@ void TilePyramid::update(const std::vector<Immutable<style::LayerProperties>>& l pair.second->setShowCollisionBoxes(parameters.debugOptions & MapDebugOptions::Collision); } + fadingTiles = false; + // Initialize render tiles fields and update the tile contained layer render data. for (RenderTile& renderTile : renderTiles) { Tile& tile = renderTile.tile; assert(tile.isRenderable()); const bool holdForFade = tile.holdForFade(); + fadingTiles = (fadingTiles || holdForFade); for (const auto& layerProperties : layers) { const auto* typeInfo = layerProperties->baseImpl->getTypeInfo(); if (holdForFade && typeInfo->fadingTiles == LayerTypeInfo::FadingTiles::NotRequired) { @@ -401,4 +404,13 @@ void TilePyramid::addRenderTile(const UnwrappedTileID& tileID, Tile& tile) { renderTiles.emplace(it, tileID, tile); } +void TilePyramid::updateFadingTiles() { + for (auto& renderTile : renderTiles) { + Tile& tile = renderTile.tile; + if (tile.holdForFade()) { + tile.performedFadePlacement(); + } + } +} + } // namespace mbgl |