diff --git a/app/shaders/boxblur.frag b/app/shaders/boxblur.frag index f3fc6eaed..f384ad526 100644 --- a/app/shaders/boxblur.frag +++ b/app/shaders/boxblur.frag @@ -8,6 +8,7 @@ uniform sampler2D tex_in; uniform float radius_in; uniform bool horiz_in; uniform bool vert_in; +uniform bool repeat_edge_pixels_in; void main(void) { if (radius_in == 0.0 @@ -31,7 +32,14 @@ void main(void) { } else if (ove_iteration == 1) { pixel_coord.y += i/ove_resolution.y; } - composite += texture2D(tex_in, pixel_coord) * divider; + + 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) * divider; + } } gl_FragColor = composite; } diff --git a/app/shaders/boxblur.xml b/app/shaders/boxblur.xml index 3fd22fbcb..2a54a48d2 100644 --- a/app/shaders/boxblur.xml +++ b/app/shaders/boxblur.xml @@ -35,6 +35,12 @@ 1 + + + Repeat Edge Pixels + 0 + +