summaryrefslogtreecommitdiff
path: root/tangle/asset/shader/blur.frag
diff options
context:
space:
mode:
Diffstat (limited to 'tangle/asset/shader/blur.frag')
-rw-r--r--tangle/asset/shader/blur.frag20
1 files changed, 20 insertions, 0 deletions
diff --git a/tangle/asset/shader/blur.frag b/tangle/asset/shader/blur.frag
new file mode 100644
index 0000000..ad57bde
--- /dev/null
+++ b/tangle/asset/shader/blur.frag
@@ -0,0 +1,20 @@
+#version 330
+
+uniform sampler2D texture;
+
+layout(location = 0) out vec4 color;
+layout(origin_upper_left, pixel_center_integer) in vec4 gl_FragCoord;
+
+float kernel[7] = float[]( 0.00443184841193801, 0.0539909665131881, 0.241970724519143, 0.398942280401433, 0.241970724519143, 0.0539909665131881, 0.00443184841193801 );
+
+void main() {
+ vec3 blurred = vec3(0.0);
+
+ for (int i=-3; i <= 3; ++i) {
+ for (int j=-3; j <= 3; ++j) {
+ blurred += kernel[3+j] * kernel[3+i] * texelFetch(texture, ivec2(gl_FragCoord.xy) + ivec2(i,j), 0).xyz;
+ }
+ }
+
+ color = vec4(blurred, 1.0);
+}