// vert //

void main(void) {
	qgl_FragTexture = qgl_Texture;
	gl_Position = qgl_ftransform();
}


// frag //

uniform sampler2D fb_out, fb_hover, fb_select;

void main(void) {
	//ivec2 tc = ivec2(gl_FragCoord.xy);
	//vec4 src = texelFetch(fb_out   , tc, 0);
	vec2 stc = qgl_FragTexture.xy;
	vec4 src = texture(fb_out   , stc);
	vec4 hov = texture(fb_hover , stc);
	vec4 sel = texture(fb_select, stc);
	src.rgb = clamp(src.rgb, vec3(0), vec3(1));
	src.rgb = mix(src.rgb, sel.rgb, sel.a);
	src.rgb = mix(src.rgb, hov.rgb, hov.a * 0.667f);
	//src.rgb = src.rgb + (sel.rgb*sel.a);
	qgl_FragData[0] = src;
	//qgl_FragData[0] = vec4(sel.a);
}
