From c26d5bc2bc14a29ff78627646af4edeaa0f28495 Mon Sep 17 00:00:00 2001 From: Carsten Haitzler Date: Sat, 20 Feb 2010 04:37:22 +0000 Subject: [PATCH] simplify shaders to have fewer tmp vars. in case of dumb shader compilers. SVN revision: 46327 --- .../engines/gl_common/shader/rect_vert.h | 1 - .../engines/gl_common/shader/rect_vert.shd | 1 - .../engines/gl_common/shader/yuv_frag.h | 7 +++---- .../engines/gl_common/shader/yuv_frag.shd | 7 +++---- .../engines/gl_common/shader/yuv_nomul_frag.h | 7 +++---- .../gl_common/shader/yuv_nomul_frag.shd | 7 +++---- .../shader/yuv_nomul_frag_bin_s3c6410.h | 20 +++++++++---------- 7 files changed, 22 insertions(+), 28 deletions(-) diff --git a/legacy/evas/src/modules/engines/gl_common/shader/rect_vert.h b/legacy/evas/src/modules/engines/gl_common/shader/rect_vert.h index a504cd0739..19e1b30c61 100644 --- a/legacy/evas/src/modules/engines/gl_common/shader/rect_vert.h +++ b/legacy/evas/src/modules/engines/gl_common/shader/rect_vert.h @@ -3,7 +3,6 @@ "#endif\n" "attribute vec4 vertex;\n" "attribute vec4 color;\n" -"attribute vec2 tex_coord;\n" "uniform mat4 mvp;\n" "varying vec4 col;\n" "void main()\n" diff --git a/legacy/evas/src/modules/engines/gl_common/shader/rect_vert.shd b/legacy/evas/src/modules/engines/gl_common/shader/rect_vert.shd index 3ea4c8bc6e..ea2ed93dd9 100644 --- a/legacy/evas/src/modules/engines/gl_common/shader/rect_vert.shd +++ b/legacy/evas/src/modules/engines/gl_common/shader/rect_vert.shd @@ -3,7 +3,6 @@ precision mediump float; #endif attribute vec4 vertex; attribute vec4 color; -attribute vec2 tex_coord; uniform mat4 mvp; varying vec4 col; void main() diff --git a/legacy/evas/src/modules/engines/gl_common/shader/yuv_frag.h b/legacy/evas/src/modules/engines/gl_common/shader/yuv_frag.h index 379ce91a72..7cf817d97c 100644 --- a/legacy/evas/src/modules/engines/gl_common/shader/yuv_frag.h +++ b/legacy/evas/src/modules/engines/gl_common/shader/yuv_frag.h @@ -12,8 +12,7 @@ " 0.00000, -0.34410, 1.77200, 0.00000,\n" " 1.40200, -0.71410, 0.00000, 0.00000,\n" " -0.77380, 0.45630, -0.95880, 1.00000);\n" -" vec4 yuv = vec4(texture2D(tex, tex_c.xy).r,\n" -" texture2D(texu, tex_c2.xy).r,\n" -" texture2D(texv, tex_c3.xy).r, 1.0);\n" -" gl_FragColor = (yuv2rgb * yuv) * col;\n" +" gl_FragColor = (yuv2rgb * vec4(texture2D(tex, tex_c.xy).r,\n" +" texture2D(texu, tex_c2.xy).r,\n" +" texture2D(texv, tex_c3.xy).r, 1.0)) * col;\n" "}\n" diff --git a/legacy/evas/src/modules/engines/gl_common/shader/yuv_frag.shd b/legacy/evas/src/modules/engines/gl_common/shader/yuv_frag.shd index cc2bc1f098..e91fa8f5e1 100644 --- a/legacy/evas/src/modules/engines/gl_common/shader/yuv_frag.shd +++ b/legacy/evas/src/modules/engines/gl_common/shader/yuv_frag.shd @@ -12,8 +12,7 @@ void main() 0.00000, -0.34410, 1.77200, 0.00000, 1.40200, -0.71410, 0.00000, 0.00000, -0.77380, 0.45630, -0.95880, 1.00000); - vec4 yuv = vec4(texture2D(tex, tex_c.xy).r, - texture2D(texu, tex_c2.xy).r, - texture2D(texv, tex_c3.xy).r, 1.0); - gl_FragColor = (yuv2rgb * yuv) * col; + gl_FragColor = (yuv2rgb * vec4(texture2D(tex, tex_c.xy).r, + texture2D(texu, tex_c2.xy).r, + texture2D(texv, tex_c3.xy).r, 1.0)) * col; } diff --git a/legacy/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag.h b/legacy/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag.h index 457ad22801..e811b01c87 100644 --- a/legacy/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag.h +++ b/legacy/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag.h @@ -11,8 +11,7 @@ " 0.00000, -0.34410, 1.77200, 0.00000,\n" " 1.40200, -0.71410, 0.00000, 0.00000,\n" " -0.77380, 0.45630, -0.95880, 1.00000);\n" -" vec4 yuv = vec4(texture2D(tex, tex_c.xy).r,\n" -" texture2D(texu, tex_c2.xy).r,\n" -" texture2D(texv, tex_c3.xy).r, 1.0);\n" -" gl_FragColor = (yuv2rgb * yuv);\n" +" gl_FragColor = yuv2rgb * vec4(texture2D(tex, tex_c.xy).r,\n" +" texture2D(texu, tex_c2.xy).r,\n" +" texture2D(texv, tex_c3.xy).r, 1.0);\n" "}\n" diff --git a/legacy/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag.shd b/legacy/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag.shd index f80d940c9b..835de48403 100644 --- a/legacy/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag.shd +++ b/legacy/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag.shd @@ -11,8 +11,7 @@ void main() 0.00000, -0.34410, 1.77200, 0.00000, 1.40200, -0.71410, 0.00000, 0.00000, -0.77380, 0.45630, -0.95880, 1.00000); - vec4 yuv = vec4(texture2D(tex, tex_c.xy).r, - texture2D(texu, tex_c2.xy).r, - texture2D(texv, tex_c3.xy).r, 1.0); - gl_FragColor = (yuv2rgb * yuv); + gl_FragColor = yuv2rgb * vec4(texture2D(tex, tex_c.xy).r, + texture2D(texu, tex_c2.xy).r, + texture2D(texv, tex_c3.xy).r, 1.0); } diff --git a/legacy/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag_bin_s3c6410.h b/legacy/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag_bin_s3c6410.h index 0951f16bf3..45aa66d991 100644 --- a/legacy/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag_bin_s3c6410.h +++ b/legacy/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag_bin_s3c6410.h @@ -1,19 +1,19 @@ 0x20205350, 0xffff0008, 0x00000048, 0x01020000, 0x0000000c, 0x00000007, 0x00000000, 0x00000000, 0x00000003, 0x00000000, 0x00000000, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000022, 0x00000000, -0x00000000, 0x02025400, 0x23782050, 0x00000000, 0x00000000, 0x0100e407, -0x307820e4, 0x00000000, 0x01000000, 0x02025400, 0x23782150, 0x00000000, -0x01000000, 0x0101e407, 0x307821e4, 0x00000000, 0x02000000, 0x02025400, +0x00000000, 0x02065400, 0x23782050, 0x00000000, 0x00000000, 0x0100e407, +0x307820e4, 0x00000000, 0x01000000, 0x02065400, 0x23782150, 0x00000000, +0x01000000, 0x0101e407, 0x307821e4, 0x00000000, 0x02000000, 0x02065400, 0x23782250, 0x00000000, 0x02000000, 0x0102e407, 0x307822e4, 0x00000000, -0x00000000, 0x02030001, 0x237823e4, 0x00000000, 0x01e40103, 0x02040001, -0x2ef823e4, 0x00000000, 0x02e40103, 0x02050001, 0x2ef823e4, 0x00000000, -0x00000000, 0x02060000, 0x20f824e4, 0x00000000, 0x02e40103, 0x01040002, +0x00000000, 0x02020001, 0x237823e4, 0x00000000, 0x01e40103, 0x02030001, +0x2ef823e4, 0x00000000, 0x02e40103, 0x02040001, 0x2ef823e4, 0x00000000, +0x00000000, 0x02050000, 0x20f824e4, 0x00000000, 0x06e40103, 0x01040002, 0x2efa10e4, 0x00000000, 0x00000000, 0x00000000, 0x1e000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x3f800000, 0x3f800000, -0x3f800000, 0x3f800000, 0x3f800000, 0x00000000, 0x00000000, 0x00000000, -0x3f94fdf4, 0x3f94fdf4, 0x3f94fdf4, 0x00000000, 0x00000000, 0xbeb02de0, -0x3fe2d0e5, 0x00000000, 0x3fb374bc, 0xbf36cf42, 0x00000000, 0x00000000, -0xbf4617c2, 0x3ee9a027, 0xbf7573eb, 0x3f800000, 0x0000000e, 0x00000005, +0x3f800000, 0x3f800000, 0x3f94fdf4, 0x3f94fdf4, 0x3f94fdf4, 0x00000000, +0x00000000, 0xbeb02de0, 0x3fe2d0e5, 0x00000000, 0x3fb374bc, 0xbf36cf42, +0x00000000, 0x00000000, 0xbf4617c2, 0x3ee9a027, 0xbf7573eb, 0x3f800000, +0x3f800000, 0x00000000, 0x00000000, 0x00000000, 0x0000000e, 0x00000005, 0x00000003, 0x00000000, 0x00000000, 0x00000014, 0x00000006, 0x00000003, 0x00000000, 0x00000004, 0x0000001b, 0x00000006, 0x00000003, 0x00000000, 0x00000008, 0x00000000, 0x00000003, 0x0000000f, 0x00030005, 0x00000000,