2021-06-14 18:38:37 +02:00

27 lines
625 B
GLSL

#version 410 core
layout (location = 0) in vec3 aPos;
layout (location = 1) in vec3 aColor;
layout (location = 2) in vec2 aTexCoord;
out vec2 fragCoord;
out vec2 texCoord;
out vec4 color;
uniform mat4 projection;
uniform mat4 view;
uniform mat4 transform;
uniform int index;
uniform float time;
void main()
{
float speed = 5f;
float amplitude = 10f;
vec3 newPos = aPos;
newPos.y = newPos.y + (sin((time + index * 10f + newPos.x) * speed) * amplitude);
gl_Position = projection * view * transform * vec4(newPos, 1.0);
color = vec4(aColor, 1.0f);
texCoord = aTexCoord;
fragCoord = aPos.xy;
}