summaryrefslogtreecommitdiff
path: root/include
Commit message (Collapse)AuthorAgeFilesLines
* [core] Limit pitch based on edge insets. Fix max Z calculation in getProjMatrix.Aleksandar Stojiljkovic2019-08-011-1/+1
| | | | | | | | | | | | | Patch partly fixes #15163 in a way that it doesn't allow loading tens of thousands of tiles and attempt to show area above horizon: Limit pitch based on edge insets. It is not too bad - current limit of 60 degrees stays active until center of perspective is moved towards the bottom, to 84% of screen height. The plan is to split removal of 60 degrees limit to follow up patch. Fix max Z calculation in getProjMatrix. TransformState::getProjMatrix calculation of farZ was complex with possibility to lead to negative z values. Replacing it with simpler, precise calculation: furthestDistance = cameraToCenterDistance / (1 - tanFovAboveCenter * std::tan(getPitch())); TransformState::getProjMatrix calculation of farZ was an aproximation. Replacing it with simpler, but precise calculation. Related to: #15163
* [docs] Remove references to increasing offline tile limitHeather Stenson2019-07-181-2/+1
|
* [core] Synchronize render passes and render tilesMikhail Pozdnyakov2019-07-111-0/+2
| | | | | | | | | | | | | | | | Before this change render passes were assigned for the whole layer at properties evaluation stage. This caused problems, as layer render data are bound to the tile and these data might differ from tile to tile, depending on which tile has been updated by the tile worker and which has not been yet updated. This change takes into consideration the actual render passes required for each tile and combines them for the layer render passes. Naturally, this change also introduces render pass check for each render layer in `RenderLayer::render()` implementations.
* [core] Introduce LayerProperties::constantsMask()Mikhail Pozdnyakov2019-07-021-1/+2
| | | | | | Constants mask for data-driven paint properties is a reliable criteria of whether the given updated properties can still be used with the existing bucket (and the gl program instance).
* [core] Minor change to silence documentation warning on iOS.Julian Rex2019-07-021-2/+2
|
* [core] Add number-format expressionJuha Alanen2019-06-273-1/+45
|
* [core] DefaultFileSource dynamic support for cache-only requestsBruno de Oliveira Abinader2019-06-252-12/+20
|
* [core] Add method for setting a maximum size for the ambient cacheThiago Marcos P. Santos2019-06-181-6/+24
| | | | | | | - Removed this parameter from the constructor, now that we have a method to set it. - Add the method and enforce the limits if the ambient cache exceeds the size.
* [core] Clear/Invalidate should also work on non-tile resourcesThiago Marcos P. Santos2019-06-181-7/+13
| | | | | These methods were only affecting tiles, but they should really work on every resource like style, glyphs, etc.
* [core] Rename resetCache to resetDatabaseThiago Marcos P. Santos2019-06-181-1/+1
| | | | | Avoid confusion about what is being reset. In this case, the whole database and not only the ambient cache.
* [core] Surface cache management APIsThiago Marcos P. Santos2019-06-131-0/+28
| | | | | These APIs need to be on the DefaultFileSource in order to be visible for the SDKs bindings.
* [build] remove roundtrip through <experimental/optional> when using optionalKonstantin Käfer2019-06-121-1/+1
|
* [core] Make tile id unwrapTo() constMikhail Pozdnyakov2019-06-101-4/+4
|
* [core] remove platform::show(Color)?DebugImageKonstantin Käfer2019-05-281-6/+0
|
* [core] refactor program object creationKonstantin Käfer2019-05-283-3/+49
|
* [core] Remove priority from the constructorThiago Marcos P. Santos2019-05-281-11/+7
| | | | Make the constructor less verbose and set good defaults.
* [core] Introduce usage tag for resourcesThiago Marcos P. Santos2019-05-281-0/+7
| | | | | | | Make the distinction if a resource is being requested for offline usage or if it will be used immediately. Fixes #14746
* [core] Offset viewport center when edge insets are specifiedAleksandar Stojiljkovic2019-05-281-2/+2
| | | | | | | | | | | | | | | | | | | | | The change is implemented in TransformState::getProjMatrix, the rest of the code is making sure that existing API contracts stay and there are tests verifyingrendering and render query processing only items within screen and given tolerance around screen edges. MapView: don't bake edge insets into relalculated camera center. Keep edge insets as property of camera in TransformState (similar to pitch, zoom, bearing) independent from specified camera center. Interpolate edge insets in animation. iOS Demo app: "Turn On/Off Content Insets" pitch the camera and navigate to convenient location in Denver, where streets are parallel to cardinal directions, to illustrate viewport center offset when edge insets are set. Tests: ViewFrustumCulling: although Annotations are deprecated, queryRenderedFeatures related tests in Annotations would need to get ported and decided to add the edge insets related query tests next to them. Verify frustum culling (render+queryRenderedFeatures) With different camera and edge insets setups. TODO: port Annotations tests. Transform.Padding: Verify that coordinates take proper place on screen after applying edge insets. LocalGlyphRasterizer: verify text rendering when applying padding. Related to #11882: both use projection matrix elements [8] and [9]. Alternative approach to this was to increase and offset map origin so that the screen would be a sub-rectangle in larger map viewport. This approach has a drawback of unecessary processing the items that are outside screen area. Fixes #12107, #12728, navigation-sdks/issues/120
* [core] invoke optional resource path change completion listenerŁukasz Paczos2019-05-241-1/+4
|
* [core] limit thread's scope to release the Object before detaching the threadŁukasz Paczos2019-05-241-11/+15
|
* [core] option to perform platform specific operations when ↵Łukasz Paczos2019-05-222-0/+16
| | | | creating/destroying core threads
* [core] RenderLayer::render(PaintParameters, RenderSource*) -> ↵Mikhail Pozdnyakov2019-05-221-0/+2
| | | | render(PaintParameters)
* [core] Forward ImageManagerObserver::onRemoveUnusedStyleImages to ↵Alexander Shalamov2019-05-212-0/+4
| | | | MapObserver interface
* [core] Define max cache size for ImageManagerAlexander Shalamov2019-05-211-0/+4
|
* [core] Don't use optional unique_ptr in function coversion codeAnder Conselvan de Oliveira2019-05-211-7/+7
| | | | | Since unique_ptr is already nullable there is no need to wrap it in an optional<>.
* [core] Fix most identity function with default legacy expression testsAnder Conselvan de Oliveira2019-05-211-8/+15
| | | | | Add handling of default value to the conversion of legacy identity functions. The color and enum tests still don't pass though.
* [core] Remove RenderLayerSymbolInterfaceMikhail Pozdnyakov2019-05-191-0/+6
|
* [core] add gfx::UploadPass, split startRender into prepare and uploadKonstantin Käfer2019-05-151-0/+3
|
* [core] add gfx::CommandEncoder::present()Konstantin Käfer2019-05-151-0/+7
|
* [core] use unique IDs for DrawScopesKonstantin Käfer2019-05-151-1/+2
|
* [core] Make FileSource API clearerMikhail Pozdnyakov2019-05-141-6/+8
|
* [core] Make the BackgroundScheduler a singletonThiago Marcos P. Santos2019-05-105-6/+12
| | | | | | | | | | - 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-2/+2
| | | | So that the lambdas calling these methods do not have to be mutable.
* [core] Remove clipping option from RenderTile and style::LayerMikhail Pozdnyakov2019-05-081-6/+0
|
* [core] Keep shared_ptr to thread pool in CustomGeometrySourceAlexander Shalamov2019-05-031-0/+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-0210-301/+301
| | | | 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.
* [core] Introduce resetCache APISudarsana Babu Nagineni2019-04-291-0/+9
| | | | Add an API to delete existing database and re-initialize.
* [core] Render layers use synchronized buckets and paint propertiesMikhail Pozdnyakov2019-04-171-0/+5
| | | | Actual for layers rendering the geometry tile data: line, fill, fill-extrusion, heatmap, circle, symbol (was updated in previous commits).
* [core] Add `FadingTiles` layer type propertyMikhail Pozdnyakov2019-04-171-0/+6
|
* [core] Use `style::LayerProperties` in render layers, buckets and layouts.Mikhail Pozdnyakov2019-04-178-10/+17
|
* [core] Introduce `style::LayerProperties` interface and its implementationsMikhail Pozdnyakov2019-04-171-0/+29
|
* [core] Enable 'symbol-sort-key' layout property and generate style codeAlexander Shalamov2019-04-171-0/+4
|
* [core] Add 'auto' enum value to symbol-z-order layout propertyAlexander Shalamov2019-04-171-0/+1
|
* [core] Move should not call destructorsAlexander Shalamov2019-04-051-18/+7
|
* [core] clang-tidy fixesKonstantin Käfer2019-04-0510-236/+236
|
* [core] move depth/stencil buffer debug viz to gfx::ContextKonstantin Käfer2019-04-051-3/+0
|
* [core] remove Renderer::flushKonstantin Käfer2019-04-051-2/+0
|
* [core] move GLContextMode to RendererBackendKonstantin Käfer2019-04-054-23/+13
|
* [core] refactor RendererBackendKonstantin Käfer2019-04-055-96/+122
|
* [core] move BackendScope to gfx namespaceKonstantin Käfer2019-04-052-2/+5
|