First Commit
This commit is contained in:
76
externals/glslang/Test/precision.frag
vendored
Normal file
76
externals/glslang/Test/precision.frag
vendored
Normal file
@@ -0,0 +1,76 @@
|
||||
#version 100
|
||||
|
||||
varying vec3 color; // ERRROR, there is no default qualifier for float
|
||||
|
||||
lowp vec2 foo(mediump vec3 mv3)
|
||||
{
|
||||
highp vec4 hv4;
|
||||
return hv4.xy;
|
||||
}
|
||||
|
||||
int global_medium;
|
||||
|
||||
uniform lowp sampler2D samplerLow;
|
||||
uniform mediump sampler2D samplerMed;
|
||||
uniform highp sampler2D samplerHigh;
|
||||
|
||||
precision highp int;
|
||||
precision highp ivec2; // ERROR
|
||||
precision mediump int[2]; // ERROR
|
||||
vec4 uint; // okay
|
||||
precision mediump vec4; // ERROR
|
||||
|
||||
int global_high;
|
||||
|
||||
void main()
|
||||
{
|
||||
lowp int sum = global_medium + global_high;
|
||||
|
||||
gl_FragColor = vec4(color, 1.0);
|
||||
|
||||
int level1_high;
|
||||
sum += level1_high;
|
||||
|
||||
precision lowp int;
|
||||
int level1_low;
|
||||
sum += level1_low;
|
||||
|
||||
// test maxing precisions of args to get precision of builtin
|
||||
lowp float arg1;
|
||||
mediump float arg2;
|
||||
lowp float d = distance(arg1, arg2);
|
||||
|
||||
{
|
||||
int level2_low;
|
||||
sum += level2_low;
|
||||
|
||||
precision highp int;
|
||||
int level2_high;
|
||||
sum += level2_high;
|
||||
do {
|
||||
if (true) {
|
||||
precision mediump int;
|
||||
int level4_medium;
|
||||
sum += level4_medium;
|
||||
}
|
||||
int level3_high;
|
||||
sum += level3_high;
|
||||
} while (true);
|
||||
int level2_high2;
|
||||
sum += level2_high2;
|
||||
}
|
||||
int level1_low3;
|
||||
sum += level1_low3;
|
||||
|
||||
sum += 4 + ((ivec2(level1_low3) * ivec2(level1_high) + ivec2((/* comma operator */level1_low3, level1_high)))).x;
|
||||
|
||||
texture2D(samplerLow, vec2(0.1, 0.2));
|
||||
texture2D(samplerMed, vec2(0.1, 0.2));
|
||||
texture2D(samplerHigh, vec2(0.1, 0.2));
|
||||
}
|
||||
|
||||
precision mediump bool; // ERROR
|
||||
//precision mediump struct { int a; } s; // ERROR
|
||||
struct s {int a;};
|
||||
precision mediump s; // ERROR
|
||||
mediump bvec2 b2; // ERROR
|
||||
Reference in New Issue
Block a user