1#version 320 es 2 3struct S 4{ 5 highp float a; 6 highp float b; 7}; 8layout(location = 0) in S v_var; 9 10layout(location = 2) in highp float v; 11 12struct S0 { 13 highp vec4 s_v; 14}; 15 16layout(location = 3) in FIn { 17 highp float x; 18 highp vec4 xyz[1]; 19 S0 s0; 20}; 21 22layout(location = 7) in highp float z[1]; 23 24layout(location = 8) in highp vec4 w; 25 26layout(location = 0) out mediump vec4 fragColor; 27void main (void) 28{ 29 // Centroid 30 { 31 // valid 32 fragColor = vec4(interpolateAtCentroid(v)); 33 fragColor = vec4(interpolateAtCentroid(x)); 34 fragColor = vec4(interpolateAtCentroid(z[0])); 35 fragColor = interpolateAtCentroid(w); 36 fragColor = interpolateAtCentroid(xyz[0]); 37 38 //// invalid 39 fragColor = vec4(interpolateAtCentroid(v_var.a)); 40 fragColor = vec4(interpolateAtCentroid(w.x)); 41 fragColor = vec4(interpolateAtCentroid(s0.s_v)); 42 } 43 44 // Sample 45 { 46 // valid 47 fragColor = vec4(interpolateAtSample(v, 0)); 48 fragColor = vec4(interpolateAtSample(x, 0)); 49 fragColor = vec4(interpolateAtSample(z[0], 0)); 50 fragColor = interpolateAtSample(w, 0); 51 fragColor = interpolateAtSample(xyz[0], 0); 52 53 // invalid 54 fragColor = vec4(interpolateAtSample(v_var.a, 0)); 55 fragColor = vec4(interpolateAtSample(w.x, 0)); 56 fragColor = vec4(interpolateAtSample(s0.s_v, 0)); 57 } 58 59 // Offset 60 { 61 // valid 62 fragColor = vec4(interpolateAtOffset(v, vec2(0))); 63 fragColor = vec4(interpolateAtOffset(x, vec2(0))); 64 fragColor = vec4(interpolateAtOffset(z[0], vec2(0))); 65 fragColor = interpolateAtOffset(w, vec2(0)); 66 fragColor = interpolateAtOffset(xyz[0], vec2(0)); 67 68 // invalid 69 fragColor = vec4(interpolateAtOffset(v_var.a, vec2(0))); 70 fragColor = vec4(interpolateAtOffset(w.x, vec2(0))); 71 fragColor = vec4(interpolateAtOffset(s0.s_v, vec2(0))); 72 } 73} 74