-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Never show blank spots #1626
Comments
This is one of the major perceptual shortcomings between MBGL and other map libraries. 👍 |
As seen in #119 (comment), mapbox-gl-js keeps low-resolution tiles around to cover aggressive panning (as Google Maps does). |
Hacked in this by duplicating a source in the stylesheet, set maxzoom and minzoom = 5 for that source and created a simple 'background' style from the source. Worked well and adds a lot to the user experience, so this feature is definitely great. Not sure how flexible you want this, but defining the zoom level (or zoom level difference between current and 'low-detailed' zoom) where MBGL would fetch low-detailed tiles from could be very useful. For instance, showing very grainy highways from z6 at z13 reduces the overall quality feeling of the map. Fetching low-detailed data from a 'cleaner' zoom level alleviates this. Since a lot of your users have custom styles/data, I'd assume there is no perfect universal level to pull low-detailed data from. |
This should be happening as of #1281, right? (in-memory parsed tile cache) This should be independent of zoom or pan and just keep recent tiles. Or this something more tuned like adjusting a bias for different zooms versus adjacent pans? |
Yes, this is about changing the cache retention strategy to preserve low-z tiles specifically. |
Related: #119 |
I started this one. The approach is to make the prefetch configurable:
|
Tracking tail work in #9437 for Android and #9438 for iOS and macOS. @tmpsantos, should we keep this issue open until we address #7026, per this to-do? Also, is this setting disabled by default? Should the SDKs enable it by default? Until the default behavior is to prefetch tiles, I’m not sure we should close this issue. |
We should keep this open until the label flickering is fixed (there is a labeling sprint coming that should address that). The current behavior is "enabled by default", but it will only work for raster. For vector behavior remains the same as before regardless if prefetch is enabled or not. |
This issue has been automatically detected as stale because it has not had recent activity and will be archived. Thank you for your contributions. |
When zooming out, or panning aggressively, we're often showing blank screens because tiles haven't loaded or parsed yet. We should lazily keep tiles in cache that are a couple of zoom levels lower so we can show it immediately when the user zooms or pans.
The text was updated successfully, but these errors were encountered: