1attribute vec2 a_TexCoord;
2attribute vec2 a_Vertex;
3uniform mat3 u_TextureMatrix;
4varying vec2 v_TexCoord;
5varying vec2 v_TexCoord2;
6varying vec2 v_TexCoord3;
7uniform mat3 u_TransformMatrix;
8uniform mat3 u_ProjectionMatrix;
9uniform vec2 u_Offset;
10uniform float u_Depth;
11uniform float u_Time;
12uniform float u_SpriteScale;
13
14vec2 effectTextureSize = vec2(64.0, 64.0);
15vec2 direction = vec2(1.0,1.0);
16float speed = 10.0;
17
18void main()
19{
20 vec2 offset = direction * speed * u_Time;
21 gl_Position = vec4((u_ProjectionMatrix * u_TransformMatrix * vec3(a_Vertex.xy, 1.0)).xy, u_Depth / 16384.0, 1.0);
22 v_TexCoord = (u_TextureMatrix * vec3(a_TexCoord,1.0)).xy;
23 v_TexCoord2 = (u_TextureMatrix * vec3(a_TexCoord + u_Offset,1.0)).xy;
24 v_TexCoord3 = ((a_TexCoord + offset) / effectTextureSize);
25}