Convert shaders in dali-demo to use shader compilation tool
[platform/core/uifw/dali-demo.git] / examples / reflection-demo / shaders / reflection-plasma.frag
1 precision mediump float;
2 uniform sampler2D sTexture;
3
4 uniform float uTime;
5 uniform float uKFactor;
6 uniform mediump vec3 eyePos;
7 uniform mediump vec3 lightDir;
8 varying mediump vec3 vNormal;
9 varying mediump vec3 vPosition;
10 varying mediump vec2 vTexCoord;
11
12 void main()
13 {
14   mediump vec3 n = normalize( vNormal );
15   mediump vec3 l = normalize( lightDir );
16   mediump vec3 e = normalize( eyePos );
17   mediump float intensity = max(dot(n,l), 0.0);
18
19   const mediump float PI = 3.1415926535897932384626433832795;
20   mediump float v = 0.0;
21   mediump vec2 c = vTexCoord * uKFactor - uKFactor/2.0;
22   v += sin((c.x+uTime));
23   v += sin((c.y+uTime)/2.0);
24   v += sin((c.x+c.y+uTime)/2.0);
25   c += uKFactor/2.0 * vec2(sin(uTime/3.0), cos(uTime/2.0));
26   v += sin(sqrt(c.x*c.x+c.y*c.y+1.0)+uTime);
27   v = v/2.0;
28   mediump vec3 col = vec3(1, sin(PI*v), cos(PI*v));
29   gl_FragColor = (texture2D(sTexture, vTexCoord)) * (((col.r+col.g+col.b)/3.0)+1.0+intensity);
30 }