#pragma once #include #include #include #include namespace mbgl { class LineVertex; class LineShader : public gl::Shader { public: LineShader(gl::Context&, Defines defines = None); using VertexType = LineVertex; gl::Attribute a_pos = { "a_pos", *this }; gl::Attribute a_data = { "a_data", *this }; gl::UniformMatrix<4> u_matrix = {"u_matrix", *this}; gl::Uniform u_color = {"u_color", *this}; gl::Uniform u_opacity = {"u_opacity", *this}; gl::Uniform u_ratio = {"u_ratio", *this}; gl::Uniform u_linewidth = {"u_linewidth", *this}; gl::Uniform u_gapwidth = {"u_gapwidth", *this}; gl::Uniform u_antialiasing = {"u_antialiasing", *this}; gl::Uniform u_blur = {"u_blur", *this}; gl::Uniform u_extra = {"u_extra", *this}; gl::Uniform u_offset = {"u_offset", *this}; gl::UniformMatrix<2> u_antialiasingmatrix = {"u_antialiasingmatrix", *this}; }; } // namespace mbgl