summaryrefslogtreecommitdiffstats
path: root/src/extras/shaders/colourfilterIII_fs_gl3.inc
blob: f57b9cdd06b5d43c163ab299e3a3d679d377925d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
const char *colourfilterIII_frag_src =
"uniform sampler2D tex0;\n"
"uniform vec4 u_blurcolor;\n"

"in vec4 v_color;\n"
"in vec2 v_tex0;\n"
"in float v_fog;\n"

"out vec4 color;\n"

"void\n"
"main(void)\n"
"{\n"
"	float a = u_blurcolor.a;\n"

"	vec4 doublec = clamp(u_blurcolor*2, 0.0, 1.0);\n"
"	vec4 dst = texture(tex0, vec2(v_tex0.x, 1.0-v_tex0.y));\n"
"	vec4 prev = dst;\n"
"	for(int i = 0; i < 5; i++){\n"
"//		vec4 doublec = clamp(u_blurcolor*2, 0.0, 1.0);\n"
"		vec4 tmp = dst*(1.0-a) + prev*doublec*a;\n"
"		tmp += prev*u_blurcolor;\n"
"		tmp += prev*u_blurcolor;\n"
"		prev = clamp(tmp, 0.0, 1.0);\n"
"	}\n"
"	color.rgb = prev.rgb;\n"
"	color.a = 1.0f;\n"
"}\n"

;