summaryrefslogtreecommitdiffstats
path: root/examples/opengl/qopenglwindow/background.frag
diff options
context:
space:
mode:
Diffstat (limited to 'examples/opengl/qopenglwindow/background.frag')
-rw-r--r--examples/opengl/qopenglwindow/background.frag13
1 files changed, 9 insertions, 4 deletions
diff --git a/examples/opengl/qopenglwindow/background.frag b/examples/opengl/qopenglwindow/background.frag
index 572c941f08..eecb6d3120 100644
--- a/examples/opengl/qopenglwindow/background.frag
+++ b/examples/opengl/qopenglwindow/background.frag
@@ -1,3 +1,6 @@
+#define M_PI 3.1415926535897932384626433832795
+#define SPEED 10000.0
+
uniform int currentTime;
uniform highp vec2 windowSize;
@@ -8,18 +11,20 @@ highp float noise(highp vec2 co)
highp float curvSpeed()
{
- return mod(float(currentTime), 1000000.0) / 500.0;
+ return (mod(float(currentTime), SPEED) / SPEED) * (2.0 * M_PI);
}
-highp float curv()
+highp float curv(int curvCount)
{
- return 1.0 - abs((gl_FragCoord.y / (windowSize.y / 10.0) - 5.0) - sin((gl_FragCoord.x / (windowSize.x/20.0)) - curvSpeed()));
+ highp float curv_y = 0.1 *(cos((gl_FragCoord.x / windowSize.x) * (float(curvCount * 2) * M_PI) - curvSpeed())) + 0.5;
+ highp float frag_y = gl_FragCoord.y / windowSize.y;
+ return 1.0 - abs(curv_y - frag_y);
}
void main()
{
highp float coordNoise = noise(gl_FragCoord.xy);
- highp float proximity = smoothstep(0.5, 1.0, (curv() + 1.0) * (coordNoise ));
+ highp float proximity = smoothstep(0.85, 1.0, (curv(6) + 1.0) * (coordNoise ));
highp vec3 color = vec3(coordNoise) * proximity;
gl_FragColor = vec4(color, 1.0);
}