#version 330 core in vec3 vertexPosition; in vec2 vertexTexCoord; in vec4 vertexColor; uniform mat4 mvp; uniform sampler2D texture1; out vec2 fragTexCoord; out vec4 fragColor; void main() { fragTexCoord = vec2((vertexTexCoord.x / 12) + 0.2, (vertexTexCoord.y / 12) + 0.2); fragColor = vertexColor; vec3 pos = vertexPosition; pos.y = texture(texture1, fragTexCoord).r * 100.0; gl_Position = mvp * vec4(pos, 1.0); }