1 STRINGIFY( 2 3 // defines built-in interfaces supported by SkiaSL geometry shaders 4 5 layout(builtin=10002) in sk_PerVertex { 6 layout(builtin=0) float4 sk_Position; 7 layout(builtin=1) float sk_PointSize; 8 layout(builtin=3) float sk_ClipDistance[1]; 9 } sk_in[1]; 10 11 layout(builtin=10007) out sk_PerVertex { 12 layout(builtin=0) float4 sk_Position; 13 layout(builtin=1) float sk_PointSize; 14 layout(builtin=3) float sk_ClipDistance[1]; 15 }; 16 17 layout(builtin=8) in int sk_InvocationID; 18 19 sk_has_side_effects void EmitStreamVertex(int stream); 20 sk_has_side_effects void EndStreamPrimitive(int stream); 21 sk_has_side_effects void EmitVertex(); 22 sk_has_side_effects void EndPrimitive(); 23 24 ) 25