diff --git a/app/shaders/gaussianblur.frag b/app/shaders/gaussianblur.frag
index e0c601770..3da27b07f 100644
--- a/app/shaders/gaussianblur.frag
+++ b/app/shaders/gaussianblur.frag
@@ -10,6 +10,7 @@ uniform sampler2D tex_in;
uniform float sigma_in;
uniform bool horiz_in;
uniform bool vert_in;
+uniform bool repeat_edge_pixels_in;
// Gaussian function uses PI
#define M_PI 3.1415926535897932384626433832795
@@ -62,7 +63,13 @@ void main(void) {
pixel_coord.y += i/ove_resolution.y;
}
- composite += texture2D(tex_in, pixel_coord) * weight;
+ if (repeat_edge_pixels_in
+ || (pixel_coord.x >= 0.0
+ && pixel_coord.x < 1.0
+ && pixel_coord.y >= 0.0
+ && pixel_coord.y < 1.0)) {
+ composite += texture2D(tex_in, pixel_coord) * weight;
+ }
}
gl_FragColor = composite;
}
diff --git a/app/shaders/gaussianblur.xml b/app/shaders/gaussianblur.xml
index 80b722668..205a22e06 100644
--- a/app/shaders/gaussianblur.xml
+++ b/app/shaders/gaussianblur.xml
@@ -35,6 +35,12 @@
1
+
+
+ Repeat Edge Pixels
+ 0
+
+