File: sampler-nonconst-2d-array.shader_test

package info (click to toggle)
piglit 0~git20200212-f4710c51b-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 106,972 kB
  • sloc: ansic: 263,763; xml: 48,941; python: 29,918; lisp: 19,789; cpp: 12,142; sh: 22; makefile: 20; pascal: 5
file content (49 lines) | stat: -rw-r--r-- 980 bytes parent folder | download | duplicates (5)
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
[require]
GLSL >= 1.50
GL_ARB_gpu_shader5

[vertex shader]
#version 150
in vec4 piglit_vertex;
out vec2 texcoords;

void main()
{
	gl_Position = piglit_vertex;
	texcoords = (piglit_vertex.xy + 1.0) / 2.0;
}

[fragment shader]
#version 150
#extension GL_ARB_gpu_shader5: enable
in vec2 texcoords;

/* The idea is that the tex array doesn't come first (and so 'other' must get
 * some sort of usage), and we also want to ensure that the index is actually
 * respected.
 */
uniform sampler2DArray other;
uniform sampler2DArray tex[3];
uniform int n;
uniform float zero = 0.0;

void main()
{
	gl_FragColor = texture(tex[n], vec3(texcoords, 1.0)) +
		texture(other, vec3(texcoords, 1.0)) * zero;
}

[test]
uniform int other 2
uniform int tex[0] 3
uniform int tex[1] 1
uniform int tex[2] 4
uniform int n 1

texture rgbw 2DArray 1 (8, 8, 4)
texture junk 2DArray 2 (8, 8, 4)
texture junk 2DArray 3 (8, 8, 4)
texture junk 2DArray 4 (8, 8, 4)

draw rect -1 -1 2 2
probe all rgb 0.0 1.0 0.0