diff options
author | John Firebaugh <john.firebaugh@gmail.com> | 2016-09-26 12:53:32 -0700 |
---|---|---|
committer | John Firebaugh <john.firebaugh@gmail.com> | 2016-10-05 10:52:19 -0700 |
commit | 7a3bef091e7390fa57bf33f1a704c893768b5625 (patch) | |
tree | af798d879923fd45e763f5dc5449b7e8419aa192 /src/mbgl/renderer/circle_bucket.hpp | |
parent | ac8a74ebccb85f83c40b9fccfeb11dc2cb3c79e4 (diff) | |
download | qtlocation-mapboxgl-7a3bef091e7390fa57bf33f1a704c893768b5625.tar.gz |
[core] Refactor Buffer
Diffstat (limited to 'src/mbgl/renderer/circle_bucket.hpp')
-rw-r--r-- | src/mbgl/renderer/circle_bucket.hpp | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/src/mbgl/renderer/circle_bucket.hpp b/src/mbgl/renderer/circle_bucket.hpp index 9e9357d77f..5f4f357d2f 100644 --- a/src/mbgl/renderer/circle_bucket.hpp +++ b/src/mbgl/renderer/circle_bucket.hpp @@ -3,17 +3,16 @@ #include <mbgl/renderer/bucket.hpp> #include <mbgl/map/mode.hpp> #include <mbgl/tile/geometry_tile_data.hpp> -#include <mbgl/geometry/elements_buffer.hpp> -#include <mbgl/geometry/circle_buffer.hpp> +#include <mbgl/gl/vertex_buffer.hpp> +#include <mbgl/gl/index_buffer.hpp> +#include <mbgl/gl/element_group.hpp> +#include <mbgl/shader/circle_vertex.hpp> namespace mbgl { -class CircleVertexBuffer; class CircleShader; class CircleBucket : public Bucket { - using TriangleGroup = ElementGroup<3>; - public: CircleBucket(const MapMode); ~CircleBucket() override; @@ -28,10 +27,14 @@ public: void drawCircles(CircleShader&, gl::Context&); private: - CircleVertexBuffer vertexBuffer_; - TriangleElementsBuffer elementsBuffer_; + std::vector<CircleVertex> vertices; + std::vector<gl::Triangle> triangles; + + using TriangleGroup = gl::ElementGroup<3>; + std::vector<std::unique_ptr<TriangleGroup>> triangleGroups; - std::vector<std::unique_ptr<TriangleGroup>> triangleGroups_; + optional<gl::VertexBuffer<CircleVertex>> vertexBuffer; + optional<gl::IndexBuffer<gl::Triangle>> indexBuffer; const MapMode mode; }; |