aboutsummaryrefslogtreecommitdiff
path: root/assets/shaders
diff options
context:
space:
mode:
Diffstat (limited to 'assets/shaders')
-rwxr-xr-xassets/shaders/Basic.vert.glsl3
-rw-r--r--assets/shaders/BasicTex.frag.glsl19
-rw-r--r--assets/shaders/Cloud.frag.glsl25
-rw-r--r--assets/shaders/Cloud.vert.glsl51
-rw-r--r--assets/shaders/Flag.frag.glsl20
-rw-r--r--assets/shaders/Flag.vert.glsl24
-rw-r--r--assets/shaders/Water2.frag.glsl30
7 files changed, 154 insertions, 18 deletions
diff --git a/assets/shaders/Basic.vert.glsl b/assets/shaders/Basic.vert.glsl
index 0d5b8d63..f96f8322 100755
--- a/assets/shaders/Basic.vert.glsl
+++ b/assets/shaders/Basic.vert.glsl
@@ -14,6 +14,8 @@ precision highp float;
14attribute vec3 a_pos; 14attribute vec3 a_pos;
15attribute vec2 texcoord; 15attribute vec2 texcoord;
16 16
17// varying
18varying vec2 v_texCoord0;
17 19
18// matrix uniforms 20// matrix uniforms
19uniform mat4 u_mvMatrix; 21uniform mat4 u_mvMatrix;
@@ -22,5 +24,6 @@ uniform mat4 u_worldMatrix;
22 24
23void main(void) 25void main(void)
24{ 26{
27 v_texCoord0 = texcoord;
25 gl_Position = u_projMatrix * u_mvMatrix * vec4(a_pos,1.0) ; 28 gl_Position = u_projMatrix * u_mvMatrix * vec4(a_pos,1.0) ;
26} \ No newline at end of file 29} \ No newline at end of file
diff --git a/assets/shaders/BasicTex.frag.glsl b/assets/shaders/BasicTex.frag.glsl
new file mode 100644
index 00000000..a716e77d
--- /dev/null
+++ b/assets/shaders/BasicTex.frag.glsl
@@ -0,0 +1,19 @@
1/* <copyright>
2This file contains proprietary software owned by Motorola Mobility, Inc.<br/>
3No rights, expressed or implied, whatsoever to this software are provided by Motorola Mobility, Inc. hereunder.<br/>
4(c) Copyright 2011 Motorola Mobility, Inc. All Rights Reserved.
5</copyright> */
6
7
8#ifdef GL_ES
9precision highp float;
10#endif
11
12uniform sampler2D u_tex0;
13
14varying vec2 v_texCoord0;
15
16
17void main() {
18 gl_FragColor = texture2D(u_tex0, v_texCoord0);
19}
diff --git a/assets/shaders/Cloud.frag.glsl b/assets/shaders/Cloud.frag.glsl
new file mode 100644
index 00000000..2447fd79
--- /dev/null
+++ b/assets/shaders/Cloud.frag.glsl
@@ -0,0 +1,25 @@
1/* <copyright>
2This file contains proprietary software owned by Motorola Mobility, Inc.<br/>
3No rights, expressed or implied, whatsoever to this software are provided by Motorola Mobility, Inc. hereunder.<br/>
4(c) Copyright 2011 Motorola Mobility, Inc. All Rights Reserved.
5</copyright> */
6
7
8#ifdef GL_ES
9precision highp float;
10#endif
11
12uniform sampler2D u_tex0;
13uniform float u_surfaceAlpha;
14
15varying vec2 v_texCoord0;
16
17
18void main()
19{
20 vec4 c = texture2D(u_tex0, v_texCoord0);
21 //c.a *= u_surfaceAlpha;
22 //if ((c.r == 0.0) && (c.b == 0.0) && (c.g == 0.0) && (c.a == 1.0)) c = vec4( 0.0, 0.0, 1.0, 1.0 );
23 gl_FragColor = c;
24}
25 \ No newline at end of file
diff --git a/assets/shaders/Cloud.vert.glsl b/assets/shaders/Cloud.vert.glsl
new file mode 100644
index 00000000..acd581fc
--- /dev/null
+++ b/assets/shaders/Cloud.vert.glsl
@@ -0,0 +1,51 @@
1/* <copyright>
2This file contains proprietary software owned by Motorola Mobility, Inc.<br/>
3No rights, expressed or implied, whatsoever to this software are provided by Motorola Mobility, Inc. hereunder.<br/>
4(c) Copyright 2011 Motorola Mobility, Inc. All Rights Reserved.
5</copyright> */
6
7
8#ifdef GL_ES
9precision highp float;
10#endif
11
12// attributes
13attribute vec3 a_pos;
14attribute vec2 texcoord;
15
16// uniforms
17uniform float u_time;
18uniform float u_zmin;
19uniform float u_zmax;
20uniform float u_surfaceAlpha;
21
22// matrix uniforms
23uniform mat4 u_mvMatrix;
24uniform mat4 u_projMatrix;
25
26// varying
27varying vec2 v_texCoord0;
28
29// constants
30const float zSpeed = 10.0;
31
32
33void main()
34{
35 // Transform position
36 vec4 pos = vec4(a_pos,1);
37
38 float dz = u_time*zSpeed;
39 float n = floor( dz/(u_zmax-u_zmin) );
40 dz -= n*(u_zmax - u_zmin);
41 float z = pos.z + dz;
42 if (z > u_zmax)
43 {
44 z = u_zmin + (z - u_zmax);
45 }
46 pos.z = z;
47
48 gl_Position = u_projMatrix * u_mvMatrix * pos;
49
50 v_texCoord0 = texcoord;
51} \ No newline at end of file
diff --git a/assets/shaders/Flag.frag.glsl b/assets/shaders/Flag.frag.glsl
new file mode 100644
index 00000000..b05b4888
--- /dev/null
+++ b/assets/shaders/Flag.frag.glsl
@@ -0,0 +1,20 @@
1/* <copyright>
2This file contains proprietary software owned by Motorola Mobility, Inc.<br/>
3No rights, expressed or implied, whatsoever to this software are provided by Motorola Mobility, Inc. hereunder.<br/>
4(c) Copyright 2011 Motorola Mobility, Inc. All Rights Reserved.
5</copyright> */
6
7
8#ifdef GL_ES
9precision highp float;
10#endif
11
12uniform sampler2D u_tex0;
13
14varying vec2 v_uv;
15
16void main(void)
17{
18 vec3 col = texture2D(u_tex0, v_uv).xyz;
19 gl_FragColor = vec4(col,1.0);
20} \ No newline at end of file
diff --git a/assets/shaders/Flag.vert.glsl b/assets/shaders/Flag.vert.glsl
index 7dc932a7..a5e8b2f7 100644
--- a/assets/shaders/Flag.vert.glsl
+++ b/assets/shaders/Flag.vert.glsl
@@ -16,20 +16,32 @@ attribute vec2 texcoord;
16 16
17// scalar uniforms 17// scalar uniforms
18uniform float u_time; 18uniform float u_time;
19uniform float u_waveWidth;
20uniform float u_waveHeight;
19 21
20// matrix uniforms 22// matrix uniforms
21uniform mat4 u_mvMatrix; 23uniform mat4 u_mvMatrix;
22uniform mat4 u_projMatrix; 24uniform mat4 u_projMatrix;
23uniform mat4 u_worldMatrix; 25uniform mat4 u_worldMatrix;
24 26
27// varying variables
28varying vec2 v_uv;
29
30
25void main() 31void main()
26{ 32{
27 float angle = (u_time%360)*2; 33 float pi = 3.14159;
34 float angle = u_time;
35
36 v_uv = texcoord;
28 37
29 a_pos.z = sin( a_pos.x + angle); 38 float x = 2.0*pi*texcoord.x/u_waveWidth;
30 a_pos.z += sin( a_pos.y/2 + angle); 39 float y = 2.0*pi*texcoord.y;
31 a_pos.z *= a_pos.x * 0.09;
32 gl_Position = u_projMatrix * u_mvMatrix * vec4(a_pos,1.0) ;
33 40
34 gl_FragColor = v_color; 41 vec3 v = a_pos;
42 v.z = sin( x + angle ) - 2.0*u_waveHeight;
43 v.z += sin( 0.2*y + angle);
44 v.z *= x * 0.09 * u_waveHeight;
45
46 gl_Position = u_projMatrix * u_mvMatrix * vec4(v,1.0) ;
35} 47}
diff --git a/assets/shaders/Water2.frag.glsl b/assets/shaders/Water2.frag.glsl
index 39b6aa55..49b2b647 100644
--- a/assets/shaders/Water2.frag.glsl
+++ b/assets/shaders/Water2.frag.glsl
@@ -8,20 +8,27 @@ uniform vec2 u_resolution;
8const float PI = 3.1415926535897932; 8const float PI = 3.1415926535897932;
9 9
10//speed 10//speed
11const float speed = 0.2; 11//const float speed = 0.2;
12const float speed_x = 0.3; 12const float speed_x = 0.3;
13const float speed_y = 0.3; 13const float speed_y = 0.3;
14 14
15// geometry 15// geometry
16const float intensity = 3.; 16//const float intensity = 3.;
17const int steps = 8; 17const int steps = 8;
18const float frequency = 4.0; 18const float frequency = 4.0;
19const int angle = 7; // better when a prime 19const int angle = 7; // better when a prime
20 20
21// reflection and emboss 21// reflection and emboss
22const float delta = 20.; 22//const float delta = 20.;
23const float intence = 400.; 23const float intence = 400.;
24const float emboss = 0.3; 24//const float emboss = 0.3;
25
26// uniforms
27uniform float u_emboss;
28uniform float u_delta;
29//uniform float u_intence;
30uniform float u_intensity;
31uniform float u_speed;
25 32
26//---------- crystals effect 33//---------- crystals effect
27 34
@@ -34,9 +41,9 @@ const float emboss = 0.3;
34 { 41 {
35 vec2 adjc = coord; 42 vec2 adjc = coord;
36 theta = delta_theta*float(i); 43 theta = delta_theta*float(i);
37 adjc.x += cos(theta)*u_time*speed + u_time * speed_x; 44 adjc.x += cos(theta)*u_time*u_speed + u_time * speed_x;
38 adjc.y -= sin(theta)*u_time*speed - u_time * speed_y; 45 adjc.y -= sin(theta)*u_time*u_speed - u_time * speed_y;
39 col = col + cos( (adjc.x*cos(theta) - adjc.y*sin(theta))*frequency)*intensity; 46