precision mediump float; uniform sampler2D uOcclusion; uniform vec4 uBackground; varying vec2 fUV; void main() { float occ = 1.0 - texture2D(uOcclusion, fUV).x; gl_FragColor = vec4(uBackground.x * occ, uBackground.y * occ, uBackground.z * occ, occ); }