diff options
author | Mikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com> | 2019-01-03 17:17:57 +0200 |
---|---|---|
committer | Mikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com> | 2019-01-10 14:37:43 +0200 |
commit | e01182c50788d26482ce88bc9c73b02581374173 (patch) | |
tree | 1cf3a84698e358ff2e2e8af3ec1d9e982b7a485e /src/mbgl/layout/symbol_layout.hpp | |
parent | 50f5bbcdab9009f5e68f865a4fcf77874c0434ff (diff) | |
download | qtlocation-mapboxgl-e01182c50788d26482ce88bc9c73b02581374173.tar.gz |
[core] shader program must always match bucket in render symbol layerupstream/mikhail_sync_bucket_in_render_symbol_layer
Before this change, `RenderSymbolLayer` with updated style was trying to render
symbols using the previous bucket (with paint property binders that matched a previous program).
Now, symbol bucket caches the latest corresponding paint properties (caching is happening on
complete tiles only). As a result, `RenderSymbolLayer` always picks the shader program and
its parameters in sync with the obtained bucket.
Diffstat (limited to 'src/mbgl/layout/symbol_layout.hpp')
-rw-r--r-- | src/mbgl/layout/symbol_layout.hpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/mbgl/layout/symbol_layout.hpp b/src/mbgl/layout/symbol_layout.hpp index 7045eebc22..ab6dc049a2 100644 --- a/src/mbgl/layout/symbol_layout.hpp +++ b/src/mbgl/layout/symbol_layout.hpp @@ -44,8 +44,7 @@ public: bool hasSymbolInstances() const override; bool hasDependencies() const override; - std::map<std::string, - std::pair<style::IconPaintProperties::PossiblyEvaluated, style::TextPaintProperties::PossiblyEvaluated>> layerPaintProperties; + std::map<std::string, style::SymbolPaintProperties::PossiblyEvaluated> layerPaintProperties; const std::string bucketLeaderID; std::vector<SymbolInstance> symbolInstances; |