|
|
- #version 330
-
- // Input vertex attributes
- in vec3 vertexPosition;
-
- // Input uniform values
- uniform mat4 mvp;
- uniform float currentTime;
-
- // NOTE: Add here your custom variables
-
- void main()
- {
- // Unpack data from vertexPosition
- vec2 pos = vertexPosition.xy;
- float period = vertexPosition.z;
-
- // Calculate final vertex position (jiggle it around a bit horizontally)
- pos += vec2(100, 0) * sin(period * currentTime);
- gl_Position = mvp * vec4(pos, 0.0, 1.0);
-
- // Calculate the screen space size of this particle (also vary it over time)
- gl_PointSize = 10 - 5 * abs(sin(period * currentTime));
- }
|