// __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 #ifdef MSAA_FRAMEBUFFER_ENABLED #define _centroid centroid #else #define _centroid #endif _centroid in vec2 uv; #define varying in #define texture2D texture out vec4 FragColor; #define gl_FragColor FragColor #else // version 100 code varying vec2 uv; #endif uniform sampler2D TEXTURE_0; varying vec3 uBlurIncrement; void main() { vec2 imageCoord = uv; vec4 sum = vec4(0.0); vec2 blurSize = uBlurIncrement.xy * uBlurIncrement.z; sum += texture2D(TEXTURE_0, imageCoord - blurSize * 9.0) * 0.0014794516787135662; sum += texture2D(TEXTURE_0, imageCoord - blurSize * 8.0) * 0.003804239018665086; sum += texture2D(TEXTURE_0, imageCoord - blurSize * 7.0) * 0.00875346226514214; sum += texture2D(TEXTURE_0, imageCoord - blurSize * 6.0) * 0.018023411141080636; sum += texture2D(TEXTURE_0, imageCoord - blurSize * 5.0) * 0.03320772876259043; sum += texture2D(TEXTURE_0, imageCoord - blurSize * 4.0) * 0.05475028876252328; sum += texture2D(TEXTURE_0, imageCoord - blurSize * 3.0) * 0.0807753247211904; sum += texture2D(TEXTURE_0, imageCoord - blurSize * 2.0) * 0.10663900118033988; sum += texture2D(TEXTURE_0, imageCoord - blurSize * 1.0) * 0.12597909446198644; sum += texture2D(TEXTURE_0, imageCoord) * 0.1331759960155365; sum += texture2D(TEXTURE_0, imageCoord + blurSize * 1.0) * 0.12597909446198644; sum += texture2D(TEXTURE_0, imageCoord + blurSize * 2.0) * 0.10663900118033988; sum += texture2D(TEXTURE_0, imageCoord + blurSize * 3.0) * 0.0807753247211904; sum += texture2D(TEXTURE_0, imageCoord + blurSize * 4.0) * 0.05475028876252328; sum += texture2D(TEXTURE_0, imageCoord + blurSize * 5.0) * 0.03320772876259043; sum += texture2D(TEXTURE_0, imageCoord + blurSize * 6.0) * 0.018023411141080636; sum += texture2D(TEXTURE_0, imageCoord + blurSize * 7.0) * 0.00875346226514214; sum += texture2D(TEXTURE_0, imageCoord + blurSize * 8.0) * 0.003804239018665086; sum += texture2D(TEXTURE_0, imageCoord + blurSize * 9.0) * 0.0014794516787135662; gl_FragColor = sum; }