diff options
Diffstat (limited to 'src/mbgl/shader/mesh.hpp')
-rw-r--r-- | src/mbgl/shader/mesh.hpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/mbgl/shader/mesh.hpp b/src/mbgl/shader/mesh.hpp new file mode 100644 index 000000000..3df0c7463 --- /dev/null +++ b/src/mbgl/shader/mesh.hpp @@ -0,0 +1,31 @@ +#pragma once + +#include <mbgl/util/size.hpp> +#include <mbgl/gl/vertex_buffer.hpp> +#include <mbgl/gl/index_buffer.hpp> +#include <mbgl/gl/segment.hpp> +#include <mbgl/shader/fill_vertex.hpp> + +namespace mbgl { +namespace gl { + +namespace gl { +class Context; +} // namespace gl + +class Mesh { +public: + Mesh(Size size); + + void upload(gl::Context&); + + std::vector<FillVertex> vertices; + std::vector<gl::Triangle> triangles; + std::vector<gl::Segment> triangleSegments { { 0, 0 } }; + + optional<gl::VertexBuffer<FillVertex>> vertexBuffer; + optional<gl::IndexBuffer<gl::Triangle>> triangleIndexBuffer; +}; + +} // namespace gl +} // namespace mbgl |