=
"#version 300 es\n"
"layout(std140) uniform;\n"
"precision highp float;\n"
"out vec4 FragColor;\n"
"in float vHeight;\n"
"in vec2 vLod;\n"
"in float vFog;\n"
"// Compress (-inf, +inf) to (0, 1).\n"
"float map_height(float h)\n"
"{\n"
" return 1.0 / (1.0 + exp(-h / 20.0));\n"
"}\n"
"// Make the heightmap look somewhat cloudy and fluffy.\n"
"void main()\n"
"{\n"
" vec3 color = vec3(1.2, 1.2, 1.0) * vec3(map_height(vHeight) + (vLod.x + vLod.y) * 0.1);\n"
" vec3 final_color = mix(color, vec3(0.5), vFog);\n"
" FragColor = vec4(final_color, 1.0);\n"
"}\n"