#ifdef GL_ES precision mediump float; precision mediump int; #endif // Input : attribute vec3 EW_coord3d; attribute vec2 EW_texture2d; attribute vec4 EW_color; uniform mat4 EW_MatrixTransformation; // output : varying vec4 f_color; varying vec2 f_texcoord; /* void main(void) { gl_Position = EW_MatrixTransformation * vec4(EW_coord2d, 0.0, 1.0); //gl_Position = gl_ProjectionMatrix * gl_ModelViewMatrix * vec4(EW_coord2d, 0.0, 1.0); // set texture output coord f_texcoord = EW_texture2d; // set output color : f_color = EW_color; } */ varying vec4 f_patern; void main(void) { gl_Position = EW_MatrixTransformation * vec4(EW_coord3d, 1.0); //gl_Position = gl_ProjectionMatrix * gl_ModelViewMatrix * vec4(EW_coord2d, 0.0, 1.0); // set output color : f_color = EW_color; if (EW_texture2d.x<1.0) { // normal font : f_patern = vec4 (0.0, 0.0, 0.0, 1.0); } else if (EW_texture2d.x<2.0) { // Italic font : f_patern = vec4 (1.0, 0.0, 0.0, 0.0); } else if (EW_texture2d.x<3.0) { // Bold font : f_patern = vec4 (0.0, 1.0, 0.0, 0.0); } else { // bold italic font : f_patern = vec4 (0.0, 0.0, 1.0, 0.0); } // set texture output coord f_texcoord = mod(EW_texture2d, 1.0); }