ProjectArcade

Форк
0
/
stereo_red_blue.fsh 
31 строка · 912.0 Байт
1
// Red/Blue glasses stereo, also known as anaglyph.
2
//
3
// NOTE: Will only be compiled for Vulkan so doesn't follow all the usual conventions.
4

5
uniform sampler2DArray sampler0;
6
varying vec2 v_texcoord0;
7

8
uniform vec4 u_setting;
9

10
void main() {
11
	float saturation = u_setting.x;
12
	float greenMix = u_setting.y;
13

14
	// To be adjusted. Used to desaturate colors.
15
	vec3 grayDot = vec3(0.35, 0.5, 0.15);
16
	// And these are the output color channels.
17
	vec3 red = vec3(1.0, 0.0, 0.0);
18
	vec3 blue = vec3(0.0, greenMix, 1.0);
19

20
	vec3 left = texture(sampler0, vec3(v_texcoord0, 0.0)).xyz;
21
	vec3 right = texture(sampler0, vec3(v_texcoord0, 1.0)).xyz;
22

23
	float leftGray = dot(left, grayDot);
24
	float rightGray = dot(right, grayDot);
25

26
	vec3 leftColor = mix(vec3(leftGray), left, saturation) * red;
27
	vec3 rightColor = mix(vec3(rightGray), right, saturation) * blue;
28

29
	gl_FragColor.rgb = leftColor + rightColor;
30
	gl_FragColor.a = 1.0;
31
}
32

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.