summaryrefslogtreecommitdiff
path: root/src/mbgl/algorithm
Commit message (Collapse)AuthorAgeFilesLines
* [core] Fix google-build-namespaces errors in header filesThiago Marcos P. Santos2020-04-171-4/+0
| | | | As reported by clang-tidy-8.
* Refactor tileCover to support lod tilesMikko Pulkki2020-04-061-9/+9
|
* [core] Add setMaxOverscaleFactorForParentTilesAlexander Shalamov2020-04-011-1/+8
|
* [core] Refactor tile pyramidMikhail Pozdnyakov2019-06-101-32/+38
| | | | | | | Tile pyramid is no longer operating with `RenderTiles` and does not perform rendering operations (upload, finish render). Render tiles belong to rendering, and tile pyramid belongs to orchestration.
* [core] change approach to stencil clipping to (almost) match JSKonstantin Käfer2019-04-294-242/+0
|
* [core] Remove tile sorting from the clip and mask algorithmsMikhail Pozdnyakov2019-01-183-7/+9
| | | | | | | | | | The tile sorting can be now removed from the algorithms, which calculate tile mask and clip ids, because their client code provides tiles being already sorted (in `TilePyramid`). This patch brings significant improvements to the Tile-related performance tests results, for example the `TileMaskGeneration` benchmark test runs 33 times faster with these changes applied.
* [core] remove some uses of <iostream> and <sstream>Konstantin Käfer2018-10-231-1/+0
|
* [core] fix flickering caused by incorrect ClipIDsMolly Lloyd2018-10-031-1/+1
| | | | we missed a check for RenderTile.needsClipping when generating the new ClipIDs for some tiles, resulting in incorrect clipping that caused flickering in some cases
* [core] don't break ascent in the overscaled tile phaseKonstantin Käfer2018-09-211-5/+4
| | | | We optimize our updateRenderable algorithm by breaking ascent when we've already checked a certain tile. So far, we've compared the UnwrappedTileIDs, but they don't include the overscale component. When ascending through overscaled tile IDs, we've stopped the ascent too early, when we should've kept the search going.
* [core] coveredByChildren is false if at least one child is uncoveredBruno de Oliveira Abinader2018-07-241-4/+12
|
* Support TileJSON bounds property (#10701)Asheem Mamoowala2018-01-051-1/+5
| | | | | | | | * [core] Parse TileJSON bounds property * [core] Add TileRange and LatLngBounds::contains(CanonicalTileID) Move LatLngBounds::contains impl to cpp file * [core] Skip tile creation outside of tileset bounds * [core] Fix TileRange for wrapped bounds and use for CustomTileLoader instead of LatLngBounds comparisons for tiles.
* [core] don't generate clip IDs for buckets/layers that don't need to be clippedKonstantin Käfer2017-10-171-1/+1
|
* [core] make forcing cache/network only more explicitKonstantin Käfer2017-10-121-9/+16
| | | | | | Previously, we used the existence of a `prior*` field in the Resource object as an indication for whether we should consult the cache or not. However, this is prone to error, since a failed cache lookup won't set any prior fields. Therefore, we manually set `priorExpires` to 0. This in turn triggered another bug where generated wrong expiration timestamps when the server response we got was expired (or expired between sending and receiving). This commit changes the flags so that we can now explicitly request CacheOnly/NetworkOnly (or All) loading methods, rather than the implicit Optional/Required naming scheme.
* [core] add algorithm for computing masks for raster tilesKonstantin Käfer2017-07-241-0/+128
|
* [core] Change OverscaledTileID to also include a "wrap" value.Chris Loer2017-07-111-5/+4
| | | | | This prevents TilePyramid from sharing wrapped copies of tiles. This is necessary because two wrapped tiles no longer share the same CollisionTile.
* [core] rename getStencils() to getClipIDs() to better reflect what it ↵Konstantin Käfer2017-07-062-9/+9
| | | | actually does
* [core] don't use unordered_* collections for things we need to sort anywayKonstantin Käfer2017-07-061-4/+4
|
* [core] refactor ClipID generationKonstantin Käfer2017-07-062-14/+16
|
* [core] Suppress "stencil mask overflow" warningThiago Marcos P. Santos2017-05-021-1/+6
| | | | | When it starts, we get a log warning for every frame, which is expensive. Now we get only one warning.
* [core] Render parent raster tiles when ideal tile can't be loadedKonstantin Käfer2017-04-201-4/+11
|
* [build] move logging to utilKonstantin Käfer2016-11-221-1/+1
|
* [core] don't assign clip IDs to tiles that aren't renderedKonstantin Käfer2016-11-081-0/+7
|
* [core] Moved util::log2 to its own headerBruno de Oliveira Abinader2016-10-311-1/+1
| | | | | | - Added util::{MIN,MAX}_ZOOM_F to avoid consecutive conversions from double to float - Move util::log2 to its own header (part of mbgl/math)
* [core] Convert uses of std::set to std::unordered_set (#6325)Lucas Wojciechowski2016-09-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | * src/mbgl/annotation/annotation_manager.hpp * src/mbgl/algorithm/update_renderables.hpp * src/mbgl/geometry/glyph_atlas.hpp * src/mbgl/renderer/painter.cpp and src/mbgl/renderer/render_item.hpp * src/mbgl/renderer/symbol_bucket.hpp and src/mbgl/text/glyph_store.hpp * src/mbgl/sprite/sprite_atlas.hpp * include/mbgl/storage/network_status.hpp * src/mbgl/text/collision_tile.cpp * src/mbgl/style/update_batch.hpp * platform/default/mbgl/storage/offline_download.hpp * Add GlyphRangeSet typedef * Fix whitespace & unused imports
* [core] #3980 - Switching Core GL instances of map to unordered_mapBrad Leege2016-09-141-4/+4
|
* [core] Rename data ⇢ tile; use Resource::NecessityJohn Firebaugh2016-08-261-25/+26
|
* [core] Use Range<uint8_t> instead of full Tileset where possibleJohn Firebaugh2016-06-141-7/+7
|
* [core] *Tile ↔ *TileDataJohn Firebaugh2016-06-131-17/+17
| | | | Tile is now the main base class; RasterTile, VectorTile, etc are its subclasses. GeometryTileData and its subclasses form the piece that's passed to the worker.
* [core] Tile ⇢ RenderTileJohn Firebaugh2016-06-131-1/+0
|
* [core] load parents of missing tiles as optionalKonstantin Käfer2016-06-101-10/+20
|
* [core] createTile callback can load optional and required tilesKonstantin Käfer2016-06-101-1/+1
|
* [core] refactor updateRenderables algorithmKonstantin Käfer2016-05-271-50/+65
|
* [core] remove unused template definitionKonstantin Käfer2016-05-273-103/+80
|
* [core] TileData::isReady() => TileData::isRenderable()Konstantin Käfer2016-05-251-1/+1
|
* [core] use #pragma once instead of ifdef include guardsKonstantin Käfer2016-05-255-20/+5
|
* [core] retain tiles differently and remove old TileID classKonstantin Käfer2016-05-103-0/+118
|
* [core] move Painter and dependents to new *TileID classesKonstantin Käfer2016-05-101-3/+0
|
* [core] add algorithm for generating clip IDs based on the new TileID classesKonstantin Käfer2016-05-103-0/+200
|
* [core] add algorithm for detecting whether an ordered map contains covering ↵Konstantin Käfer2016-05-101-0/+34
children