Enum
VkRayTracingShaderGroupTypeKHR
Shader group types
Possible values of type
in VkRayTracingShaderGroupCreateInfoKHR
are:
typedef enum VkRayTracingShaderGroupTypeKHR {
VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR = 0,
VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR = 1,
VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR = 2,
} VkRayTracingShaderGroupTypeKHR;
or the equivalent
#define VkRayTracingShaderGroupTypeNV VkRayTracingShaderGroupTypeKHR
VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR
indicates a shader group with a singleVK_SHADER_STAGE_RAYGEN_BIT_KHR
,VK_SHADER_STAGE_MISS_BIT_KHR
, orVK_SHADER_STAGE_CALLABLE_BIT_KHR
shader in it.VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR
specifies a shader group that only hits triangles and must not contain an intersection shader, only closest hit and any-hit shaders.VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR
specifies a shader group that only intersects with custom geometry and must contain an intersection shader and may contain closest hit and any-hit shaders.
For current group types, the hit group type could be inferred from the presence or absence of the intersection shader, but we provide the type explicitly for future hit groups that do not have that property.