/* This file contains proprietary software owned by Motorola Mobility, Inc.
No rights, expressed or implied, whatsoever to this software are provided by Motorola Mobility, Inc. hereunder.
(c) Copyright 2011 Motorola Mobility, Inc. All Rights Reserved.
*/ #ifdef GL_ES precision highp float; #endif // attributes attribute vec3 a_pos; attribute vec2 texcoord; // scalar uniforms uniform float u_time; uniform float u_speed; uniform float u_waveWidth; uniform float u_waveHeight; // matrix uniforms uniform mat4 u_mvMatrix; uniform mat4 u_projMatrix; uniform mat4 u_worldMatrix; // varying variables varying vec2 v_uv; void main() { float time = u_time * u_speed; const float pi = 3.14159; float angle = time; v_uv = texcoord; float x = 2.0*pi*texcoord.x/u_waveWidth; float y = 2.0*pi*texcoord.y; vec3 v = a_pos; v.z = sin( x + angle ); v.z += sin( 0.2*y + angle); v.z *= u_waveHeight; v.z -= 2.0*u_waveHeight; v.z *= x * 0.09; gl_Position = u_projMatrix * u_mvMatrix * vec4(v,1.0) ; }