blob: 3e5ffaed37ce38996315eb7f0ccbae88c5ddfe2c [file] [log] [blame]
Ethan Nicholas52cad152017-02-16 16:37:32 -05001STRINGIFY(
2
3// defines built-in interfaces supported by SkiaSL geometry shaders
4
5layout(builtin=10002) in sk_PerVertex {
Ethan Nicholasbed683a2017-09-26 14:23:59 -04006 layout(builtin=0) float4 sk_Position;
7 layout(builtin=1) float sk_PointSize;
Ethan Nicholas8aa45692017-09-20 11:24:15 -04008 layout(builtin=3) float sk_ClipDistance[];
Ethan Nicholas52cad152017-02-16 16:37:32 -05009} sk_in[];
10
11out sk_PerVertex {
Ethan Nicholasbed683a2017-09-26 14:23:59 -040012 layout(builtin=0) float4 sk_Position;
13 layout(builtin=1) float sk_PointSize;
Ethan Nicholas8aa45692017-09-20 11:24:15 -040014 layout(builtin=3) float sk_ClipDistance[];
Ethan Nicholas52cad152017-02-16 16:37:32 -050015};
16
17layout(builtin=8) int sk_InvocationID;
18
Ethan Nicholascb670962017-04-20 19:31:52 -040019sk_has_side_effects void EmitStreamVertex(int stream);
20sk_has_side_effects void EndStreamPrimitive(int stream);
21sk_has_side_effects void EmitVertex();
22sk_has_side_effects void EndPrimitive();
Ethan Nicholas52cad152017-02-16 16:37:32 -050023
24)