uniform sampler2D texlow; uniform mediump sampler2D texmed; uniform highp sampler2D texhigh; uniform samplerCube cubelow; uniform mediump samplerCube cubemed; uniform highp samplerCube cubehigh; mediump vec4 xlat_main(in highp vec4 uv) { mediump vec4 c; c = texture2D(texlow, uv.xy); c += texture2D(texmed, uv.xy); c += texture2D(texhigh, uv.xy); c += textureCube(cubelow, uv.xyz); c += textureCube(cubemed, uv.xyz); c += textureCube(cubehigh, uv.xyz); return c; } varying highp vec4 varUV; void main() { mediump vec4 r; r = xlat_main(varUV); gl_FragData[0] = r; }