From 064947356ab85f9255316dccc4217eb0e507e768 Mon Sep 17 00:00:00 2001 From: Emmanuel Gil Peyrot Date: Sat, 13 Mar 2021 22:00:54 +0000 Subject: [PATCH] =?UTF-8?q?ngl:=20Fix=20the=20coloring=20shader=20on=20GLE?= =?UTF-8?q?S=C2=A02.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Integer varyings didn’t exist in GLSL ES 1.00, neither did the flat attribute. --- gsk/ngl/resources/coloring.glsl | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gsk/ngl/resources/coloring.glsl b/gsk/ngl/resources/coloring.glsl index 69b21c6e2e..5b5d46a732 100644 --- a/gsk/ngl/resources/coloring.glsl +++ b/gsk/ngl/resources/coloring.glsl @@ -2,7 +2,7 @@ // coloring.glsl _OUT_ vec4 final_color; -flat _OUT_ int use_color; +_OUT_ float use_color; void main() { gl_Position = u_projection * u_modelview * vec4(aPosition, 0.0, 1.0); @@ -13,9 +13,9 @@ void main() { // and color glpyhs (used as source). The renderer sets // aColor to vec4(-1) for color glyhs. if (distance(aColor, vec4(-1)) < 0.001) - use_color = 0; + use_color = 0.0; else - use_color = 1; + use_color = 1.0; final_color = gsk_premultiply(aColor) * u_alpha; } @@ -24,12 +24,12 @@ void main() { // coloring.glsl _IN_ vec4 final_color; -flat _IN_ int use_color; +_IN_ float use_color; void main() { vec4 diffuse = GskTexture(u_source, vUv); - if (use_color == 1) + if (use_color > 0.0) gskSetOutputColor(final_color * diffuse.a); else gskSetOutputColor(diffuse * u_alpha);