summaryrefslogtreecommitdiff
path: root/src/mbgl/renderer/paint_parameters.hpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix layers rendering after fill-extrusionAleksandar Stojiljkovic2019-07-091-2/+1
| | | | | | | | | | | | | | | | | | | | | This fixes following issues: * Fix some false passing combinations/fill-extrusion-translucent--XXXX tests * Fix and enable other, failing but ignored, combinations/fill-extrusion-translucent--XXXX tests * Fix rendering of layers that are on top of fill-extrusion layers state.getProjMatrix(nearClippedProjMatrix, 100) caused that tests with size 64x64 were not rendering fill extrusions: far plane calculated as 96.9 and near plane set to 100 was the cause. near plane is changed from hardcoded 100 to depend on state.getCameraToCenterDistance() - producing similar value but one that follows max zoom. This caused that e.g. combinations/fill-extrusion-translucent--fill-opaque was falsely passing as only fill-opaque layer got rendered. combinations/fill-extrusion-translucent--XXXX tests expose regression https://github.com/mapbox/mapbox-gl-native/issues/14844#issuecomment-503600034 in #14844, #14779. Fix (opaquePassCutoff, is3D) is ported from https://github.com/mapbox/mapbox-gl-js/pull/7821 Fixes: #14844, #14779, #15039
* [core] RenderSource creates render itemsMikhail Pozdnyakov2019-07-041-3/+2
|
* [core] Introduce RenderTreeMikhail Pozdnyakov2019-06-251-1/+1
| | | | Split orchestration from rendering in the `Renderer::Impl` implementation.
* [core] PaintParameters do not need UpdateParametersMikhail Pozdnyakov2019-06-251-3/+6
|
* [core] Introduce PatternAtlasMikhail Pozdnyakov2019-06-041-3/+4
|
* [core] end the RenderPass/CommandEncoder before sending eventsKonstantin Käfer2019-05-281-1/+1
|
* [core] Prepare render sources before render layers are initializedMikhail Pozdnyakov2019-05-221-4/+12
|
* [core] add gfx::UploadPass, split startRender into prepare and uploadKonstantin Käfer2019-05-151-4/+1
|
* [core] render extrusions directly in the main framebufferKonstantin Käfer2019-05-081-2/+3
|
* [core] change approach to stencil clipping to (almost) match JSKonstantin Käfer2019-04-291-3/+18
|
* [core] introduce gfx::RenderPassKonstantin Käfer2019-04-051-0/+2
|
* [core] move GLContextMode to RendererBackendKonstantin Käfer2019-04-051-3/+0
|
* [core] refactor RendererBackendKonstantin Käfer2019-04-051-3/+3
|
* [core] move debug groups to gfx::CommandEncoderKonstantin Käfer2019-04-051-0/+3
|
* [core] Introduce variable text placement for point labels - Placement partMikhail Pozdnyakov2019-03-291-2/+3
|
* [core] Introduce variable text placement for point labels - Render partAlexander Shalamov2019-03-291-0/+2
|
* [core] remove gl/context.hpp from more files, cast where necessaryKonstantin Käfer2019-03-201-4/+4
|
* [core] move StencilMode to gfx namespaceKonstantin Käfer2019-03-011-2/+2
|
* [core] move DepthMode to gfx namespaceKonstantin Käfer2019-03-011-3/+3
|
* [core] move ColorMode to gfx namespaceKonstantin Käfer2019-03-011-2/+2
|
* [core] include what you useKonstantin Käfer2019-03-011-1/+1
|
* [core] extract attribute structs and gl::Vertex to separate namespaceKonstantin Käfer2019-03-011-0/+4
|
* [core] align raster imagery rendering to pixel rid to avoid blurrinessKonstantin Käfer2018-01-241-1/+2
|
* [core] Remove dead codeChris Loer2017-11-171-3/+0
| | | | | | - CollisionTile - FrameHistory - PlacementConfig
* [core] Switch from background to foreground placementChris Loer2017-11-171-0/+2
| | | | | | | | | | | | - Background placement code now just generates static symbol buffers - Don't render GeometryTiles until their symbols are loaded. This is necessary for the CrossTileSymbolIndex to successfully prevent flicker. - SymbolInstances are transferred to SymbolBucket for use on foreground during collision detection - Symbols are sorted on foreground by sorting their index buffer but leaving vertex buffers intact (only works within one segment) - Vertical glyphs are generated at same time as horizontal glyphs. `reprojectLineLabels` chooses which one to use at render time and hides the other. - Icons are now always represented with a single collision box, even if they're placed along a line (this means their rotation alignment may be wrong, but the approach of representing them with multiple collision boxes wasn't very accurate either). - Generate vertices for new debug collision boxes and collision circles - Only add symbols within tile boundaries (reduces work, avoids double-draw) - Update symbol_projection.cpp to support line label projection calls from CollisionIndex.
* [core] Move GLContextMode to its own Renderer headerBruno de Oliveira Abinader2017-11-011-0/+1
|
* Preserve depth buffer between 3D layers + optimize render order (#9931)Lauren Budorick2017-09-211-0/+1
| | | Port of https://github.com/mapbox/mapbox-gl-js/pull/5101: adds a new render pass `Pass3D` before any other rendering wherein we render layers with 3D passes (fill-extrusion layers) to offscreen framebuffers, sharing a depth renderbuffer between those layers in order to render 3D space correctly. Those framebuffers are saved on the RenderLayers and copied back to the map during the translucent pass. Rendering to offscreen framebuffers before we do any clear + draw means we can avoid expensive framebuffer restores.
* [core] Merge RenderStyle into Renderer::ImplJohn Firebaugh2017-08-241-3/+4
|
* [all] Merge View into RendererBackendJohn Firebaugh2017-07-261-3/+3
|
* [core] Refactor Painter awayJohn Firebaugh2017-07-191-2/+64
|
* [core] Introduce gl::Program templateJohn Firebaugh2016-11-081-2/+2
|
* [core] separate Backend from View for headless renderingKonstantin Käfer2016-10-251-0/+2
|
* [core] Introduce PaintParametersJohn Firebaugh2016-07-111-0/+12
Use it to DRY selection of regular vs. overdraw shaders and VAOs.