blob: 4d6b94d92d69ddc4b713a1177f431e4c676327b6 [file] [log] [blame]
Ethan Nicholas762466e2017-06-29 10:03:38 -04001STRINGIFY(
2
3// defines built-in interfaces supported by SkiaSL fragment shaders
4
Ethan Nicholas27185a92017-09-18 02:41:08 +00005layout(builtin=15) in float4 sk_FragCoord;
6layout(builtin=3) float sk_ClipDistance[1];
Ethan Nicholas762466e2017-06-29 10:03:38 -04007
8// 9999 is a temporary value that causes us to ignore these declarations beyond
9// adding them to the symbol table. This works fine in GLSL (where they do not
10// require any further handling) but will fail in SPIR-V. We'll have a better
11// solution for this soon.
Ethan Nicholas27185a92017-09-18 02:41:08 +000012layout(builtin=9999) float4 gl_LastFragData[1];
13layout(builtin=9999) float4 gl_LastFragColor;
14layout(builtin=9999) float4 gl_LastFragColorARM;
Ethan Nicholas762466e2017-06-29 10:03:38 -040015layout(builtin=9999) int gl_SampleMaskIn[1];
16layout(builtin=9999) out int gl_SampleMask[1];
Ethan Nicholas27185a92017-09-18 02:41:08 +000017layout(builtin=9999) float4 gl_SecondaryFragColorEXT;
Ethan Nicholas762466e2017-06-29 10:03:38 -040018
Ethan Nicholas27185a92017-09-18 02:41:08 +000019layout(builtin=10003) float4 sk_InColor;
20layout(builtin=10004) out float4 sk_OutColor;
21layout(builtin=10005) float2[] sk_TransformedCoords2D;
Ethan Nicholas762466e2017-06-29 10:03:38 -040022layout(builtin=10006) sampler2D[] sk_TextureSamplers;
Ethan Nicholas68990be2017-07-13 09:36:52 -040023
Ethan Nicholas27185a92017-09-18 02:41:08 +000024float4 COLORSPACE(float4 color, colorSpaceXform colorSpace);
Ethan Nicholas762466e2017-06-29 10:03:38 -040025)