return love.graphics.newShader[[ #define fog vec4( 0.85, 0.85, 1.0, 1.0 ) varying vec3 viewDir; #ifdef VERTEX uniform mat4 view; uniform mat4 proj; vec4 position( mat4 _, vec4 pos ){ viewDir = pos.xyz; viewDir.y -= 0.5; return proj*view*pos; } #endif #ifdef PIXEL uniform samplerCube cube; vec4 effect( vec4 color, Image _, vec2 __, vec2 ___) { return mix( fog, Texel( cube, viewDir ), dot(viewDir, vec3(0.0, 1.0, 0.0 )));; } #endif ]]