#ifdef GL_ES // Set default precision to medium precision mediump int; precision mediump float; #endif uniform mat4 vp_matrix; uniform mat4 norm_matrix; uniform mat4 m_matrix; attribute vec4 a_position; attribute vec2 a_texcoord; attribute vec3 a_normal; varying vec2 v_texcoord; void main() { // Calculate vertex position in screen space gl_Position = vp_matrix * norm_matrix * m_matrix * a_position; // Pass texture coordinate to fragment shader // Value will be automatically interpolated to fragments inside polygon faces v_texcoord = a_texcoord; }