void main()
{
    gl_FragData[0] = fragCol;
    if (useTex0) gl_FragData[0] *= texture2D(tex0, gl_TexCoord[0].st / gl_TexCoord[0].q);
    if (useTex1) gl_FragData[0].rgb *= texture2D(tex1, gl_TexCoord[1].st / gl_TexCoord[1].q).rgb;
    if (useTex2) gl_FragData[0].rgb *= texture2D(tex2, gl_TexCoord[2].st / gl_TexCoord[2].q).rgb;
    if (useTex3) gl_FragData[0].rgb *= texture2D(tex3, gl_TexCoord[3].st / gl_TexCoord[3].q).rgb;
    if (useTex4) gl_FragData[0].rgb *= texture2D(tex4, gl_TexCoord[4].st / gl_TexCoord[4].q).rgb;
    if (useTex5) gl_FragData[0].rgb *= texture2D(tex5, gl_TexCoord[5].st / gl_TexCoord[5].q).rgb;
    if (useTex6) gl_FragData[0].rgb *= texture2D(tex6, gl_TexCoord[6].st / gl_TexCoord[6].q).rgb;
    if (useTex7) gl_FragData[0].rgb *= texture2D(tex7, gl_TexCoord[7].st / gl_TexCoord[7].q).rgb;
    if (useFog)
    {
        float fogFactor = clamp((gl_Fog.end - gl_FogFragCoord) * gl_Fog.scale, 0.0, 1.0);
        gl_FragData[0].rgb = mix(gl_Fog.color.rgb, gl_FragData[0].rgb, fogFactor);
    }