From 549991329889a115d3c6fa08210374931ac4e5d1 Mon Sep 17 00:00:00 2001 From: Chris Loer Date: Thu, 22 Mar 2018 12:19:11 -0700 Subject: [core] Double maximum label width by reducing glyph precision. Fixes issue #11507. Port of GL JS PR #6375. --- mapbox-gl-js | 2 +- src/mbgl/programs/symbol_program.hpp | 4 ++-- src/mbgl/shaders/symbol_icon.cpp | 2 +- src/mbgl/shaders/symbol_sdf.cpp | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/mapbox-gl-js b/mapbox-gl-js index 11552cf279..3c07b72a59 160000 --- a/mapbox-gl-js +++ b/mapbox-gl-js @@ -1 +1 @@ -Subproject commit 11552cf2792ca239b18d7c77663492ead6365cb6 +Subproject commit 3c07b72a59d78bc6240a8e3d77a54bec7619af5d diff --git a/src/mbgl/programs/symbol_program.hpp b/src/mbgl/programs/symbol_program.hpp index a14afac702..9b5037ed9f 100644 --- a/src/mbgl/programs/symbol_program.hpp +++ b/src/mbgl/programs/symbol_program.hpp @@ -61,8 +61,8 @@ struct SymbolLayoutAttributes : gl::Attributes< {{ static_cast(labelAnchor.x), static_cast(labelAnchor.y), - static_cast(::round(o.x * 64)), // use 1/64 pixels for placement - static_cast(::round((o.y + glyphOffsetY) * 64)) + static_cast(::round(o.x * 32)), // use 1/32 pixels for placement + static_cast(::round((o.y + glyphOffsetY) * 32)) }}, {{ tx, diff --git a/src/mbgl/shaders/symbol_icon.cpp b/src/mbgl/shaders/symbol_icon.cpp index da31d36291..c037c81005 100644 --- a/src/mbgl/shaders/symbol_icon.cpp +++ b/src/mbgl/shaders/symbol_icon.cpp @@ -105,7 +105,7 @@ void main() { mat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos); vec4 projected_pos = u_label_plane_matrix * vec4(a_projected_pos.xy, 0.0, 1.0); - gl_Position = u_gl_coord_matrix * vec4(projected_pos.xy / projected_pos.w + rotation_matrix * (a_offset / 64.0 * fontScale), 0.0, 1.0); + gl_Position = u_gl_coord_matrix * vec4(projected_pos.xy / projected_pos.w + rotation_matrix * (a_offset / 32.0 * fontScale), 0.0, 1.0); v_tex = a_tex / u_texsize; vec2 fade_opacity = unpack_opacity(a_fade_opacity); diff --git a/src/mbgl/shaders/symbol_sdf.cpp b/src/mbgl/shaders/symbol_sdf.cpp index 46bab10be5..b584c00315 100644 --- a/src/mbgl/shaders/symbol_sdf.cpp +++ b/src/mbgl/shaders/symbol_sdf.cpp @@ -183,7 +183,7 @@ void main() { mat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos); vec4 projected_pos = u_label_plane_matrix * vec4(a_projected_pos.xy, 0.0, 1.0); - gl_Position = u_gl_coord_matrix * vec4(projected_pos.xy / projected_pos.w + rotation_matrix * (a_offset / 64.0 * fontScale), 0.0, 1.0); + gl_Position = u_gl_coord_matrix * vec4(projected_pos.xy / projected_pos.w + rotation_matrix * (a_offset / 32.0 * fontScale), 0.0, 1.0); float gamma_scale = gl_Position.w; vec2 tex = a_tex / u_texsize; -- cgit v1.2.1