From b032ef4c987f8c77e312a87ba9a7bb9897bc6cdf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Konstantin=20K=C3=A4fer?= Date: Wed, 26 Feb 2020 22:18:33 +0100 Subject: [PATCH] Use glUniform1i for boolean uniforms (#9349) We used glUniform1f for some of them, which caused rendering errors in at least Chrome 48. Changing these calls to the correct call glUniform1i fixes this issue. --- src/render/program/symbol_program.js | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/render/program/symbol_program.js b/src/render/program/symbol_program.js index 98d6d5bb93f..6b082119205 100644 --- a/src/render/program/symbol_program.js +++ b/src/render/program/symbol_program.js @@ -26,7 +26,7 @@ export type SymbolIconUniformsType = {| 'u_matrix': UniformMatrix4f, 'u_label_plane_matrix': UniformMatrix4f, 'u_coord_matrix': UniformMatrix4f, - 'u_is_text': Uniform1f, + 'u_is_text': Uniform1i, 'u_pitch_with_map': Uniform1i, 'u_texsize': Uniform2f, 'u_texture': Uniform1i @@ -45,13 +45,13 @@ export type SymbolSDFUniformsType = {| 'u_matrix': UniformMatrix4f, 'u_label_plane_matrix': UniformMatrix4f, 'u_coord_matrix': UniformMatrix4f, - 'u_is_text': Uniform1f, + 'u_is_text': Uniform1i, 'u_pitch_with_map': Uniform1i, 'u_texsize': Uniform2f, 'u_texture': Uniform1i, 'u_gamma_scale': Uniform1f, 'u_device_pixel_ratio': Uniform1f, - 'u_is_halo': Uniform1f + 'u_is_halo': Uniform1i |}; export type symbolTextAndIconUniformsType = {| @@ -67,7 +67,7 @@ export type symbolTextAndIconUniformsType = {| 'u_matrix': UniformMatrix4f, 'u_label_plane_matrix': UniformMatrix4f, 'u_coord_matrix': UniformMatrix4f, - 'u_is_text': Uniform1f, + 'u_is_text': Uniform1i, 'u_pitch_with_map': Uniform1i, 'u_texsize': Uniform2f, 'u_texsize_icon': Uniform2f, @@ -75,7 +75,7 @@ export type symbolTextAndIconUniformsType = {| 'u_texture_icon': Uniform1i, 'u_gamma_scale': Uniform1f, 'u_device_pixel_ratio': Uniform1f, - 'u_is_halo': Uniform1f + 'u_is_halo': Uniform1i |}; const symbolIconUniforms = (context: Context, locations: UniformLocations): SymbolIconUniformsType => ({ @@ -91,7 +91,7 @@ const symbolIconUniforms = (context: Context, locations: UniformLocations): Symb 'u_matrix': new UniformMatrix4f(context, locations.u_matrix), 'u_label_plane_matrix': new UniformMatrix4f(context, locations.u_label_plane_matrix), 'u_coord_matrix': new UniformMatrix4f(context, locations.u_coord_matrix), - 'u_is_text': new Uniform1f(context, locations.u_is_text), + 'u_is_text': new Uniform1i(context, locations.u_is_text), 'u_pitch_with_map': new Uniform1i(context, locations.u_pitch_with_map), 'u_texsize': new Uniform2f(context, locations.u_texsize), 'u_texture': new Uniform1i(context, locations.u_texture) @@ -110,13 +110,13 @@ const symbolSDFUniforms = (context: Context, locations: UniformLocations): Symbo 'u_matrix': new UniformMatrix4f(context, locations.u_matrix), 'u_label_plane_matrix': new UniformMatrix4f(context, locations.u_label_plane_matrix), 'u_coord_matrix': new UniformMatrix4f(context, locations.u_coord_matrix), - 'u_is_text': new Uniform1f(context, locations.u_is_text), + 'u_is_text': new Uniform1i(context, locations.u_is_text), 'u_pitch_with_map': new Uniform1i(context, locations.u_pitch_with_map), 'u_texsize': new Uniform2f(context, locations.u_texsize), 'u_texture': new Uniform1i(context, locations.u_texture), 'u_gamma_scale': new Uniform1f(context, locations.u_gamma_scale), 'u_device_pixel_ratio': new Uniform1f(context, locations.u_device_pixel_ratio), - 'u_is_halo': new Uniform1f(context, locations.u_is_halo) + 'u_is_halo': new Uniform1i(context, locations.u_is_halo) }); const symbolTextAndIconUniforms = (context: Context, locations: UniformLocations): symbolTextAndIconUniformsType => ({ @@ -132,7 +132,7 @@ const symbolTextAndIconUniforms = (context: Context, locations: UniformLocations 'u_matrix': new UniformMatrix4f(context, locations.u_matrix), 'u_label_plane_matrix': new UniformMatrix4f(context, locations.u_label_plane_matrix), 'u_coord_matrix': new UniformMatrix4f(context, locations.u_coord_matrix), - 'u_is_text': new Uniform1f(context, locations.u_is_text), + 'u_is_text': new Uniform1i(context, locations.u_is_text), 'u_pitch_with_map': new Uniform1i(context, locations.u_pitch_with_map), 'u_texsize': new Uniform2f(context, locations.u_texsize), 'u_texsize_icon': new Uniform2f(context, locations.u_texsize_icon), @@ -140,7 +140,7 @@ const symbolTextAndIconUniforms = (context: Context, locations: UniformLocations 'u_texture_icon': new Uniform1i(context, locations.u_texture_icon), 'u_gamma_scale': new Uniform1f(context, locations.u_gamma_scale), 'u_device_pixel_ratio': new Uniform1f(context, locations.u_device_pixel_ratio), - 'u_is_halo': new Uniform1f(context, locations.u_is_halo) + 'u_is_halo': new Uniform1i(context, locations.u_is_halo) }); const symbolIconUniformValues = (