uniform sampler2D tex;
uniform sampler2D caustictex;
uniform vec2 dir;
uniform vec2 dir2;

void main()
{
	vec2 tc = gl_TexCoord[0].xy;

	vec3 col = texture2D(tex, tc).xyz;
	float caustic = texture2D(caustictex, tc + dir).x;
	float caustic2 = texture2D(caustictex, (tc.yx + dir2 * vec2(-0.6, 0.3)) * vec2(0.6)).x;

	col += caustic * caustic2 * 10.0;

	gl_FragColor = vec4(col, 1.0);
}