summaryrefslogtreecommitdiff
path: root/src/mbgl/renderer/painter_fill.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [core] split off render layersIvo van Dongen2017-04-251-6/+6
|
* [core] Eliminate SpritePatternModeJohn Firebaugh2017-02-141-4/+2
|
* [core] Combine SpriteAtlas::getPosition with SpriteAtlas::getImageJohn Firebaugh2017-02-141-2/+2
|
* [core] Add support for data-driven stylingJohn Firebaugh2017-02-021-19/+17
|
* [core] Move fill-outline special case to FillLayer::Impl::evaluateJohn Firebaugh2017-02-021-5/+1
|
* [core] Convert style properties to a tuple-based approachJohn Firebaugh2016-11-171-19/+19
| | | | | | | | This converts the style property classes (CirclePaintProperties and so on) to the same tuple-based approach as gl::Attribute and gl::Uniform. The approach is outlined in https://github.com/mapbox/cpp/blob/master/C%2B%2B%20Structural%20Metaprogramming.md. The main advantage of this approach is it allows writing algorithms that work on sets of style properties, without resorting to code generation or manually repetitive code. This lets us iterate on approaches to data-driven properties more easily. Another advantage is that the cascading, unevaluated, and evaluated states of a set of properties exist as independent structures, instead of individual properties holding their own state. This is a more functional approach that makes data flow clearer and reduces state.
* [core] Use gl::Program to resolve some rough edges in the GL binding typesJohn Firebaugh2016-11-081-33/+47
| | | | | | | | | * Extract `ignore` util to separate header. * `Segment` now tracks offset and length of indices, rather than primitives. This is more natural. * Introduce `VertexVector` and `IndexVector` types. These types carry information about the intended draw mode (`Triangles`, `LineStrip`, etc.), and ensure that elements are always appended in a group size appropriate for that draw mode, for both indexed and unindexed rendering. * `Program`, rather than `Drawable`, is now the unifying object for draw calls. `Program` is the best place to type check the draw call, because it is typed to carry information about the intended primitive, vertex type, attributes, and uniforms. * Use the debug shaders for debug tile rendering, like gl-js. * Fix the draw mode for background. It was drawing triangle strips with a triangles array. Surprised this didn’t cause issues. Now it’s type checked.
* [core] Introduce gl::Program templateJohn Firebaugh2016-11-081-12/+12
|
* [core] force explicit initialization of uniform valuesKonstantin Käfer2016-11-071-7/+7
| | | | force users to use the actual names to avoid implicit conversion accidentally targeting the wrong shader
* [core] remove Uniforms::value in favor of direct constructionKonstantin Käfer2016-11-071-2/+2
|
* [core] Modern C++ bindings for OpenGLJohn Firebaugh2016-10-281-144/+99
|
* [core] change std::array<uint16_t, 2> to mbgl::SizeKonstantin Käfer2016-10-271-2/+2
|
* [core] move gl::Context to Backend and refactor ViewKonstantin Käfer2016-10-251-1/+3
|
* [core] separate Backend from View for headless renderingKonstantin Käfer2016-10-251-1/+2
|
* [core] Rationalize shader namesJohn Firebaugh2016-10-061-4/+4
| | | | {layer type}{subtype}Shader
* [core] remove dependence on gl.h typesKonstantin Käfer2016-09-291-5/+8
|
* [core] merge gl::ObjectStore into gl::ContextKonstantin Käfer2016-09-271-7/+7
|
* [core] rename gl::Config to gl::ContextKonstantin Käfer2016-09-271-18/+18
|
* [core] track VAOs and BuffersKonstantin Käfer2016-09-261-5/+5
|
* [core] change bool overdraw to PaintMode::OverdrawKonstantin Käfer2016-09-071-5/+5
|
* [core] change bool wrap/repeating to enum class SpritePatternModeKonstantin Käfer2016-09-071-2/+4
|
* [core] Use PropertyValue<T> for Annotation line/fillBruno de Oliveira Abinader2016-07-131-5/+2
|
* [core] Move translatedMatrix to RenderTileJohn Firebaugh2016-07-111-2/+3
|
* [core] Pass RenderTile rather than individual parametersJohn Firebaugh2016-07-111-8/+8
|
* [core] Introduce PaintParametersJohn Firebaugh2016-07-111-11/+12
| | | | Use it to DRY selection of regular vs. overdraw shaders and VAOs.
* [core] Introduce non-anonymous Shaders classJohn Firebaugh2016-07-111-8/+5
|
* [core] track texture state to avoid redundand bindsKonstantin Käfer2016-07-081-4/+2
|
* [core] move shaders to anon struct and alias themKonstantin Käfer2016-07-071-58/+57
|
* [core] Fix typo in shader outline patternBruno de Oliveira Abinader2016-07-021-3/+3
|
* [core] Fix overdraw mode on LinuxBruno de Oliveira Abinader2016-07-011-53/+60
| | | | | | | | | | - Use glBindAttribLocation for GLSL attributes. - Create a separate shader for each shader that supports overdraw. Needed because each uniform location must be known for every program. - Create a separate VAO for each shader inside buckets. Needed because we can only bind a VAO to a specific shader. Fixes #5435.
* [core] s/Wireframe/Overdraw/gBruno de Oliveira Abinader2016-06-201-5/+5
|
* [core] Refactor wireframe to match JS overdraw modeBruno de Oliveira Abinader2016-06-201-16/+6
|
* [core] Add a few conveniences to ColorJohn Firebaugh2016-06-151-2/+2
|
* [core] Fix sublayer depth when drawing strokeBruno de Oliveira Abinader2016-06-151-1/+13
| | | | Port from -js: https://github.com/mapbox/mapbox-gl-js/commit/002c69071275997886fd98aa4dbc6025eed36a86
* [core] Cleaned up Painter::render{Background,Fill}Bruno de Oliveira Abinader2016-06-151-46/+39
|
* [core] Separate pattern size from draw-time variablesBruno de Oliveira Abinader2016-06-151-43/+18
| | | | Part of https://github.com/mapbox/mapbox-gl-shaders/issues/1.
* Color class (#5361)Young Hahn2016-06-151-4/+4
| | | | | | * Color class * Switch to list initialization
* [tidy] Check llvm-namespace-commentBruno de Oliveira Abinader2016-06-131-1/+1
| | | | Ref: http://clang.llvm.org/extra/clang-tidy/checks/llvm-namespace-comment.html
* [core] Renamed OutlineShader's color uniformBruno de Oliveira Abinader2016-06-071-2/+2
| | | | Part of https://github.com/mapbox/mapbox-gl-shaders/issues/8.
* [core] Rationalize naming for style-related codeJohn Firebaugh2016-06-021-3/+7
|
* [core] Runtime style layer APIJohn Firebaugh2016-06-021-1/+2
|
* [core] s/GLObjectStore/ObjectStore/Bruno de Oliveira Abinader2016-06-011-7/+7
|
* [core] Port "separate u_opacity from u_color"John Firebaugh2016-05-251-11/+7
| | | | | https://github.com/mapbox/mapbox-gl-shaders/commit/0d3412519618a3a1672db9fa21f96f90070cf84c https://github.com/mapbox/mapbox-gl-js/commit/1f5afa7db08a2bdcc492a46e500ff5d020e6f4a2
* [core] Implement MapDebugOptions::WireframeBruno de Oliveira Abinader2016-05-231-4/+11
| | | | | | | | Together with MapDebugOptions::Collision, provides "wireframe" rendering output so all drawn objects are visible. This mode ignores the line width, background and fill colors for better visualization. Fixes #4359.
* [core] move TileData and dependents to new *TileID classesKonstantin Käfer2016-05-101-1/+0
|
* [core] move Tile to use UnwrappedTileIDKonstantin Käfer2016-05-101-4/+4
|
* [core] move Painter and dependents to new *TileID classesKonstantin Käfer2016-05-101-17/+24
|
* [core] port outlinepattern for fill-pattern anti-aliasing from gl-js to nativeMolly Lloyd2016-04-281-1/+40
| | | | | | | | | | | | | | add outlinepattern shader class to relevant files add outlinepattern code to painter_fill.cpp add outlinepattern code to fill_bucket refactor painter_fill, fix tests fix merge conflicts and setDepthSublayer update render test to no antialiasing so travis will be happy
* [core] Adopt a strict naming convention for style propertiesJohn Firebaugh2016-04-211-22/+22
| | | | This will allow code to be generated from the style specification.
* [core] always set activeTexture before binding a textureAnsis Brammanis2016-04-141-1/+1
|