evas engine: fix Curved filter shader 86/191686/5
authorSunghyun kim <scholb.kim@samsung.com>
Mon, 22 Oct 2018 08:42:54 +0000 (17:42 +0900)
committerYoungbok Shin <youngb.shin@samsung.com>
Fri, 2 Nov 2018 09:37:58 +0000 (09:37 +0000)
- After use curved filter in GL, Text have a rendering issue.
- So fix it

Change-Id: Ic8ed4ae70163f4620685afccc06df071b2b952e7

src/modules/evas/engines/gl_common/shader/evas_gl_shaders.x
src/modules/evas/engines/gl_common/shader/fragment.glsl

index 018e328..31e0cd7 100755 (executable)
@@ -235,9 +235,9 @@ static const char fragment_glsl[] =
    "#if defined(SHD_FILTER_CURVE)\n"
    "   float old_alpha = max(c.a, 0.00001);\n"
    "   float new_alpha = texture2D(tex_filter, vec2(old_alpha, 0.0)).a;\n"
-   "   c = vec4(texture2D(tex_filter, vec2(c.r / old_alpha, 0.0)).r * new_alpha,\n"
-   "            texture2D(tex_filter, vec2(c.g / old_alpha, 0.0)).g * new_alpha,\n"
-   "            texture2D(tex_filter, vec2(c.b / old_alpha, 0.0)).b * new_alpha,\n"
+   "   c = vec4(texture2D(tex_filter, vec2(c.r, 0.0)).r,\n"
+   "            texture2D(tex_filter, vec2(c.g, 0.0)).g,\n"
+   "            texture2D(tex_filter, vec2(c.b, 0.0)).b,\n"
    "            new_alpha);\n"
    "#endif\n"
    "#ifdef SHD_ALPHA_ONLY\n"
index b005f3d..542d77d 100755 (executable)
@@ -253,9 +253,9 @@ vec4 fetch_pixel(float ox, float oy)
 #if defined(SHD_FILTER_CURVE)
    float old_alpha = max(c.a, 0.00001);
    float new_alpha = texture2D(tex_filter, vec2(old_alpha, 0.0)).a;
-   c = vec4(texture2D(tex_filter, vec2(c.r / old_alpha, 0.0)).r * new_alpha,
-            texture2D(tex_filter, vec2(c.g / old_alpha, 0.0)).g * new_alpha,
-            texture2D(tex_filter, vec2(c.b / old_alpha, 0.0)).b * new_alpha,
+   c = vec4(texture2D(tex_filter, vec2(c.r, 0.0)).r,
+            texture2D(tex_filter, vec2(c.g, 0.0)).g,
+            texture2D(tex_filter, vec2(c.b, 0.0)).b,
             new_alpha);
 #endif