1#version 460
2#extension GL_NV_ray_tracing : enable
3layout(binding = 0, set = 0) uniform accelerationStructureNV accNV;
4layout(location = 0) rayPayloadNV vec4 payload;
5void main()
6{
7    const uint rayFlags = gl_RayFlagsNoneNV | gl_RayFlagsOpaqueNV |
8                          gl_RayFlagsNoOpaqueNV | gl_RayFlagsTerminateOnFirstHitNV |
9                          gl_RayFlagsSkipClosestHitShaderNV | gl_RayFlagsCullBackFacingTrianglesNV |
10                          gl_RayFlagsCullFrontFacingTrianglesNV | gl_RayFlagsCullOpaqueNV |
11                          gl_RayFlagsCullNoOpaqueNV;
12
13    const int payloadId = 1;
14    traceNV(accNV, rayFlags, 0, 1, 1, 0, vec3(0.0f), 0.5f, vec3(1.0f), 0.75f, payloadId);
15}
16