Evas GL common: Use uniform instead of attribute for sample

Image and texture programs "12", "21" and "22" used tex_sample
as a texture attribute passed to the vertex shader. Instead of
this seemingly hackish solution, use a vec2 uniform.
This commit is contained in:
Jean-Philippe Andre 2015-02-11 20:39:05 +09:00
parent 7c5f92d702
commit 986b60eaf0
28 changed files with 180 additions and 233 deletions

View File

@ -276,8 +276,7 @@
#define SHAD_TEXUV2 3
#define SHAD_TEXUV3 4
#define SHAD_TEXA 5
#define SHAD_TEXSAM 6
#define SHAD_TEXM 7
#define SHAD_TEXM 6
typedef struct _Evas_GL_Program Evas_GL_Program;
typedef struct _Evas_GL_Program_Source Evas_GL_Program_Source;
@ -474,7 +473,6 @@ struct _Evas_Engine_GL_Context
GLfloat *texuv2;
GLfloat *texuv3;
GLfloat *texa;
GLfloat *texsam;
GLfloat *texm;
Eina_List *uniforms; /* Evas_GL_Uniform */
Eina_Bool line: 1;
@ -484,7 +482,6 @@ struct _Evas_Engine_GL_Context
Eina_Bool use_texuv2 : 1;
Eina_Bool use_texuv3 : 1;
Eina_Bool use_texa : 1;
Eina_Bool use_texsam : 1;
Eina_Bool use_texm : 1;
Eina_Bool anti_alias : 1;
Evas_GL_Image *im;

View File

@ -949,7 +949,6 @@ evas_gl_common_context_free(Evas_Engine_GL_Context *gc)
if (gc->pipe[i].array.texa) free(gc->pipe[i].array.texa);
if (gc->pipe[i].array.texuv2) free(gc->pipe[i].array.texuv2);
if (gc->pipe[i].array.texuv3) free(gc->pipe[i].array.texuv3);
if (gc->pipe[i].array.texsam) free(gc->pipe[i].array.texsam);
if (gc->pipe[i].array.texm) free(gc->pipe[i].array.texm);
}
}
@ -1251,9 +1250,6 @@ evas_gl_common_context_target_surface_set(Evas_Engine_GL_Context *gc,
#define PUSH_TEXM(n, u, v) do { \
gc->pipe[n].array.texm[nm++] = u; \
gc->pipe[n].array.texm[nm++] = v; } while(0)
#define PUSH_TEXSAM(n, x, y) do { \
gc->pipe[n].array.texsam[ns++] = x; \
gc->pipe[n].array.texsam[ns++] = y; } while(0)
#define PUSH_6_COLORS(pn, r, g, b, a) \
do { int i; for (i = 0; i < 6; i++) PUSH_COLOR(pn, r, g, b, a); } while(0)
@ -1300,7 +1296,6 @@ array_alloc(Evas_Engine_GL_Context *gc, int n)
ALOC(texa, GLfloat, 2);
ALOC(texuv2, GLfloat, 2);
ALOC(texuv3, GLfloat, 2);
ALOC(texsam, GLfloat, 2);
ALOC(texm, GLfloat, 2);
return;
}
@ -1316,7 +1311,6 @@ array_alloc(Evas_Engine_GL_Context *gc, int n)
RALOC(texa, GLfloat, 2);
RALOC(texuv2, GLfloat, 2);
RALOC(texuv3, GLfloat, 2);
RALOC(texsam, GLfloat, 2);
RALOC(texm, GLfloat, 2);
}
@ -1653,7 +1647,6 @@ evas_gl_common_context_line_push(Evas_Engine_GL_Context *gc,
gc->pipe[pn].array.use_texuv2 = 0;
gc->pipe[pn].array.use_texuv3 = 0;
gc->pipe[pn].array.use_texa = 0;
gc->pipe[pn].array.use_texsam = 0;
gc->pipe[pn].array.use_texm = 0;
PIPE_GROW(gc, pn, 2);
@ -1674,7 +1667,6 @@ evas_gl_common_context_line_push(Evas_Engine_GL_Context *gc,
gc->pipe[pn].array.use_texuv2 = 0;
gc->pipe[pn].array.use_texuv3 = 0;
gc->pipe[pn].array.use_texa = 0;
gc->pipe[pn].array.use_texsam = 0;
gc->pipe[pn].array.use_texm = 0;
}
@ -1727,7 +1719,6 @@ again:
gc->pipe[pn].array.use_texuv2 = 0;
gc->pipe[pn].array.use_texuv3 = 0;
gc->pipe[pn].array.use_texa = 0;
gc->pipe[pn].array.use_texsam = 0;
gc->pipe[pn].array.use_texm = !!mtex;
}
else
@ -1779,7 +1770,6 @@ again:
gc->pipe[pn].array.use_texuv2 = 0;
gc->pipe[pn].array.use_texuv3 = 0;
gc->pipe[pn].array.use_texa = 0;
gc->pipe[pn].array.use_texsam = 0;
gc->pipe[pn].array.use_texm = !!mtex;
}
}
@ -1815,7 +1805,6 @@ again:
gc->pipe[pn].array.use_texuv2 = 0;
gc->pipe[pn].array.use_texuv3 = 0;
gc->pipe[pn].array.use_texa = 0;
gc->pipe[pn].array.use_texsam = 0;
gc->pipe[pn].array.use_texm = !!mtex;
#endif
@ -2070,7 +2059,6 @@ evas_gl_common_context_image_push(Evas_Engine_GL_Context *gc,
gc->pipe[pn].array.use_texuv2 = 0;
gc->pipe[pn].array.use_texuv3 = 0;
gc->pipe[pn].array.use_texm = !!mtex;
gc->pipe[pn].array.use_texsam = sam;
pipe_region_expand(gc, pn, x, y, w, h);
PIPE_GROW(gc, pn, 6);
@ -2110,14 +2098,7 @@ evas_gl_common_context_image_push(Evas_Engine_GL_Context *gc,
{
double samx = (double)(sw) / (double)(tex->pt->w * w * 4);
double samy = (double)(sh) / (double)(tex->pt->h * h * 4);
PUSH_TEXSAM(pn, samx, samy);
PUSH_TEXSAM(pn, samx, samy);
PUSH_TEXSAM(pn, samx, samy);
PUSH_TEXSAM(pn, samx, samy);
PUSH_TEXSAM(pn, samx, samy);
PUSH_TEXSAM(pn, samx, samy);
PUSH_UNIFORM(pn, EVAS_GL_UNIFORM_VEC2, "sample", samx, samy);
}
PUSH_MASK(pn, mtex, mx, my, mw, mh);
@ -2170,7 +2151,6 @@ evas_gl_common_context_font_push(Evas_Engine_GL_Context *gc,
gc->pipe[pn].array.use_texuv2 = 0;
gc->pipe[pn].array.use_texuv3 = 0;
gc->pipe[pn].array.use_texm = !!mtex;
gc->pipe[pn].array.use_texsam = 0;
pipe_region_expand(gc, pn, x, y, w, h);
PIPE_GROW(gc, pn, 6);
@ -2264,7 +2244,6 @@ evas_gl_common_context_yuv_push(Evas_Engine_GL_Context *gc,
gc->pipe[pn].array.use_texuv2 = 1;
gc->pipe[pn].array.use_texuv3 = 1;
gc->pipe[pn].array.use_texm = !!mtex;
gc->pipe[pn].array.use_texsam = 0;
pipe_region_expand(gc, pn, x, y, w, h);
PIPE_GROW(gc, pn, 6);
@ -2368,7 +2347,6 @@ evas_gl_common_context_yuy2_push(Evas_Engine_GL_Context *gc,
gc->pipe[pn].array.use_texuv2 = 1;
gc->pipe[pn].array.use_texuv3 = 0;
gc->pipe[pn].array.use_texm = !!mtex;
gc->pipe[pn].array.use_texsam = 0;
pipe_region_expand(gc, pn, x, y, w, h);
PIPE_GROW(gc, pn, 6);
@ -2466,7 +2444,6 @@ evas_gl_common_context_nv12_push(Evas_Engine_GL_Context *gc,
gc->pipe[pn].array.use_texuv2 = 1;
gc->pipe[pn].array.use_texuv3 = 0;
gc->pipe[pn].array.use_texm = !!mtex;
gc->pipe[pn].array.use_texsam = 0;
pipe_region_expand(gc, pn, x, y, w, h);
PIPE_GROW(gc, pn, 6);
@ -2569,7 +2546,6 @@ evas_gl_common_context_rgb_a_pair_push(Evas_Engine_GL_Context *gc,
gc->pipe[pn].array.use_texuv2 = 0;
gc->pipe[pn].array.use_texuv3 = 0;
gc->pipe[pn].array.use_texa = EINA_TRUE;
gc->pipe[pn].array.use_texsam = 0;
gc->pipe[pn].array.use_texm = !!mtex;
pipe_region_expand(gc, pn, x, y, w, h);
@ -2822,7 +2798,6 @@ evas_gl_common_context_image_map_push(Evas_Engine_GL_Context *gc,
gc->pipe[pn].array.use_texuv3 = (utexture) ? 1 : 0;
gc->pipe[pn].array.use_texm = !!mtex;
gc->pipe[pn].array.use_texa = 0;
gc->pipe[pn].array.use_texsam = 0;
pipe_region_expand(gc, pn, x, y, w, h);
PIPE_GROW(gc, pn, 6);
@ -3266,7 +3241,6 @@ shader_array_flush(Evas_Engine_GL_Context *gc)
unsigned char *texuv2_ptr = NULL;
unsigned char *texuv3_ptr = NULL;
unsigned char *texa_ptr = NULL;
unsigned char *texsam_ptr = NULL;
unsigned char *texm_ptr = NULL;
if (glsym_glMapBuffer && glsym_glUnmapBuffer)
@ -3282,8 +3256,7 @@ shader_array_flush(Evas_Engine_GL_Context *gc)
texuv2_ptr = texuv_ptr + TEX_SIZE;
texuv3_ptr = texuv2_ptr + TEX_SIZE;
texa_ptr = texuv3_ptr + TEX_SIZE;
texsam_ptr = texa_ptr + TEX_SIZE;
texm_ptr = texsam_ptr + TEX_SIZE;
texm_ptr = texa_ptr + TEX_SIZE;
# define END_POINTER (texm_ptr + TEX_SIZE)
glBindBuffer(GL_ARRAY_BUFFER, gc->pipe[i].array.buffer);
@ -3311,12 +3284,10 @@ shader_array_flush(Evas_Engine_GL_Context *gc)
memcpy(x + (unsigned long)texuv3_ptr, gc->pipe[i].array.texuv3, TEX_SIZE);
if (gc->pipe[i].array.use_texa)
memcpy(x + (unsigned long)texa_ptr, gc->pipe[i].array.texa, TEX_SIZE);
if (gc->pipe[i].array.use_texsam)
memcpy(x + (unsigned long)texsam_ptr, gc->pipe[i].array.texsam, TEX_SIZE);
if (gc->pipe[i].array.use_texm)
memcpy(x + (unsigned long)texm_ptr, gc->pipe[i].array.texm, TEX_SIZE);
/*
fprintf(stderr, "copy %i bytes [%i/%i slots] [%i + %i + %i + %i + %i + %i + %i] <%i %i %i %i %i %i %i>\n",
fprintf(stderr, "copy %i bytes [%i/%i slots] [%i + %i + %i + %i + %i + %i + %i] <%i %i %i %i %i %i>\n",
(int)((unsigned char *)END_POINTER),
gc->pipe[i].array.num,
gc->pipe[i].array.alloc,
@ -3327,7 +3298,6 @@ shader_array_flush(Evas_Engine_GL_Context *gc)
gc->pipe[i].array.use_texuv2,
gc->pipe[i].array.use_texuv3,
gc->pipe[i].array.use_texa,
gc->pipe[i].array.use_texsam,
gc->pipe[i].array.use_texm);
*/
glsym_glUnmapBuffer(GL_ARRAY_BUFFER);
@ -3341,7 +3311,6 @@ shader_array_flush(Evas_Engine_GL_Context *gc)
texuv2_ptr = (unsigned char *)gc->pipe[i].array.texuv2;
texuv3_ptr = (unsigned char *)gc->pipe[i].array.texuv3;
texa_ptr = (unsigned char *)gc->pipe[i].array.texa;
texsam_ptr = (unsigned char *)gc->pipe[i].array.texsam;
texm_ptr = (unsigned char *)gc->pipe[i].array.texm;
}
glVertexAttribPointer(SHAD_VERTEX, 3, GL_SHORT, GL_FALSE, 0, (void *)vertex_ptr);
@ -3371,8 +3340,6 @@ shader_array_flush(Evas_Engine_GL_Context *gc)
GLERR(__FUNCTION__, __FILE__, __LINE__, "");
glDisableVertexAttribArray(SHAD_TEXA);
GLERR(__FUNCTION__, __FILE__, __LINE__, "");
glDisableVertexAttribArray(SHAD_TEXSAM);
GLERR(__FUNCTION__, __FILE__, __LINE__, "");
glDisableVertexAttribArray(SHAD_TEXM);
GLERR(__FUNCTION__, __FILE__, __LINE__, "");
glDrawArrays(GL_LINES, 0, gc->pipe[i].array.num);
@ -3444,17 +3411,6 @@ shader_array_flush(Evas_Engine_GL_Context *gc)
glDisableVertexAttribArray(SHAD_TEXA);
}
if (gc->pipe[i].array.use_texsam)
{
glEnableVertexAttribArray(SHAD_TEXSAM);
GLERR(__FUNCTION__, __FILE__, __LINE__, "");
glVertexAttribPointer(SHAD_TEXSAM, 2, GL_FLOAT, GL_FALSE, 0, (void *)texsam_ptr);
GLERR(__FUNCTION__, __FILE__, __LINE__, "");
}
else
{
glDisableVertexAttribArray(SHAD_TEXSAM);
}
if ((gc->pipe[i].array.use_texuv2) && (gc->pipe[i].array.use_texuv3))
{
glEnableVertexAttribArray(SHAD_TEXUV2);
@ -3652,7 +3608,6 @@ shader_array_flush(Evas_Engine_GL_Context *gc)
if (gc->pipe[i].array.texa) free(gc->pipe[i].array.texa);
if (gc->pipe[i].array.texuv2) free(gc->pipe[i].array.texuv2);
if (gc->pipe[i].array.texuv3) free(gc->pipe[i].array.texuv3);
if (gc->pipe[i].array.texsam) free(gc->pipe[i].array.texsam);
if (gc->pipe[i].array.texm) free(gc->pipe[i].array.texm);
gc->pipe[i].array.line = 0;
@ -3662,7 +3617,6 @@ shader_array_flush(Evas_Engine_GL_Context *gc)
gc->pipe[i].array.use_texuv2 = 0;
gc->pipe[i].array.use_texuv3 = 0;
gc->pipe[i].array.use_texa = 0;
gc->pipe[i].array.use_texsam = 0;
gc->pipe[i].array.use_texm = 0;
gc->pipe[i].array.vertex = NULL;
@ -3671,7 +3625,6 @@ shader_array_flush(Evas_Engine_GL_Context *gc)
gc->pipe[i].array.texa = NULL;
gc->pipe[i].array.texuv2 = NULL;
gc->pipe[i].array.texuv3 = NULL;
gc->pipe[i].array.texsam = NULL;
gc->pipe[i].array.texm = NULL;
gc->pipe[i].array.num = 0;

View File

@ -77,7 +77,6 @@ _evas_gl_common_shader_program_binary_init(Evas_GL_Program *p,
glBindAttribLocation(p->prog, SHAD_TEXUV2, "tex_coord2");
glBindAttribLocation(p->prog, SHAD_TEXUV3, "tex_coord3");
glBindAttribLocation(p->prog, SHAD_TEXA, "tex_coorda");
glBindAttribLocation(p->prog, SHAD_TEXSAM, "tex_sample");
glBindAttribLocation(p->prog, SHAD_TEXM, "tex_coordm");
glGetProgramiv(p->prog, GL_LINK_STATUS, &ok);
@ -202,8 +201,6 @@ _evas_gl_common_shader_program_source_init(Evas_GL_Program *p,
GLERR(__FUNCTION__, __FILE__, __LINE__, "");
glBindAttribLocation(p->prog, SHAD_TEXA, "tex_coorda");
GLERR(__FUNCTION__, __FILE__, __LINE__, "");
glBindAttribLocation(p->prog, SHAD_TEXSAM, "tex_sample");
GLERR(__FUNCTION__, __FILE__, __LINE__, "");
glBindAttribLocation(p->prog, SHAD_TEXM, "tex_coordm");
GLERR(__FUNCTION__, __FILE__, __LINE__, "");

View File

@ -156,7 +156,7 @@ static const char const img_12_bgra_nomul_vert_glsl[] =
"#endif\n"
"attribute vec4 vertex;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec2 tex_c;\n"
"varying vec2 tex_s[2];\n"
@ -165,8 +165,8 @@ static const char const img_12_bgra_nomul_vert_glsl[] =
"{\n"
" gl_Position = mvp * vertex;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(0, -tex_sample.y);\n"
" tex_s[1] = vec2(0, tex_sample.y);\n"
" tex_s[0] = vec2(0, -sample.y);\n"
" tex_s[1] = vec2(0, sample.y);\n"
" div_s = vec4(2, 2, 2, 2);\n"
"}\n";
Evas_GL_Program_Source shader_img_12_bgra_nomul_vert_src =
@ -183,7 +183,7 @@ static const char const img_12_bgra_vert_glsl[] =
"attribute vec4 vertex;\n"
"attribute vec4 color;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec4 col;\n"
"varying vec2 tex_c;\n"
@ -194,8 +194,8 @@ static const char const img_12_bgra_vert_glsl[] =
" gl_Position = mvp * vertex;\n"
" col = color;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(0, -tex_sample.y);\n"
" tex_s[1] = vec2(0, tex_sample.y);\n"
" tex_s[0] = vec2(0, -sample.y);\n"
" tex_s[1] = vec2(0, sample.y);\n"
" div_s = vec4(2, 2, 2, 2);\n"
"}\n";
Evas_GL_Program_Source shader_img_12_bgra_vert_src =
@ -262,7 +262,7 @@ static const char const img_12_nomul_vert_glsl[] =
"#endif\n"
"attribute vec4 vertex;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec2 tex_c;\n"
"varying vec2 tex_s[2];\n"
@ -271,8 +271,8 @@ static const char const img_12_nomul_vert_glsl[] =
"{\n"
" gl_Position = mvp * vertex;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(0, -tex_sample.y);\n"
" tex_s[1] = vec2(0, tex_sample.y);\n"
" tex_s[0] = vec2(0, -sample.y);\n"
" tex_s[1] = vec2(0, sample.y);\n"
" div_s = vec4(2, 2, 2, 2);\n"
"}\n";
Evas_GL_Program_Source shader_img_12_nomul_vert_src =
@ -289,7 +289,7 @@ static const char const img_12_vert_glsl[] =
"attribute vec4 vertex;\n"
"attribute vec4 color;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec4 col;\n"
"varying vec2 tex_c;\n"
@ -300,8 +300,8 @@ static const char const img_12_vert_glsl[] =
" gl_Position = mvp * vertex;\n"
" col = color;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(0, -tex_sample.y);\n"
" tex_s[1] = vec2(0, tex_sample.y);\n"
" tex_s[0] = vec2(0, -sample.y);\n"
" tex_s[1] = vec2(0, sample.y);\n"
" div_s = vec4(2, 2, 2, 2);\n"
"}\n";
Evas_GL_Program_Source shader_img_12_vert_src =
@ -368,7 +368,7 @@ static const char const img_21_bgra_nomul_vert_glsl[] =
"#endif\n"
"attribute vec4 vertex;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec2 tex_c;\n"
"varying vec2 tex_s[2];\n"
@ -377,8 +377,8 @@ static const char const img_21_bgra_nomul_vert_glsl[] =
"{\n"
" gl_Position = mvp * vertex;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(-tex_sample.x, 0);\n"
" tex_s[1] = vec2( tex_sample.x, 0);\n"
" tex_s[0] = vec2(-sample.x, 0);\n"
" tex_s[1] = vec2( sample.x, 0);\n"
" div_s = vec4(2, 2, 2, 2);\n"
"}\n";
Evas_GL_Program_Source shader_img_21_bgra_nomul_vert_src =
@ -395,7 +395,7 @@ static const char const img_21_bgra_vert_glsl[] =
"attribute vec4 vertex;\n"
"attribute vec4 color;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec4 col;\n"
"varying vec2 tex_c;\n"
@ -406,8 +406,8 @@ static const char const img_21_bgra_vert_glsl[] =
" gl_Position = mvp * vertex;\n"
" col = color;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(-tex_sample.x, 0);\n"
" tex_s[1] = vec2( tex_sample.x, 0);\n"
" tex_s[0] = vec2(-sample.x, 0);\n"
" tex_s[1] = vec2( sample.x, 0);\n"
" div_s = vec4(2, 2, 2, 2);\n"
"}\n";
Evas_GL_Program_Source shader_img_21_bgra_vert_src =
@ -474,7 +474,7 @@ static const char const img_21_nomul_vert_glsl[] =
"#endif\n"
"attribute vec4 vertex;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec2 tex_c;\n"
"varying vec2 tex_s[2];\n"
@ -483,8 +483,8 @@ static const char const img_21_nomul_vert_glsl[] =
"{\n"
" gl_Position = mvp * vertex;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(-tex_sample.x, 0);\n"
" tex_s[1] = vec2( tex_sample.x, 0);\n"
" tex_s[0] = vec2(-sample.x, 0);\n"
" tex_s[1] = vec2( sample.x, 0);\n"
" div_s = vec4(2, 2, 2, 2);\n"
"}\n";
Evas_GL_Program_Source shader_img_21_nomul_vert_src =
@ -501,7 +501,7 @@ static const char const img_21_vert_glsl[] =
"attribute vec4 vertex;\n"
"attribute vec4 color;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec4 col;\n"
"varying vec2 tex_c;\n"
@ -512,8 +512,8 @@ static const char const img_21_vert_glsl[] =
" gl_Position = mvp * vertex;\n"
" col = color;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(-tex_sample.x, 0);\n"
" tex_s[1] = vec2( tex_sample.x, 0);\n"
" tex_s[0] = vec2(-sample.x, 0);\n"
" tex_s[1] = vec2( sample.x, 0);\n"
" div_s = vec4(2, 2, 2, 2);\n"
"}\n";
Evas_GL_Program_Source shader_img_21_vert_src =
@ -584,7 +584,7 @@ static const char const img_22_bgra_nomul_vert_glsl[] =
"#endif\n"
"attribute vec4 vertex;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec2 tex_c;\n"
"varying vec2 tex_s[4];\n"
@ -593,10 +593,10 @@ static const char const img_22_bgra_nomul_vert_glsl[] =
"{\n"
" gl_Position = mvp * vertex;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(-tex_sample.x, -tex_sample.y);\n"
" tex_s[1] = vec2( tex_sample.x, -tex_sample.y);\n"
" tex_s[2] = vec2( tex_sample.x, tex_sample.y);\n"
" tex_s[3] = vec2(-tex_sample.x, tex_sample.y);\n"
" tex_s[0] = vec2(-sample.x, -sample.y);\n"
" tex_s[1] = vec2( sample.x, -sample.y);\n"
" tex_s[2] = vec2( sample.x, sample.y);\n"
" tex_s[3] = vec2(-sample.x, sample.y);\n"
" div_s = vec4(4, 4, 4, 4);\n"
"}\n";
Evas_GL_Program_Source shader_img_22_bgra_nomul_vert_src =
@ -613,7 +613,7 @@ static const char const img_22_bgra_vert_glsl[] =
"attribute vec4 vertex;\n"
"attribute vec4 color;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec4 col;\n"
"varying vec2 tex_c;\n"
@ -624,10 +624,10 @@ static const char const img_22_bgra_vert_glsl[] =
" gl_Position = mvp * vertex;\n"
" col = color;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(-tex_sample.x, -tex_sample.y);\n"
" tex_s[1] = vec2( tex_sample.x, -tex_sample.y);\n"
" tex_s[2] = vec2( tex_sample.x, tex_sample.y);\n"
" tex_s[3] = vec2(-tex_sample.x, tex_sample.y);\n"
" tex_s[0] = vec2(-sample.x, -sample.y);\n"
" tex_s[1] = vec2( sample.x, -sample.y);\n"
" tex_s[2] = vec2( sample.x, sample.y);\n"
" tex_s[3] = vec2(-sample.x, sample.y);\n"
" div_s = vec4(4, 4, 4, 4);\n"
"}\n";
Evas_GL_Program_Source shader_img_22_bgra_vert_src =
@ -698,7 +698,7 @@ static const char const img_22_nomul_vert_glsl[] =
"#endif\n"
"attribute vec4 vertex;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec2 tex_c;\n"
"varying vec2 tex_s[4];\n"
@ -707,10 +707,10 @@ static const char const img_22_nomul_vert_glsl[] =
"{\n"
" gl_Position = mvp * vertex;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(-tex_sample.x, -tex_sample.y);\n"
" tex_s[1] = vec2( tex_sample.x, -tex_sample.y);\n"
" tex_s[2] = vec2( tex_sample.x, tex_sample.y);\n"
" tex_s[3] = vec2(-tex_sample.x, tex_sample.y);\n"
" tex_s[0] = vec2(-sample.x, -sample.y);\n"
" tex_s[1] = vec2( sample.x, -sample.y);\n"
" tex_s[2] = vec2( sample.x, sample.y);\n"
" tex_s[3] = vec2(-sample.x, sample.y);\n"
" div_s = vec4(4, 4, 4, 4);\n"
"}\n";
Evas_GL_Program_Source shader_img_22_nomul_vert_src =
@ -727,7 +727,7 @@ static const char const img_22_vert_glsl[] =
"attribute vec4 vertex;\n"
"attribute vec4 color;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec4 col;\n"
"varying vec2 tex_c;\n"
@ -738,10 +738,10 @@ static const char const img_22_vert_glsl[] =
" gl_Position = mvp * vertex;\n"
" col = color;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(-tex_sample.x, -tex_sample.y);\n"
" tex_s[1] = vec2( tex_sample.x, -tex_sample.y);\n"
" tex_s[2] = vec2( tex_sample.x, tex_sample.y);\n"
" tex_s[3] = vec2(-tex_sample.x, tex_sample.y);\n"
" tex_s[0] = vec2(-sample.x, -sample.y);\n"
" tex_s[1] = vec2( sample.x, -sample.y);\n"
" tex_s[2] = vec2( sample.x, sample.y);\n"
" tex_s[3] = vec2(-sample.x, sample.y);\n"
" div_s = vec4(4, 4, 4, 4);\n"
"}\n";
Evas_GL_Program_Source shader_img_22_vert_src =
@ -1210,7 +1210,7 @@ static const char const tex_12_vert_glsl[] =
"attribute vec4 vertex;\n"
"attribute vec4 color;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec4 col;\n"
"varying vec2 tex_c;\n"
@ -1221,8 +1221,8 @@ static const char const tex_12_vert_glsl[] =
" gl_Position = mvp * vertex;\n"
" col = color;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(0, -tex_sample.y);\n"
" tex_s[1] = vec2(0, tex_sample.y);\n"
" tex_s[0] = vec2(0, -sample.y);\n"
" tex_s[1] = vec2(0, sample.y);\n"
" div_s = vec4(2, 2, 2, 2);\n"
"}\n";
Evas_GL_Program_Source shader_tex_12_vert_src =
@ -1263,7 +1263,7 @@ static const char const tex_12_nomul_vert_glsl[] =
"#endif\n"
"attribute vec4 vertex;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec2 tex_c;\n"
"varying vec2 tex_s[2];\n"
@ -1272,8 +1272,8 @@ static const char const tex_12_nomul_vert_glsl[] =
"{\n"
" gl_Position = mvp * vertex;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(0, -tex_sample.y);\n"
" tex_s[1] = vec2(0, tex_sample.y);\n"
" tex_s[0] = vec2(0, -sample.y);\n"
" tex_s[1] = vec2(0, sample.y);\n"
" div_s = vec4(2, 2, 2, 2);\n"
"}\n";
Evas_GL_Program_Source shader_tex_12_nomul_vert_src =
@ -1316,7 +1316,7 @@ static const char const tex_21_vert_glsl[] =
"attribute vec4 vertex;\n"
"attribute vec4 color;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec4 col;\n"
"varying vec2 tex_c;\n"
@ -1327,8 +1327,8 @@ static const char const tex_21_vert_glsl[] =
" gl_Position = mvp * vertex;\n"
" col = color;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(-tex_sample.x, 0);\n"
" tex_s[1] = vec2( tex_sample.x, 0);\n"
" tex_s[0] = vec2(-sample.x, 0);\n"
" tex_s[1] = vec2( sample.x, 0);\n"
" div_s = vec4(2, 2, 2, 2);\n"
"}\n";
Evas_GL_Program_Source shader_tex_21_vert_src =
@ -1369,7 +1369,7 @@ static const char const tex_21_nomul_vert_glsl[] =
"#endif\n"
"attribute vec4 vertex;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec2 tex_c;\n"
"varying vec2 tex_s[2];\n"
@ -1378,8 +1378,8 @@ static const char const tex_21_nomul_vert_glsl[] =
"{\n"
" gl_Position = mvp * vertex;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(-tex_sample.x, 0);\n"
" tex_s[1] = vec2( tex_sample.x, 0);\n"
" tex_s[0] = vec2(-sample.x, 0);\n"
" tex_s[1] = vec2( sample.x, 0);\n"
" div_s = vec4(2, 2, 2, 2);\n"
"}\n";
Evas_GL_Program_Source shader_tex_21_nomul_vert_src =
@ -1424,7 +1424,7 @@ static const char const tex_22_vert_glsl[] =
"attribute vec4 vertex;\n"
"attribute vec4 color;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec4 col;\n"
"varying vec2 tex_c;\n"
@ -1435,10 +1435,10 @@ static const char const tex_22_vert_glsl[] =
" gl_Position = mvp * vertex;\n"
" col = color;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(-tex_sample.x, -tex_sample.y);\n"
" tex_s[1] = vec2( tex_sample.x, -tex_sample.y);\n"
" tex_s[2] = vec2( tex_sample.x, tex_sample.y);\n"
" tex_s[3] = vec2(-tex_sample.x, tex_sample.y);\n"
" tex_s[0] = vec2(-sample.x, -sample.y);\n"
" tex_s[1] = vec2( sample.x, -sample.y);\n"
" tex_s[2] = vec2( sample.x, sample.y);\n"
" tex_s[3] = vec2(-sample.x, sample.y);\n"
" div_s = vec4(4, 4, 4, 4);\n"
"}\n";
Evas_GL_Program_Source shader_tex_22_vert_src =
@ -1481,7 +1481,7 @@ static const char const tex_22_nomul_vert_glsl[] =
"#endif\n"
"attribute vec4 vertex;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec2 tex_c;\n"
"varying vec2 tex_s[4];\n"
@ -1490,10 +1490,10 @@ static const char const tex_22_nomul_vert_glsl[] =
"{\n"
" gl_Position = mvp * vertex;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(-tex_sample.x, -tex_sample.y);\n"
" tex_s[1] = vec2( tex_sample.x, -tex_sample.y);\n"
" tex_s[2] = vec2( tex_sample.x, tex_sample.y);\n"
" tex_s[3] = vec2(-tex_sample.x, tex_sample.y);\n"
" tex_s[0] = vec2(-sample.x, -sample.y);\n"
" tex_s[1] = vec2( sample.x, -sample.y);\n"
" tex_s[2] = vec2( sample.x, sample.y);\n"
" tex_s[3] = vec2(-sample.x, sample.y);\n"
" div_s = vec4(4, 4, 4, 4);\n"
"}\n";
Evas_GL_Program_Source shader_tex_22_nomul_vert_src =
@ -1671,7 +1671,7 @@ static const char const tex_22_afill_vert_glsl[] =
"attribute vec4 vertex;\n"
"attribute vec4 color;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec4 col;\n"
"varying vec2 tex_c;\n"
@ -1682,10 +1682,10 @@ static const char const tex_22_afill_vert_glsl[] =
" gl_Position = mvp * vertex;\n"
" col = color;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(-tex_sample.x, -tex_sample.y);\n"
" tex_s[1] = vec2( tex_sample.x, -tex_sample.y);\n"
" tex_s[2] = vec2( tex_sample.x, tex_sample.y);\n"
" tex_s[3] = vec2(-tex_sample.x, tex_sample.y);\n"
" tex_s[0] = vec2(-sample.x, -sample.y);\n"
" tex_s[1] = vec2( sample.x, -sample.y);\n"
" tex_s[2] = vec2( sample.x, sample.y);\n"
" tex_s[3] = vec2(-sample.x, sample.y);\n"
" div_s = vec4(4, 4, 4, 4);\n"
"}\n";
Evas_GL_Program_Source shader_tex_22_afill_vert_src =
@ -1729,7 +1729,7 @@ static const char const tex_21_afill_vert_glsl[] =
"attribute vec4 vertex;\n"
"attribute vec4 color;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec4 col;\n"
"varying vec2 tex_c;\n"
@ -1740,8 +1740,8 @@ static const char const tex_21_afill_vert_glsl[] =
" gl_Position = mvp * vertex;\n"
" col = color;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(-tex_sample.x, 0);\n"
" tex_s[1] = vec2( tex_sample.x, 0);\n"
" tex_s[0] = vec2(-sample.x, 0);\n"
" tex_s[1] = vec2( sample.x, 0);\n"
" div_s = vec4(2, 2, 2, 2);\n"
"}\n";
Evas_GL_Program_Source shader_tex_21_afill_vert_src =
@ -1785,7 +1785,7 @@ static const char const tex_12_afill_vert_glsl[] =
"attribute vec4 vertex;\n"
"attribute vec4 color;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec4 col;\n"
"varying vec2 tex_c;\n"
@ -1796,8 +1796,8 @@ static const char const tex_12_afill_vert_glsl[] =
" gl_Position = mvp * vertex;\n"
" col = color;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(0, -tex_sample.y);\n"
" tex_s[1] = vec2(0, tex_sample.y);\n"
" tex_s[0] = vec2(0, -sample.y);\n"
" tex_s[1] = vec2(0, sample.y);\n"
" div_s = vec4(2, 2, 2, 2);\n"
"}\n";
Evas_GL_Program_Source shader_tex_12_afill_vert_src =
@ -1841,7 +1841,7 @@ static const char const tex_22_nomul_afill_vert_glsl[] =
"#endif\n"
"attribute vec4 vertex;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec2 tex_c;\n"
"varying vec2 tex_s[4];\n"
@ -1850,10 +1850,10 @@ static const char const tex_22_nomul_afill_vert_glsl[] =
"{\n"
" gl_Position = mvp * vertex;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(-tex_sample.x, -tex_sample.y);\n"
" tex_s[1] = vec2( tex_sample.x, -tex_sample.y);\n"
" tex_s[2] = vec2( tex_sample.x, tex_sample.y);\n"
" tex_s[3] = vec2(-tex_sample.x, tex_sample.y);\n"
" tex_s[0] = vec2(-sample.x, -sample.y);\n"
" tex_s[1] = vec2( sample.x, -sample.y);\n"
" tex_s[2] = vec2( sample.x, sample.y);\n"
" tex_s[3] = vec2(-sample.x, sample.y);\n"
" div_s = vec4(4, 4, 4, 4);\n"
"}\n";
Evas_GL_Program_Source shader_tex_22_nomul_afill_vert_src =
@ -1895,7 +1895,7 @@ static const char const tex_21_nomul_afill_vert_glsl[] =
"#endif\n"
"attribute vec4 vertex;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec2 tex_c;\n"
"varying vec2 tex_s[2];\n"
@ -1904,8 +1904,8 @@ static const char const tex_21_nomul_afill_vert_glsl[] =
"{\n"
" gl_Position = mvp * vertex;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(-tex_sample.x, 0);\n"
" tex_s[1] = vec2( tex_sample.x, 0);\n"
" tex_s[0] = vec2(-sample.x, 0);\n"
" tex_s[1] = vec2( sample.x, 0);\n"
" div_s = vec4(2, 2, 2, 2);\n"
"}\n";
Evas_GL_Program_Source shader_tex_21_nomul_afill_vert_src =
@ -1947,7 +1947,7 @@ static const char const tex_12_nomul_afill_vert_glsl[] =
"#endif\n"
"attribute vec4 vertex;\n"
"attribute vec2 tex_coord;\n"
"attribute vec2 tex_sample;\n"
"uniform vec2 sample;\n"
"uniform mat4 mvp;\n"
"varying vec2 tex_c;\n"
"varying vec2 tex_s[2];\n"
@ -1956,8 +1956,8 @@ static const char const tex_12_nomul_afill_vert_glsl[] =
"{\n"
" gl_Position = mvp * vertex;\n"
" tex_c = tex_coord;\n"
" tex_s[0] = vec2(0, -tex_sample.y);\n"
" tex_s[1] = vec2(0, tex_sample.y);\n"
" tex_s[0] = vec2(0, -sample.y);\n"
" tex_s[1] = vec2(0, sample.y);\n"
" div_s = vec4(2, 2, 2, 2);\n"
"}\n";
Evas_GL_Program_Source shader_tex_12_nomul_afill_vert_src =

View File

@ -3,7 +3,7 @@ precision highp float;
#endif
attribute vec4 vertex;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec2 tex_c;
varying vec2 tex_s[2];
@ -12,7 +12,7 @@ void main()
{
gl_Position = mvp * vertex;
tex_c = tex_coord;
tex_s[0] = vec2(0, -tex_sample.y);
tex_s[1] = vec2(0, tex_sample.y);
tex_s[0] = vec2(0, -sample.y);
tex_s[1] = vec2(0, sample.y);
div_s = vec4(2, 2, 2, 2);
}

View File

@ -4,7 +4,7 @@ precision highp float;
attribute vec4 vertex;
attribute vec4 color;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec4 col;
varying vec2 tex_c;
@ -15,7 +15,7 @@ void main()
gl_Position = mvp * vertex;
col = color;
tex_c = tex_coord;
tex_s[0] = vec2(0, -tex_sample.y);
tex_s[1] = vec2(0, tex_sample.y);
tex_s[0] = vec2(0, -sample.y);
tex_s[1] = vec2(0, sample.y);
div_s = vec4(2, 2, 2, 2);
}

View File

@ -3,7 +3,7 @@ precision highp float;
#endif
attribute vec4 vertex;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec2 tex_c;
varying vec2 tex_s[2];
@ -12,7 +12,7 @@ void main()
{
gl_Position = mvp * vertex;
tex_c = tex_coord;
tex_s[0] = vec2(0, -tex_sample.y);
tex_s[1] = vec2(0, tex_sample.y);
tex_s[0] = vec2(0, -sample.y);
tex_s[1] = vec2(0, sample.y);
div_s = vec4(2, 2, 2, 2);
}

View File

@ -4,7 +4,7 @@ precision highp float;
attribute vec4 vertex;
attribute vec4 color;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec4 col;
varying vec2 tex_c;
@ -15,7 +15,7 @@ void main()
gl_Position = mvp * vertex;
col = color;
tex_c = tex_coord;
tex_s[0] = vec2(0, -tex_sample.y);
tex_s[1] = vec2(0, tex_sample.y);
tex_s[0] = vec2(0, -sample.y);
tex_s[1] = vec2(0, sample.y);
div_s = vec4(2, 2, 2, 2);
}

View File

@ -3,7 +3,7 @@ precision highp float;
#endif
attribute vec4 vertex;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec2 tex_c;
varying vec2 tex_s[2];
@ -12,7 +12,7 @@ void main()
{
gl_Position = mvp * vertex;
tex_c = tex_coord;
tex_s[0] = vec2(-tex_sample.x, 0);
tex_s[1] = vec2( tex_sample.x, 0);
tex_s[0] = vec2(-sample.x, 0);
tex_s[1] = vec2( sample.x, 0);
div_s = vec4(2, 2, 2, 2);
}

View File

@ -4,7 +4,7 @@ precision highp float;
attribute vec4 vertex;
attribute vec4 color;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec4 col;
varying vec2 tex_c;
@ -15,7 +15,7 @@ void main()
gl_Position = mvp * vertex;
col = color;
tex_c = tex_coord;
tex_s[0] = vec2(-tex_sample.x, 0);
tex_s[1] = vec2( tex_sample.x, 0);
tex_s[0] = vec2(-sample.x, 0);
tex_s[1] = vec2( sample.x, 0);
div_s = vec4(2, 2, 2, 2);
}

View File

@ -3,7 +3,7 @@ precision highp float;
#endif
attribute vec4 vertex;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec2 tex_c;
varying vec2 tex_s[2];
@ -12,7 +12,7 @@ void main()
{
gl_Position = mvp * vertex;
tex_c = tex_coord;
tex_s[0] = vec2(-tex_sample.x, 0);
tex_s[1] = vec2( tex_sample.x, 0);
tex_s[0] = vec2(-sample.x, 0);
tex_s[1] = vec2( sample.x, 0);
div_s = vec4(2, 2, 2, 2);
}

View File

@ -4,7 +4,7 @@ precision highp float;
attribute vec4 vertex;
attribute vec4 color;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec4 col;
varying vec2 tex_c;
@ -15,7 +15,7 @@ void main()
gl_Position = mvp * vertex;
col = color;
tex_c = tex_coord;
tex_s[0] = vec2(-tex_sample.x, 0);
tex_s[1] = vec2( tex_sample.x, 0);
tex_s[0] = vec2(-sample.x, 0);
tex_s[1] = vec2( sample.x, 0);
div_s = vec4(2, 2, 2, 2);
}

View File

@ -3,7 +3,7 @@ precision highp float;
#endif
attribute vec4 vertex;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec2 tex_c;
varying vec2 tex_s[4];
@ -12,9 +12,9 @@ void main()
{
gl_Position = mvp * vertex;
tex_c = tex_coord;
tex_s[0] = vec2(-tex_sample.x, -tex_sample.y);
tex_s[1] = vec2( tex_sample.x, -tex_sample.y);
tex_s[2] = vec2( tex_sample.x, tex_sample.y);
tex_s[3] = vec2(-tex_sample.x, tex_sample.y);
tex_s[0] = vec2(-sample.x, -sample.y);
tex_s[1] = vec2( sample.x, -sample.y);
tex_s[2] = vec2( sample.x, sample.y);
tex_s[3] = vec2(-sample.x, sample.y);
div_s = vec4(4, 4, 4, 4);
}

View File

@ -4,7 +4,7 @@ precision highp float;
attribute vec4 vertex;
attribute vec4 color;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec4 col;
varying vec2 tex_c;
@ -15,9 +15,9 @@ void main()
gl_Position = mvp * vertex;
col = color;
tex_c = tex_coord;
tex_s[0] = vec2(-tex_sample.x, -tex_sample.y);
tex_s[1] = vec2( tex_sample.x, -tex_sample.y);
tex_s[2] = vec2( tex_sample.x, tex_sample.y);
tex_s[3] = vec2(-tex_sample.x, tex_sample.y);
tex_s[0] = vec2(-sample.x, -sample.y);
tex_s[1] = vec2( sample.x, -sample.y);
tex_s[2] = vec2( sample.x, sample.y);
tex_s[3] = vec2(-sample.x, sample.y);
div_s = vec4(4, 4, 4, 4);
}

View File

@ -3,7 +3,7 @@ precision highp float;
#endif
attribute vec4 vertex;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec2 tex_c;
varying vec2 tex_s[4];
@ -12,9 +12,9 @@ void main()
{
gl_Position = mvp * vertex;
tex_c = tex_coord;
tex_s[0] = vec2(-tex_sample.x, -tex_sample.y);
tex_s[1] = vec2( tex_sample.x, -tex_sample.y);
tex_s[2] = vec2( tex_sample.x, tex_sample.y);
tex_s[3] = vec2(-tex_sample.x, tex_sample.y);
tex_s[0] = vec2(-sample.x, -sample.y);
tex_s[1] = vec2( sample.x, -sample.y);
tex_s[2] = vec2( sample.x, sample.y);
tex_s[3] = vec2(-sample.x, sample.y);
div_s = vec4(4, 4, 4, 4);
}

View File

@ -4,7 +4,7 @@ precision highp float;
attribute vec4 vertex;
attribute vec4 color;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec4 col;
varying vec2 tex_c;
@ -15,9 +15,9 @@ void main()
gl_Position = mvp * vertex;
col = color;
tex_c = tex_coord;
tex_s[0] = vec2(-tex_sample.x, -tex_sample.y);
tex_s[1] = vec2( tex_sample.x, -tex_sample.y);
tex_s[2] = vec2( tex_sample.x, tex_sample.y);
tex_s[3] = vec2(-tex_sample.x, tex_sample.y);
tex_s[0] = vec2(-sample.x, -sample.y);
tex_s[1] = vec2( sample.x, -sample.y);
tex_s[2] = vec2( sample.x, sample.y);
tex_s[3] = vec2(-sample.x, sample.y);
div_s = vec4(4, 4, 4, 4);
}

View File

@ -4,7 +4,7 @@ precision highp float;
attribute vec4 vertex;
attribute vec4 color;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec4 col;
varying vec2 tex_c;
@ -15,7 +15,7 @@ void main()
gl_Position = mvp * vertex;
col = color;
tex_c = tex_coord;
tex_s[0] = vec2(0, -tex_sample.y);
tex_s[1] = vec2(0, tex_sample.y);
tex_s[0] = vec2(0, -sample.y);
tex_s[1] = vec2(0, sample.y);
div_s = vec4(2, 2, 2, 2);
}

View File

@ -3,7 +3,7 @@ precision highp float;
#endif
attribute vec4 vertex;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec2 tex_c;
varying vec2 tex_s[2];
@ -12,7 +12,7 @@ void main()
{
gl_Position = mvp * vertex;
tex_c = tex_coord;
tex_s[0] = vec2(0, -tex_sample.y);
tex_s[1] = vec2(0, tex_sample.y);
tex_s[0] = vec2(0, -sample.y);
tex_s[1] = vec2(0, sample.y);
div_s = vec4(2, 2, 2, 2);
}

View File

@ -3,7 +3,7 @@ precision highp float;
#endif
attribute vec4 vertex;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec2 tex_c;
varying vec2 tex_s[2];
@ -12,7 +12,7 @@ void main()
{
gl_Position = mvp * vertex;
tex_c = tex_coord;
tex_s[0] = vec2(0, -tex_sample.y);
tex_s[1] = vec2(0, tex_sample.y);
tex_s[0] = vec2(0, -sample.y);
tex_s[1] = vec2(0, sample.y);
div_s = vec4(2, 2, 2, 2);
}

View File

@ -4,7 +4,7 @@ precision highp float;
attribute vec4 vertex;
attribute vec4 color;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec4 col;
varying vec2 tex_c;
@ -15,7 +15,7 @@ void main()
gl_Position = mvp * vertex;
col = color;
tex_c = tex_coord;
tex_s[0] = vec2(0, -tex_sample.y);
tex_s[1] = vec2(0, tex_sample.y);
tex_s[0] = vec2(0, -sample.y);
tex_s[1] = vec2(0, sample.y);
div_s = vec4(2, 2, 2, 2);
}

View File

@ -4,7 +4,7 @@ precision highp float;
attribute vec4 vertex;
attribute vec4 color;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec4 col;
varying vec2 tex_c;
@ -15,7 +15,7 @@ void main()
gl_Position = mvp * vertex;
col = color;
tex_c = tex_coord;
tex_s[0] = vec2(-tex_sample.x, 0);
tex_s[1] = vec2( tex_sample.x, 0);
tex_s[0] = vec2(-sample.x, 0);
tex_s[1] = vec2( sample.x, 0);
div_s = vec4(2, 2, 2, 2);
}

View File

@ -3,7 +3,7 @@ precision highp float;
#endif
attribute vec4 vertex;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec2 tex_c;
varying vec2 tex_s[2];
@ -12,7 +12,7 @@ void main()
{
gl_Position = mvp * vertex;
tex_c = tex_coord;
tex_s[0] = vec2(-tex_sample.x, 0);
tex_s[1] = vec2( tex_sample.x, 0);
tex_s[0] = vec2(-sample.x, 0);
tex_s[1] = vec2( sample.x, 0);
div_s = vec4(2, 2, 2, 2);
}

View File

@ -3,7 +3,7 @@ precision highp float;
#endif
attribute vec4 vertex;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec2 tex_c;
varying vec2 tex_s[2];
@ -12,7 +12,7 @@ void main()
{
gl_Position = mvp * vertex;
tex_c = tex_coord;
tex_s[0] = vec2(-tex_sample.x, 0);
tex_s[1] = vec2( tex_sample.x, 0);
tex_s[0] = vec2(-sample.x, 0);
tex_s[1] = vec2( sample.x, 0);
div_s = vec4(2, 2, 2, 2);
}

View File

@ -4,7 +4,7 @@ precision highp float;
attribute vec4 vertex;
attribute vec4 color;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec4 col;
varying vec2 tex_c;
@ -15,7 +15,7 @@ void main()
gl_Position = mvp * vertex;
col = color;
tex_c = tex_coord;
tex_s[0] = vec2(-tex_sample.x, 0);
tex_s[1] = vec2( tex_sample.x, 0);
tex_s[0] = vec2(-sample.x, 0);
tex_s[1] = vec2( sample.x, 0);
div_s = vec4(2, 2, 2, 2);
}

View File

@ -4,7 +4,7 @@ precision highp float;
attribute vec4 vertex;
attribute vec4 color;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec4 col;
varying vec2 tex_c;
@ -15,9 +15,9 @@ void main()
gl_Position = mvp * vertex;
col = color;
tex_c = tex_coord;
tex_s[0] = vec2(-tex_sample.x, -tex_sample.y);
tex_s[1] = vec2( tex_sample.x, -tex_sample.y);
tex_s[2] = vec2( tex_sample.x, tex_sample.y);
tex_s[3] = vec2(-tex_sample.x, tex_sample.y);
tex_s[0] = vec2(-sample.x, -sample.y);
tex_s[1] = vec2( sample.x, -sample.y);
tex_s[2] = vec2( sample.x, sample.y);
tex_s[3] = vec2(-sample.x, sample.y);
div_s = vec4(4, 4, 4, 4);
}

View File

@ -3,7 +3,7 @@ precision highp float;
#endif
attribute vec4 vertex;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec2 tex_c;
varying vec2 tex_s[4];
@ -12,9 +12,9 @@ void main()
{
gl_Position = mvp * vertex;
tex_c = tex_coord;
tex_s[0] = vec2(-tex_sample.x, -tex_sample.y);
tex_s[1] = vec2( tex_sample.x, -tex_sample.y);
tex_s[2] = vec2( tex_sample.x, tex_sample.y);
tex_s[3] = vec2(-tex_sample.x, tex_sample.y);
tex_s[0] = vec2(-sample.x, -sample.y);
tex_s[1] = vec2( sample.x, -sample.y);
tex_s[2] = vec2( sample.x, sample.y);
tex_s[3] = vec2(-sample.x, sample.y);
div_s = vec4(4, 4, 4, 4);
}

View File

@ -3,7 +3,7 @@ precision highp float;
#endif
attribute vec4 vertex;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec2 tex_c;
varying vec2 tex_s[4];
@ -12,9 +12,9 @@ void main()
{
gl_Position = mvp * vertex;
tex_c = tex_coord;
tex_s[0] = vec2(-tex_sample.x, -tex_sample.y);
tex_s[1] = vec2( tex_sample.x, -tex_sample.y);
tex_s[2] = vec2( tex_sample.x, tex_sample.y);
tex_s[3] = vec2(-tex_sample.x, tex_sample.y);
tex_s[0] = vec2(-sample.x, -sample.y);
tex_s[1] = vec2( sample.x, -sample.y);
tex_s[2] = vec2( sample.x, sample.y);
tex_s[3] = vec2(-sample.x, sample.y);
div_s = vec4(4, 4, 4, 4);
}

View File

@ -4,7 +4,7 @@ precision highp float;
attribute vec4 vertex;
attribute vec4 color;
attribute vec2 tex_coord;
attribute vec2 tex_sample;
uniform vec2 sample;
uniform mat4 mvp;
varying vec4 col;
varying vec2 tex_c;
@ -15,9 +15,9 @@ void main()
gl_Position = mvp * vertex;
col = color;
tex_c = tex_coord;
tex_s[0] = vec2(-tex_sample.x, -tex_sample.y);
tex_s[1] = vec2( tex_sample.x, -tex_sample.y);
tex_s[2] = vec2( tex_sample.x, tex_sample.y);
tex_s[3] = vec2(-tex_sample.x, tex_sample.y);
tex_s[0] = vec2(-sample.x, -sample.y);
tex_s[1] = vec2( sample.x, -sample.y);
tex_s[2] = vec2( sample.x, sample.y);
tex_s[3] = vec2(-sample.x, sample.y);
div_s = vec4(4, 4, 4, 4);
}