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