1# test sending a double vertex attrib
2# through the pipeline unpacks correctly
3#
4[require]
5GLSL >= 1.50
6GL_ARB_gpu_shader_fp64
7GL_ARB_vertex_attrib_64bit
8
9[vertex shader]
10#version 150
11#extension GL_ARB_gpu_shader_fp64 : require
12#extension GL_ARB_vertex_attrib_64bit : require
13in dvec2 vertex;
14in double value;
15flat out double val_to_fs;
16void main()
17{
18	gl_Position = vec4(vertex, 0.0, 1.0);
19	val_to_fs = value;
20}
21
22[fragment shader]
23#version 150
24#extension GL_ARB_gpu_shader_fp64 : require
25flat in double val_to_fs;
26uniform double expected;
27out vec4 color;
28
29void main()
30{
31	if (val_to_fs == expected)
32		color = vec4(0.0, 1.0, 0.0, 1.0);
33	else
34		color = vec4(1.0, 0.0, 0.0, 1.0);
35}
36
37[vertex data]
38vertex/double/2 value/double/1
39-1.0 -1.0 1.5
40 1.0 -1.0 1.5
41 1.0  1.0 1.5
42-1.0  1.0 1.5
43
44[test]
45clear color 0.0 0.0 1.0 0.0
46clear
47uniform double expected 1.5
48draw arrays GL_TRIANGLE_FAN 0 4
49probe rgba 0 0 0.0 1.0 0.0 1.0
50
51