6f7bc2a707
On systems that give alpha configs by default writing alpha values of less than 1.0 is a bad idea since it will lead to the content behind the window becoming visible, even though this is not the example's intention. Change-Id: I23cdfc1fb78d77b1cbc192d2aba5d6665a7acfcc Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
26 lines
649 B
GLSL
26 lines
649 B
GLSL
uniform int currentTime;
|
|
uniform highp vec2 windowSize;
|
|
|
|
highp float noise(highp vec2 co)
|
|
{
|
|
return 0.5 * fract(sin(dot(co.xy, vec2(12.9898,78.233))) * 43758.5453);
|
|
}
|
|
|
|
highp float curvSpeed()
|
|
{
|
|
return mod(float(currentTime), 1000000.0) / 500.0;
|
|
}
|
|
|
|
highp float curv()
|
|
{
|
|
return 1.0 - abs((gl_FragCoord.y / (windowSize.y / 10.0) - 5.0) - sin((gl_FragCoord.x / (windowSize.x/20.0)) - curvSpeed()));
|
|
}
|
|
|
|
void main()
|
|
{
|
|
highp float coordNoise = noise(gl_FragCoord.xy);
|
|
highp float proximity = smoothstep(0.5, 1.0, (curv() + 1.0) * (coordNoise ));
|
|
highp vec3 color = vec3(coordNoise) * proximity;
|
|
gl_FragColor = vec4(color, 1.0);
|
|
}
|