Merge pull request #3031 from rg3igalia/sub-group-size-arb-flat-fix
[platform/upstream/glslang.git] / Test / spv.RayGenShaderArray.rgen
1 #version 460
2 #extension GL_NV_ray_tracing : enable
3 #extension GL_EXT_nonuniform_qualifier : enable\r
4 layout(binding = 0, set = 0) uniform accelerationStructureNV accNV0[];
5 layout(binding = 1, set = 0) uniform accelerationStructureNV accNV1[2];\r
6 layout(location = 0) rayPayloadNV vec4 payload;
7 layout(shaderRecordNV) buffer block
8 {
9         vec3 dir;
10         vec3 origin;
11     int i;
12 };
13 void main()
14 {
15     uint lx = gl_LaunchIDNV.x;
16     uint ly = gl_LaunchIDNV.y;
17     uint sx = gl_LaunchSizeNV.x;
18     uint sy = gl_LaunchSizeNV.y;
19     traceNV(accNV0[i], lx, ly, sx, sy, 0u, origin, 0.5f, dir, 0.75f, 1);
20     traceNV(accNV1[i], lx, ly, sx, sy, 0u, origin, 0.5f, dir, 0.75f, 1);\r
21     traceNV(accNV0[nonuniformEXT(i)], lx, ly, sx, sy, 0u, origin, 0.5f, dir, 0.75f, 1);\r
22 }