blob: 6debc4f5a519cd53f4f41e464d4a08774ed57adb [file] [edit]
#version 460
#extension GL_EXT_ray_query : enable
#extension GL_EXT_opacity_micromap : enable
#extension GL_EXT_opacity_micromap_ray_query_mode : enable
// The KHR path (this extension: OpacityMicromapIdKHR / SPV_KHR_opacity_micromap) and the EXT path
// (GL_EXT_opacity_micromap's gl_RayFlagsForceOpacityMicromap2StateEXT ray flag:
// RayTracingOpacityMicromapEXT / SPV_EXT_opacity_micromap) coexist in one shader. Both extension
// strings and both capabilities must be emitted (Issue 6).
layout(constant_id = 2) gl_EnableOpacityMicromapEXT;
layout(set = 0, binding = 0) uniform accelerationStructureEXT topLevelAS;
void main()
{
rayQueryEXT rq;
rayQueryInitializeEXT(rq, topLevelAS, gl_RayFlagsForceOpacityMicromap2StateEXT, 0xFFu,
vec3(0.0), 0.1, vec3(0.0, 0.0, 1.0), 100.0);
rayQueryProceedEXT(rq);
}