diff options
Diffstat (limited to 'src/mbgl/programs/symbol_program.hpp')
-rw-r--r-- | src/mbgl/programs/symbol_program.hpp | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/src/mbgl/programs/symbol_program.hpp b/src/mbgl/programs/symbol_program.hpp index d1a6b4b994..c38ed04a1e 100644 --- a/src/mbgl/programs/symbol_program.hpp +++ b/src/mbgl/programs/symbol_program.hpp @@ -42,15 +42,17 @@ MBGL_DEFINE_UNIFORM_SCALAR(bool, u_is_size_feature_constant); MBGL_DEFINE_UNIFORM_SCALAR(float, u_size_t); MBGL_DEFINE_UNIFORM_SCALAR(float, u_size); MBGL_DEFINE_UNIFORM_SCALAR(float, u_layout_size); -MBGL_DEFINE_UNIFORM_SCALAR(float, u_collision_y_stretch); +MBGL_DEFINE_UNIFORM_SCALAR(float, u_max_camera_distance); } // namespace uniforms struct SymbolLayoutAttributes : gl::Attributes< attributes::a_pos_offset, + attributes::a_label_pos, attributes::a_data<uint16_t, 4>> { static Vertex vertex(Point<float> a, Point<float> o, + Point<float> labelAnchor, uint16_t tx, uint16_t ty, float minzoom, @@ -66,6 +68,10 @@ struct SymbolLayoutAttributes : gl::Attributes< static_cast<int16_t>(::round(o.y * 64)) }}, {{ + static_cast<int16_t>(labelAnchor.x), + static_cast<int16_t>(labelAnchor.y) + }}, + {{ tx, ty, mbgl::attributes::packUint8Pair( @@ -391,7 +397,10 @@ class SymbolIconProgram : public SymbolProgram< uniforms::u_texture, uniforms::u_fadetexture, uniforms::u_is_text, - uniforms::u_collision_y_stretch>, + uniforms::u_collision_y_stretch, + uniforms::u_camera_to_center_distance, + uniforms::u_pitch, + uniforms::u_max_camera_distance>, style::IconPaintProperties> { public: @@ -425,8 +434,10 @@ class SymbolSDFProgram : public SymbolProgram< uniforms::u_fadetexture, uniforms::u_is_text, uniforms::u_collision_y_stretch, - uniforms::u_gamma_scale, + uniforms::u_camera_to_center_distance, uniforms::u_pitch, + uniforms::u_max_camera_distance, + uniforms::u_gamma_scale, uniforms::u_bearing, uniforms::u_aspect_ratio, uniforms::u_pitch_with_map, @@ -447,8 +458,10 @@ public: uniforms::u_fadetexture, uniforms::u_is_text, uniforms::u_collision_y_stretch, - uniforms::u_gamma_scale, + uniforms::u_camera_to_center_distance, uniforms::u_pitch, + uniforms::u_max_camera_distance, + uniforms::u_gamma_scale, uniforms::u_bearing, uniforms::u_aspect_ratio, uniforms::u_pitch_with_map, |