author | František Kučera <franta-hg@frantovo.cz> |
Sun, 03 Dec 2023 12:32:55 +0100 | |
branch | v_0 |
changeset 14 | ceeb36fad818 |
parent 11 | 0aeedc35ebed |
child 15 | 1eb7cfefbeea |
permissions | -rw-r--r-- |
0 | 1 |
#version 330 core |
2 |
||
2
3faef2f5128e
better GLSL variable names
František Kučera <franta-hg@frantovo.cz>
parents:
0
diff
changeset
|
3 |
uniform sampler2D uTexture; |
3faef2f5128e
better GLSL variable names
František Kučera <franta-hg@frantovo.cz>
parents:
0
diff
changeset
|
4 |
in vec2 vTextureXY; |
14
ceeb36fad818
transparency/alpha: simple binary transparent/opaque, no blending, just discard some fragments
František Kučera <franta-hg@frantovo.cz>
parents:
11
diff
changeset
|
5 |
out vec4 fColor; |
0 | 6 |
|
14
ceeb36fad818
transparency/alpha: simple binary transparent/opaque, no blending, just discard some fragments
František Kučera <franta-hg@frantovo.cz>
parents:
11
diff
changeset
|
7 |
vec4 grayscale(vec4 original) { |
4
9aba96f0b001
fragment shader: add grayscale() function
František Kučera <franta-hg@frantovo.cz>
parents:
2
diff
changeset
|
8 |
const vec3 luminanceWeighting = vec3(0.2125, 0.7154, 0.0721); |
14
ceeb36fad818
transparency/alpha: simple binary transparent/opaque, no blending, just discard some fragments
František Kučera <franta-hg@frantovo.cz>
parents:
11
diff
changeset
|
9 |
float luminance = dot(original.rgb, luminanceWeighting); |
ceeb36fad818
transparency/alpha: simple binary transparent/opaque, no blending, just discard some fragments
František Kučera <franta-hg@frantovo.cz>
parents:
11
diff
changeset
|
10 |
return vec4(vec3(luminance), original.a); |
4
9aba96f0b001
fragment shader: add grayscale() function
František Kučera <franta-hg@frantovo.cz>
parents:
2
diff
changeset
|
11 |
} |
9aba96f0b001
fragment shader: add grayscale() function
František Kučera <franta-hg@frantovo.cz>
parents:
2
diff
changeset
|
12 |
|
0 | 13 |
void main(){ |
14
ceeb36fad818
transparency/alpha: simple binary transparent/opaque, no blending, just discard some fragments
František Kučera <franta-hg@frantovo.cz>
parents:
11
diff
changeset
|
14 |
fColor = texture(uTexture, vTextureXY).rgba; |
4
9aba96f0b001
fragment shader: add grayscale() function
František Kučera <franta-hg@frantovo.cz>
parents:
2
diff
changeset
|
15 |
// fColor = grayscale(fColor); |
14
ceeb36fad818
transparency/alpha: simple binary transparent/opaque, no blending, just discard some fragments
František Kučera <franta-hg@frantovo.cz>
parents:
11
diff
changeset
|
16 |
// fColor *= vec4(0.8, 1., 0.2, 1.); |
ceeb36fad818
transparency/alpha: simple binary transparent/opaque, no blending, just discard some fragments
František Kučera <franta-hg@frantovo.cz>
parents:
11
diff
changeset
|
17 |
|
ceeb36fad818
transparency/alpha: simple binary transparent/opaque, no blending, just discard some fragments
František Kučera <franta-hg@frantovo.cz>
parents:
11
diff
changeset
|
18 |
if (fColor.a < 0.1) discard; |
0 | 19 |
} |