]> git.tdb.fi Git - libs/gl.git/blob - tests/glsl/ternary_operator.glsl
Check the flat qualifier from the correct member
[libs/gl.git] / tests / glsl / ternary_operator.glsl
1 uniform Colors
2 {
3         vec4 color1;
4         vec4 color2;
5 };
6 uniform sampler2D mask;
7 uniform Transform
8 {
9         mat4 mvp;
10 } transform;
11
12 #pragma MSP stage(vertex)
13 layout(location=0) in vec4 position;
14 layout(location=1) in vec2 texcoord;
15 void main()
16 {
17         passthrough;
18         gl_Position = transform.mvp*position;
19 }
20
21 #pragma MSP stage(fragment)
22 layout(location=0) out vec4 frag_color;
23 void main()
24 {
25         frag_color = texture(mask, texcoord).r > 0.5 ? color1 : color2;
26 }
27
28 // Target API: Vulkan
29
30 /* Expected output: vertex
31 layout(set=0, binding=24) uniform Transform
32 {
33   mat4 mvp;
34 } transform;
35 layout(location=0) in vec4 position;
36 layout(location=1) in vec2 texcoord;
37 layout(location=0) out vec2 _vs_out_texcoord;
38 void main()
39 {
40   _vs_out_texcoord = texcoord;
41   gl_Position = transform.mvp*position;
42 }
43 */
44
45 /* Expected output: fragment
46 layout(set=0, binding=23) uniform Colors
47 {
48   vec4 color1;
49   vec4 color2;
50 };
51 layout(set=0, binding=75) uniform sampler2D mask;
52 layout(location=0) out vec4 frag_color;
53 layout(location=0) in vec2 _vs_out_texcoord;
54 void main()
55 {
56   frag_color = texture(mask, _vs_out_texcoord).r>0.5?color1:color2;
57 }
58 */