// __multiversion__ // This signals the loading code to prepend either #version 100 or #version 300 es as apropriate. // To use centroid sampling we need to have version 300 es shaders, which requires changing: // attribute to in // varying to out when in vertex shaders or in when in fragment shaders // defining an out vec4 FragColor and replacing uses of gl_FragColor with FragColor // texture2D to texture #if __VERSION__ >= 300 // version 300 code #define varying in #define texture2D texture out vec4 FragColor; #define gl_FragColor FragColor #else // version 100 code #endif varying vec2 uv0; varying vec2 uv1; varying vec4 color; #ifdef FOG varying vec4 fogColor; #endif uniform sampler2D TEXTURE_0; uniform sampler2D TEXTURE_1; void main() { vec4 diffuse = texture2D( TEXTURE_0, uv0 ) * texture2D( TEXTURE_1, uv1 ); #ifdef ALPHA_TEST if(diffuse.a < 0.5) discard; #endif diffuse *= color; #ifdef FOG diffuse.rgb = mix( diffuse.rgb, fogColor.rgb, fogColor.a ); #endif gl_FragColor.rgba = diffuse; }