summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* [core] Don't use optional unique_ptr in function coversion codeAnder Conselvan de Oliveira2019-05-212-22/+25
| | | | | Since unique_ptr is already nullable there is no need to wrap it in an optional<>.
* [core] Forward args in style::expression::dsl::compound()Ander Conselvan de Oliveira2019-05-211-2/+2
|
* [core] Pass legacy/categorical/*-default expression testsAnder Conselvan de Oliveira2019-05-211-14/+26
| | | | | Handle categorical function default value properly in conversion to expreexpression so related tests pass.
* [core] Fix legacy/{interval,exponential}/*-default expression testsAnder Conselvan de Oliveira2019-05-211-20/+63
| | | | | Consider the function default value in interval and exponential functions conversion.
* [core] Expose dsl::compound() internallyAnder Conselvan de Oliveira2019-05-213-6/+24
| | | | | This will be used in a follow up patch by the function to expression conversion code.
* [core] Fix some of the legacy interval function expression testsAnder Conselvan de Oliveira2019-05-211-0/+12
| | | | | The tests for conversion of legacy interval functions to expressions expects that the first stop in the "step" expression be omitted.
* [core] Fix most identity function with default legacy expression testsAnder Conselvan de Oliveira2019-05-212-20/+47
| | | | | Add handling of default value to the conversion of legacy identity functions. The color and enum tests still don't pass though.
* [core] Fix indentation of src/mbgl/style/conversion/function.cppAnder Conselvan de Oliveira2019-05-211-1/+1
| | | | One line in that file was indented with tabs instead of spaces.
* [core] Remove re-linking programs approach (#14482)Aleksandar Stojiljkovic2019-05-205-71/+35
| | | | | | | | | | | | | | | | | | | | | | | Remove re-linking programs as redundant. It costs (cheaper to link once than twice) and (subjective) is not that common GL API usage pattern, although perfectly legal and permitted. Initial idea, behind the removed code, was to enable work on optimization that would reduce number of attrib setup calls in case when VAO is not available (as described in #9433). As such optimization is not implemented, and it is arguable if it makes sense to do it now, we can remove re-linking. Related to closed PRs #9433 and PR #11583. I have [measured the time spent just on relinking](https://gist.github.com/astojilj/29bd5a5c5dc0b2d9f29ecb660da07fbf) using release build on iPhone SE (A9, same as iPhone 6S): - 1st run after reboot or installation Total 37.14ms, average per program:1.86ms - reopening Total: 2.47ms, average per program: 0.12ms This time we save using the patch here.
* [core] CrossTileSymbolIndex::pruneUnusedLayers() does not create ↵Mikhail Pozdnyakov2019-05-201-7/+5
| | | | intermadiate containers
* [core] Check if pattern dependencies or pattern positions are missingAlexander Shalamov2019-05-201-8/+18
| | | | | Add check for optional pattern dependencies and don't bind empty vertex buffers if pattern positions are missing.
* [core] Avoid bucket downcasting in PlacementMikhail Pozdnyakov2019-05-195-44/+65
|
* [core] Remove Bucket::supportsLayerMikhail Pozdnyakov2019-05-1917-46/+1
|
* [core] Remove RenderLayerSymbolInterfaceMikhail Pozdnyakov2019-05-1922-89/+53
|
* [core] Placement accepts RenderLayer instancesMikhail Pozdnyakov2019-05-195-37/+24
|
* [core] Avoid unneeded proj matrix calculations in rendererMikhail Pozdnyakov2019-05-191-3/+2
|
* [core] RenderLayerSymbolInterface is not used in CrossTileSymbolIndexMikhail Pozdnyakov2019-05-199-43/+71
|
* [core] add gfx::UploadPass, split startRender into prepare and uploadKonstantin Käfer2019-05-1587-529/+924
|
* [core] don't upload empty buffersKonstantin Käfer2019-05-152-9/+10
|
* [core] use float for storing opacity attributeKonstantin Käfer2019-05-152-2/+2
|
* [core] add gfx::CommandEncoder::present()Konstantin Käfer2019-05-154-0/+12
|
* [core] use unique IDs for DrawScopesKonstantin Käfer2019-05-1513-24/+70
|
* [core] GeometryTile and TileLoader keep strong reference to FileSourceMikhail Pozdnyakov2019-05-147-11/+14
| | | | Thus we fix a potential bug: if `Renderer` outlives the `Map` it will hold a stale reference to the `FileSource` instance.
* [core] Create glyph manager at renderer construction timeMikhail Pozdnyakov2019-05-145-21/+20
| | | | Avoid unnecessary glyph manager presence check in `Renderer::Impl::()`.
* [core] RenderTile shall never be created for a not renderable tileMikhail Pozdnyakov2019-05-145-19/+11
| | | | | | | | A RenderTile is already never created for a not renderable tile, guarantied by the checks in `updateRenderables()`. However, the client code had plenty of `isRenderable()` checks in the render path, which complicated the code and affected rendering performance. This patch removes the unneeded checks from the client code and puts an assertion to `TilePyramid::addRenderTile()`.
* Refactor: coordinatePointMatrix skip recomputation (#14507)Aleksandar Stojiljkovic2019-05-132-6/+6
| | | | | | | | coordinatePointMatrix is always used with getZoom(): Projection::worldSize(scale) / std::pow(2, z) is computed as scale * util::tileSize / std::pow(2, z) scale is equal to std::pow(2, z). ____________________________________=> Projection::worldSize(scale) / std::pow(2, z) => util::tileSize.
* [core] Make the BackgroundScheduler a singletonThiago Marcos P. Santos2019-05-1020-42/+128
| | | | | | | | | | - Do not carry it over everywhere as parameter, it is a shared instance anyway and the lifecycle is pretty much the app lifecycle from the moment we instantiate a map. - Rename to BackgroundScheduler because it is a Scheduler that will do tasks in the background, we don't make assumptions if it is a thread pool or a single thread. - Most importantly, remove the dependency from `core` on `platform`.
* [core] Make ActorRef methods constMikhail Pozdnyakov2019-05-101-1/+1
| | | | So that the lambdas calling these methods do not have to be mutable.
* [core] Schedule invocation of onStyleImageMissing completion callback on the ↵Alexander Shalamov2019-05-092-9/+26
| | | | | | | | | same thread Before this change, ImageManger's 'done' callback for onStyleImageMissing observer notification that was created on renderer thread, could be called from different thread, therefore, is not thread safe. For example, on Android platform, callback was invoked from UI thread. This change makes callback to be scheduled on originating thread.
* [core] Failed sprite requests do not block tiles renderingMikhail Pozdnyakov2019-05-091-0/+3
|
* [core] Remove clipping option from RenderTile and style::LayerMikhail Pozdnyakov2019-05-0813-14/+0
|
* [core] upgrade mapbox-gl-js pin to the most recent versionKonstantin Käfer2019-05-0833-659/+689
|
* [core] render extrusions directly in the main framebufferKonstantin Käfer2019-05-0825-721/+604
|
* [core] Placement order matches viewport-y sortMikhail Pozdnyakov2019-05-083-166/+172
| | | | | | | | Symbols are placed accordingly to their viewport Y order, if the style `symbol-z-order` is set to `viewport-y`. This improves rendering of symbol layers, where icons are allowed to overlap but not text.
* [core] Guard access to CustomTileLoader's data members with mutexAlexander Shalamov2019-05-032-4/+9
|
* [core] Keep shared_ptr to thread pool in CustomGeometrySourceAlexander Shalamov2019-05-031-1/+2
| | | | | CustomGeometrySource should keep strong reference to shared thread pool that is used by CustomTileLoader.
* [build] change style code generator to sort properties alphabeticallyKonstantin Käfer2019-05-0219-1746/+1746
| | | | JSON keys in our style specification don't have a defined order. This change sorts them alphabetically so that we can rely on the order remaining them same across code generation runs.
* [build] change special casing for LineFloorWidth in shader generationKonstantin Käfer2019-05-022-17/+10
|
* [core] Less strict rules for adding render layers to sourcesMikhail Pozdnyakov2019-04-293-10/+20
|
* [core] change approach to stencil clipping to (almost) match JSKonstantin Käfer2019-04-2924-394/+139
|
* [core] Store type of renderable segment when sorting symbols by keyAlexander Shalamov2019-04-261-15/+31
|
* [core] RendererImpl::dumDebugLogs() -> dumpDebugLogs()Mikhail Pozdnyakov2019-04-253-3/+3
|
* [core] Create ImageManager at renderer constructionMikhail Pozdnyakov2019-04-251-17/+12
|
* [core] Pass ImageManager to ImageRequestor's constructorAlexander Shalamov2019-04-254-7/+19
| | | | | This makes ImageRequestor API explicitly dependant on ImageManager, so that ImageRequestor can unregister itself from ImageManager on destruction.
* [core] Track missing style images that were provided by clientAlexander Shalamov2019-04-253-5/+36
| | | | | | - Track images provided by client thruough onStyleImageMissing API - Handle reduceMemoryUsage in ImageManager, via Renderer API - Release client provided images when no tiles are using them
* [core] Updated script detection for Unicode 12.1Minh Nguyễn2019-04-171-2/+13
| | | | Updated script detection files to reflect changes in Unicode 12.1.
* [core] Render layers use synchronized buckets and paint propertiesMikhail Pozdnyakov2019-04-177-49/+64
| | | | Actual for layers rendering the geometry tile data: line, fill, fill-extrusion, heatmap, circle, symbol (was updated in previous commits).
* [core] Simplify RenderLayer interface.Mikhail Pozdnyakov2019-04-177-30/+12
|
* [core] Update `style::LayerProperties` instances in tilesMikhail Pozdnyakov2019-04-1711-85/+94
|
* [core] Add `FadingTiles` layer type propertyMikhail Pozdnyakov2019-04-1711-11/+23
|