diff --git a/src/mbgl/text/placement.cpp b/src/mbgl/text/placement.cpp index fe774da2e..71c2b92bf 100644 --- a/src/mbgl/text/placement.cpp +++ b/src/mbgl/text/placement.cpp @@ -276,6 +276,12 @@ JointPlacement Placement::placeSymbol(const SymbolInstance& symbolInstance, cons // a parent tile that _should_ be placed. return kUnplaced; } + + // Place the symbol only at the current level to prevent it from blinking during the transition. + if (ctx.getOverscaledID().overscaledZ != int(placementZoom)) { + return kUnplaced; + } + const SymbolBucket& bucket = ctx.getBucket(); const mat4& posMatrix = ctx.getRenderTile().matrix; const auto& collisionGroup = ctx.collisionGroup;