mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-09 12:00:05 +00:00
74 lines
1.9 KiB
GLSL
74 lines
1.9 KiB
GLSL
|
#version 320 es
|
||
|
|
||
|
struct S
|
||
|
{
|
||
|
highp float a;
|
||
|
highp float b;
|
||
|
};
|
||
|
layout(location = 0) in S v_var;
|
||
|
|
||
|
layout(location = 2) in highp float v;
|
||
|
|
||
|
struct S0 {
|
||
|
highp vec4 s_v;
|
||
|
};
|
||
|
|
||
|
layout(location = 3) in FIn {
|
||
|
highp float x;
|
||
|
highp vec4 xyz[1];
|
||
|
S0 s0;
|
||
|
};
|
||
|
|
||
|
layout(location = 7) in highp float z[1];
|
||
|
|
||
|
layout(location = 8) in highp vec4 w;
|
||
|
|
||
|
layout(location = 0) out mediump vec4 fragColor;
|
||
|
void main (void)
|
||
|
{
|
||
|
// Centroid
|
||
|
{
|
||
|
// valid
|
||
|
fragColor = vec4(interpolateAtCentroid(v));
|
||
|
fragColor = vec4(interpolateAtCentroid(x));
|
||
|
fragColor = vec4(interpolateAtCentroid(z[0]));
|
||
|
fragColor = interpolateAtCentroid(w);
|
||
|
fragColor = interpolateAtCentroid(xyz[0]);
|
||
|
|
||
|
//// invalid
|
||
|
fragColor = vec4(interpolateAtCentroid(v_var.a));
|
||
|
fragColor = vec4(interpolateAtCentroid(w.x));
|
||
|
fragColor = vec4(interpolateAtCentroid(s0.s_v));
|
||
|
}
|
||
|
|
||
|
// Sample
|
||
|
{
|
||
|
// valid
|
||
|
fragColor = vec4(interpolateAtSample(v, 0));
|
||
|
fragColor = vec4(interpolateAtSample(x, 0));
|
||
|
fragColor = vec4(interpolateAtSample(z[0], 0));
|
||
|
fragColor = interpolateAtSample(w, 0);
|
||
|
fragColor = interpolateAtSample(xyz[0], 0);
|
||
|
|
||
|
// invalid
|
||
|
fragColor = vec4(interpolateAtSample(v_var.a, 0));
|
||
|
fragColor = vec4(interpolateAtSample(w.x, 0));
|
||
|
fragColor = vec4(interpolateAtSample(s0.s_v, 0));
|
||
|
}
|
||
|
|
||
|
// Offset
|
||
|
{
|
||
|
// valid
|
||
|
fragColor = vec4(interpolateAtOffset(v, vec2(0)));
|
||
|
fragColor = vec4(interpolateAtOffset(x, vec2(0)));
|
||
|
fragColor = vec4(interpolateAtOffset(z[0], vec2(0)));
|
||
|
fragColor = interpolateAtOffset(w, vec2(0));
|
||
|
fragColor = interpolateAtOffset(xyz[0], vec2(0));
|
||
|
|
||
|
// invalid
|
||
|
fragColor = vec4(interpolateAtOffset(v_var.a, vec2(0)));
|
||
|
fragColor = vec4(interpolateAtOffset(w.x, vec2(0)));
|
||
|
fragColor = vec4(interpolateAtOffset(s0.s_v, vec2(0)));
|
||
|
}
|
||
|
}
|