summaryrefslogtreecommitdiff
path: root/src/mbgl/gl
Commit message (Collapse)AuthorAgeFilesLines
* Bump Mapbox GL NativeThiago Marcos P. Santos2017-11-022-11/+5
| | | | mapbox-gl-native @ 13ec2cc562ce98a089b47dee2987b5e58a0384e2
* Bump Mapbox GL NativeThiago Marcos P. Santos2017-11-013-32/+19
| | | | mapbox-gl-native @ 0ef7b7154f6d4498077a83db5c486c61bc34938c
* Bump Mapbox GL NativeThiago Marcos P. Santos2017-10-185-13/+40
| | | | mapbox-gl-native @ 10f7af19ce1ec61f37459f9cd75e2a0c89a0c790
* Bump Mapbox GL Nativeqt-v1.1.0Thiago Marcos P. Santos2017-08-0929-620/+1421
| | | | mapbox-gl-native @ edd7948893fcd40a24d96b790e21d3dd028cecbe
* [gcc4.9] Only do bracket initialization where GCC4.9 can handle itThiago Marcos P. Santos2017-01-243-3/+9
| | | | | GCC 4.9 cannot do bracket initialization when one of the attributes already has a default value.
* [gcc4.9] Make constexpr usage compatible with GCC 4.9Thiago Marcos P. Santos2017-01-242-6/+4
|
* [core] Disable debug groups in release buildsJohn Firebaugh2017-01-172-36/+38
|
* [core] Restore GL_KHR_debug messages in release buildsJohn Firebaugh2017-01-172-15/+8
| | | | This reverts commit 8c4da72d09e585bd10d030129c99e1e609a2d2f9.
* [core] Remove constexpr from ColorJohn Firebaugh2017-01-042-4/+4
| | | | GCC can't cope with it.
* [core] Fix debug renderingJohn Firebaugh2016-12-131-0/+1
| | | | | * Off-by-one in DebugBucket indexing * Must unbind VAO before binding index buffer in Context::createIndexBuffer
* [core] Use indexed rendering everywhereJohn Firebaugh2016-12-013-45/+5
|
* [build] move logging to utilKonstantin Käfer2016-11-222-3/+3
|
* [core] Return to static, per-segment approach to VAOsJohn Firebaugh2016-11-153-42/+10
| | | | This is safer now -- it can be an implementation detail of Segment/Context. And the typing of SegmentVector now ensures that the attributes and program match.
* [core] Introduce SegmentVectorJohn Firebaugh2016-11-152-3/+17
|
* [core] Assign attribute locations sequentiallyJohn Firebaugh2016-11-155-11/+21
| | | | | | | Two reasons to prefer explicit sequential location assignment, rather than relying on the GLSL linker to assign locations: * For data-driven properties, we want to have the option to use glDisableVertexAttribArray plus glVertexAttrib*. In order to use glDisableVertexAttribArray, we must avoid using attribute location 0, which cannot be disabled. * We want to use the same VAO in cases where, say, a fill layer might be rendered with FillProgram at first, and then FillPatternProgram later. VAOs do not store the program binding, only the attribute bindings, so as long as the two programs have the same attributes and attribute locations, only a single VAO (per segment) is needed.
* [core] don't show OpenGL debug information on startupKonstantin Käfer2016-11-141-24/+2
|
* [core] Require point size / line width for DrawMode constructorsJohn Firebaugh2016-11-081-0/+12
|
* [core] Put ignore in util namespaceJohn Firebaugh2016-11-084-9/+9
|
* [core] Introduce and use IndexedTupleJohn Firebaugh2016-11-082-19/+15
|
* [core] Use gl::Program to resolve some rough edges in the GL binding typesJohn Firebaugh2016-11-0811-182/+210
| | | | | | | | | * 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-0811-190/+119
|
* [core] Make attribute binding more similar to uniform bindingJohn Firebaugh2016-11-084-37/+181
|
* [core] move Value class outside of Uniform to enforce explicit constructionKonstantin Käfer2016-11-071-4/+8
|
* [core] force explicit initialization of uniform valuesKonstantin Käfer2016-11-071-1/+0
| | | | 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-5/+0
|
* [core] move pixel blitting to gl::ContextKonstantin Käfer2016-11-042-0/+22
|
* [core] move OpenGL debug information printing to coreKonstantin Käfer2016-11-041-12/+31
|
* [core] move framebuffer reading to gl::ContextKonstantin Käfer2016-11-043-0/+40
|
* [core] add state tracking to pixel transferKonstantin Käfer2016-11-044-0/+60
|
* [core] add state tracking to pixel store packing alignmentKonstantin Käfer2016-11-045-2/+59
|
* [core] convert LineAtlas to use managed texture handlingKonstantin Käfer2016-11-014-12/+36
|
* [core] add ability to upload alpha-only textures + imagesKonstantin Käfer2016-11-013-11/+25
|
* [core] convert SpriteAtlas to use managed texture handlingKonstantin Käfer2016-11-012-3/+16
|
* [core] correctly set the framebuffer size on retina screensKonstantin Käfer2016-11-011-0/+4
| | | | Also asserts in Debug mode that the internal state and the OpenGL state are identical
* [core] Use VAOs internallyJohn Firebaugh2016-10-282-19/+79
|
* [core] Modern C++ bindings for OpenGLJohn Firebaugh2016-10-2820-397/+827
|
* [core] change std::array<uint16_t, 2> to mbgl::SizeKonstantin Käfer2016-10-277-30/+24
|
* [core] move gl::Context to Backend and refactor ViewKonstantin Käfer2016-10-2511-74/+250
|
* [core] Make ElementGroup saferJohn Firebaugh2016-10-053-35/+1
| | | | | | Template on shader types, rather than count. This allows the compiler to enforce using the correct VAO for the shader and PaintMode. This fixes OverdrawMode with circle layers. While here, avoid using unique_ptrs for groups. Instead, ensure ElementGroup is movable.
* [core] Improve attribute binding APIJohn Firebaugh2016-10-057-16/+98
|
* [core] Put VertexArrayObject in gl namespaceJohn Firebaugh2016-10-052-25/+29
|
* [core] Move shader and uniform to gl directoryJohn Firebaugh2016-10-056-5/+290
|
* [core] Refactor BufferJohn Firebaugh2016-10-057-9/+256
|
* [core] remove Raster object in favor of a more low-level Texture objectKonstantin Käfer2016-10-044-0/+81
|
* [core] only load debug extensions in debug modeKonstantin Käfer2016-09-292-8/+15
|
* [core] move OpenGL extension loading to their own headersKonstantin Käfer2016-09-298-54/+128
|
* [core] remove dependence on gl.h typesKonstantin Käfer2016-09-295-313/+672
|
* [core] introduces types for GL objectsKonstantin Käfer2016-09-296-40/+70
|
* [core] rename VAO => VertexArray, FBO => FramebufferKonstantin Käfer2016-09-296-32/+34
|
* [core] don't iterate over references to uint32_tKonstantin Käfer2016-09-281-9/+9
|