-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Add source property to limit parent's tile overscale factor #16347
Conversation
Is it related to JS's |
@astojilj I have to check JS implementation a bit more. Looks similar to |
3cf0c92
to
362afb3
Compare
@tobrun could you take a look at android changes. Draft java bindings are in mapbox/mapbox-gl-native-android#299 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm%comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@alexshalamov thank you!
362afb3
to
db4d21b
Compare
fbc24c2
to
70c6722
Compare
What happens with panZoom tiles in tilePyramid when maxOverscaleFactor is < sourcePrefetchZoomDelta? |
@astojilj In that case maxOverscaleFactor would act as a threshold for sourcePrefetchZoomDelta. Do you think we should still pre-fetch tiles that are not supposed to be rendered? |
I don't think we should prefetch them. We should also notify users setting sourcePrefetchZoomDelta that prefetch is not active, e.g. assert or warning. |
@alexshalamov Is there a case to be made to put this in the style specification since it is a per source property that can be used with sparse tilesets? |
2112b8e
to
87d0286
Compare
@asheemmamoowala I think so, it may be useful for gl-js use-cases, for example when there is a raster tile in source cache and we quickly zoom-in and if connectivity is poor, highly overscaled tile would be shown to a user. As @astojilj noted above gl-js has some sort of thresholds already. @astojilj added warning 9d593f2#diff-583602ba6bed5602d365e3b1055ecdd5R12 |
87d0286
to
d687093
Compare
The new property sets a limit for how much parent tile can be overscaled.
When a set of tiles for a current zoom level is being rendered and some of the ideal tiles that cover the screen are not yet loaded, parent tile could be used instead. This might introduce unwanted rendering side-effects, especially for raster tiles that are overscaled multiple times.
Launch Checklist
@mapbox/maps-android @mapbox/maps-ios @mapbox/core-sdk
if this PR adds or updates a public API@mapbox/gl-js
if this PR includes shader changes or needs a js portneeds changelog
label if a changelog is needed (remove label when added)/cc @mapbox/maps-android @mapbox/maps-ios @mapbox/core-sdk
/cc @asheemmamoowala