summaryrefslogtreecommitdiff
path: root/src/mbgl/renderer/painter_raster.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [core] Move renderer/* files into sub-folders (#8983)Asheem Mamoowala2017-05-121-88/+0
| | | Move renderer/* files into sub-folders
* [core] Render fill-extrusion layers (#8431)Lauren Budorick2017-04-271-1/+1
|
* [core] split off render layersIvo van Dongen2017-04-251-3/+3
|
* [core] Add support for data-driven stylingJohn Firebaugh2017-02-021-1/+5
|
* [core] Update gl-js for shader changeJohn Firebaugh2016-12-231-2/+2
|
* [core] Use indexed rendering everywhereJohn Firebaugh2016-12-011-1/+2
|
* [core] Convert style properties to a tuple-based approachJohn Firebaugh2016-11-171-7/+7
| | | | | | | | 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] Introduce SegmentVectorJohn Firebaugh2016-11-151-1/+2
|
* [core] Use gl::Program to resolve some rough edges in the GL binding typesJohn Firebaugh2016-11-081-4/+5
| | | | | | | | | * 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-4/+4
|
* [core] force explicit initialization of uniform valuesKonstantin Käfer2016-11-071-13/+13
| | | | 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-31/+30
|
* [core] Methods don't need to be Painter instance methodsJohn Firebaugh2016-10-281-28/+28
|
* [core] Adhere to vertices/vertexBuffer naming conventionJohn Firebaugh2016-10-051-1/+1
|
* [core] Refactor BufferJohn Firebaugh2016-10-051-1/+1
|
* [core] remove dependence on gl.h typesKonstantin Käfer2016-09-291-4/+4
|
* [core] merge gl::ObjectStore into gl::ContextKonstantin Käfer2016-09-271-1/+1
|
* [core] rename gl::Config to gl::ContextKonstantin Käfer2016-09-271-6/+6
|
* [core] Pass RenderTile rather than individual parametersJohn Firebaugh2016-07-111-3/+3
|
* [core] Introduce PaintParametersJohn Firebaugh2016-07-111-4/+5
| | | | Use it to DRY selection of regular vs. overdraw shaders and VAOs.
* [core] Introduce non-anonymous Shaders classJohn Firebaugh2016-07-111-2/+2
|
* [core] Fix raster shader opacity in some casesBruno de Oliveira Abinader2016-07-111-1/+1
|
* [core] move shaders to anon struct and alias themKonstantin Käfer2016-07-071-17/+17
|
* [core] Update RasterShaderBruno de Oliveira Abinader2016-07-021-7/+14
| | | | Ref: https://github.com/mapbox/mapbox-gl-shaders/issues/1
* [core] Fix overdraw mode on LinuxBruno de Oliveira Abinader2016-07-011-11/+13
| | | | | | | | | | - 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] Merge TexturePool into ObjectStore; pool all textures (#5477)John Firebaugh2016-06-271-1/+1
|
* [core] remove TexturePool dependency from Raster constructorKonstantin Käfer2016-06-221-1/+1
|
* [core] s/Wireframe/Overdraw/gBruno de Oliveira Abinader2016-06-201-1/+1
|
* [core] Refactor wireframe to match JS overdraw modeBruno de Oliveira Abinader2016-06-201-1/+1
|
* [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] 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-1/+1
|
* [core] move Painter and dependents to new *TileID classesKonstantin Käfer2016-05-101-1/+4
|
* [core] Adopt a strict naming convention for style propertiesJohn Firebaugh2016-04-211-6/+6
| | | | This will allow code to be generated from the style specification.
* [core] always set activeTexture before binding a textureAnsis Brammanis2016-04-141-0/+4
|
* [core] disable stencil test for rastersKonstantin Käfer2016-04-061-2/+1
|
* [core] Enforce constants usageBruno de Oliveira Abinader2016-03-011-1/+1
| | | | | Use 'LATITUDE_MAX', 'LONGITUDE_MAX', 'DEG2RAD' and 'RAD2DEG' whenever possible.
* [core] Thread GLObjectStore through to Holder objectsJohn Firebaugh2016-02-181-1/+1
| | | | | | This eliminates the reliance on ThreadContext to provide GLObjectStore, and statically enforces that GL cleanup functions happen only when GLObjectStore::performCleanup is called. With the elimination of the Map thread, this becomes important because there may be multiple GLObjectStore's per-thread, and Map will need to ensure that the correct context is active when calling GLObjectStore::performCleanup.
* [gl] Use Shader::getID() whenever possibleBruno de Oliveira Abinader2016-02-181-1/+1
|
* [core] move platform/gl.hpp to gl/gl.hppKonstantin Käfer2016-02-081-1/+1
|
* [core] Ensure GL state is set to necessary values in more placesJohn Firebaugh2015-12-091-0/+1
|
* [core] Eliminate use of ClassProperties for paintJohn Firebaugh2015-11-101-4/+4
|
* [core] Reset GL values when neededBruno de Oliveira Abinader2015-11-061-0/+2
|
* [core] Use GL_TRUE/GL_FALSE instead of true/falseBruno de Oliveira Abinader2015-11-061-2/+2
|
* [core] Move remaining GL state from Painter into GLConfig objectKonstantin Käfer2015-11-041-1/+1
|
* [core] Introduce StyleLayer subclassesJohn Firebaugh2015-10-221-3/+3
|
* [core] Rationalize style property classes: <type>{Paint,Layout}PropertiesJohn Firebaugh2015-10-221-1/+1
|
* fix depth clipping in perspective viewAnsis Brammanis2015-08-241-1/+1
| | | | | | | | | The depth range is now set slightly differently. Both ends of the range are shifted for each layer to solve some precision issues. Some layers draw multiple things at different depths. For example, fill layers draw fills and antialiasing separately. To handle this case, I added setDepthSublayer(n) which a