diff --git a/src/gradient.lolfx b/src/gradient.lolfx index f2c75e80..16bbf767 100644 --- a/src/gradient.lolfx +++ b/src/gradient.lolfx @@ -40,8 +40,31 @@ mat4 cluster = mat4(12.0, 5.0, 6.0, 13.0, void main() { vec4 col = pass_Color; +#if defined GL_ES + int dx = int(mod(gl_FragCoord.x, 4.0)); + int dy = int(mod(gl_FragCoord.y, 4.0)); + /* Cluster */ + float t; + if (dx == 0) + { + if (dy == 0) t = cluster[0][0]; else if (dy == 1) t = cluster[0][1]; else if (dy == 2) t = cluster[0][2]; else t = cluster[0][3]; + } + else if (dx == 1) + { + if (dy == 0) t = cluster[1][0]; else if (dy == 1) t = cluster[1][1]; else if (dy == 2) t = cluster[1][2]; else t = cluster[1][3]; + } + else if (dx == 2) + { + if (dy == 0) t = cluster[2][0]; else if (dy == 1) t = cluster[2][1]; else if (dy == 2) t = cluster[2][2]; else t = cluster[2][3]; + } + else + { + if (dy == 0) t = cluster[3][0]; else if (dy == 1) t = cluster[3][1]; else if (dy == 2) t = cluster[3][2]; else t = cluster[3][3]; + } +#else float t = cluster[int(mod(gl_FragCoord.x, 4.0))] [int(mod(gl_FragCoord.y, 4.0))]; +#endif t = (t + 0.5) / 17.0; col.x += fract(t - col.x) - t; col.y += fract(t - col.y) - t;