attribute vec3 position; | |
uniform mat4 ModelViewProjectionMatrix; | |
// Removing this varying causes an inexplicable performance regression | |
// with r600g... Keeping it for now. | |
varying vec4 dummy; | |
float process(float d) | |
{ | |
$PROCESS$ | |
return d; | |
} | |
void main(void) | |
{ | |
dummy = vec4(1.0); | |
float d = fract(position.x); | |
$MAIN$ | |
vec4 pos = vec4(position.x, | |
position.y + 0.1 * d * fract(position.x), | |
position.z, 1.0); | |
// Transform the position to clip coordinates | |
gl_Position = ModelViewProjectionMatrix * pos; | |
} | |