boxblur: added 'repeat edge pixels' parameter

This commit is contained in:
itsmattkc
2020-02-14 14:56:09 +11:00
parent 721ec1fe9b
commit 0bee4b2e14
2 changed files with 15 additions and 1 deletions
+9 -1
View File
@@ -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;
}
+6
View File
@@ -35,6 +35,12 @@
<default>1</default>
</param>
<!-- Parameter: Repeat Edge Pixels -->
<param id="repeat_edge_pixels_in" type="bool">
<name lang="en_US">Repeat Edge Pixels</name>
<default>0</default>
</param>
<!-- Qt Resource path to fragment shader -->
<fragment url=":/shaders/boxblur.frag"/>