123456789101112131415161718192021222324252627282930313233 |
- #version 450 core
- layout(vertices = 4) out;
- layout(location=1) patch out vec4 patchOut;
- struct S {
- float sMem1; // should not see a patch decoration
- float sMem2; // should not see a patch decoration
- };
- layout(location = 12) patch out TheBlock {
- highp float bMem1; // should not see a location decoration
- highp float bMem2;
- S s; // should see a patch decoration
- } tcBlock[2];
- void main()
- {
- gl_out[gl_InvocationID].gl_Position = gl_in[gl_InvocationID].gl_Position;
- }
- layout(location = 2) patch out SingleBlock {
- highp float bMem1; // should not see a location decoration
- highp float bMem2;
- S s; // should see a patch decoration
- } singleBlock;
- layout(location = 20) patch out bn {
- vec4 v1; // location 20
- layout(location = 24) vec4 v2; // location 24
- vec4 v3; // location 25
- };
|