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
|
[require]
GLSL >= 1.50
GL_ARB_gpu_shader_fp64
[vertex shader passthrough]
[fragment shader]
#extension GL_ARB_gpu_shader_fp64 : enable
uniform double arg0;
uniform double tolerance;
uniform dvec4 expected;
uniform ubo1 {
double d1;
dvec2 d2;
dvec3 d3;
dvec4 d4;
};
out vec4 color;
void main()
{
dvec4 result = dvec4(d1, d2.y, d3.z, d4.w + arg0);
color = distance(result, expected) <= tolerance
? vec4(0.0, 1.0, 0.0, 1.0) : vec4(1.0, 1.0, 0.0, 1.0);
}
[test]
clear color 0.0 0.0 0.0 0.0
clear
uniform double arg0 0.25
uniform double tolerance 0.0
uniform dvec4 expected 0.1 0.3 0.6 1.25
uniform double d1 0.1
uniform dvec2 d2 0.2 0.3
uniform dvec3 d3 0.4 0.5 0.6
uniform dvec4 d4 0.7 0.8 0.9 1.0
draw rect -1 -1 2 2
probe all rgba 0.0 1.0 0.0 1.0
|