C Specification

The VkPhysicalDeviceRayTracingPipelinePropertiesKHR structure is defined as:

// Provided by VK_KHR_ray_tracing_pipeline
typedef struct VkPhysicalDeviceRayTracingPipelinePropertiesKHR {
    VkStructureType    sType;
    void*              pNext;
    uint32_t           shaderGroupHandleSize;
    uint32_t           maxRayRecursionDepth;
    uint32_t           maxShaderGroupStride;
    uint32_t           shaderGroupBaseAlignment;
    uint32_t           shaderGroupHandleCaptureReplaySize;
    uint32_t           maxRayDispatchInvocationCount;
    uint32_t           shaderGroupHandleAlignment;
    uint32_t           maxRayHitAttributeSize;
} VkPhysicalDeviceRayTracingPipelinePropertiesKHR;


  • sType is the type of this structure.

  • pNext is NULL or a pointer to a structure extending this structure.

  • shaderGroupHandleSize size in bytes of the shader header.

  • maxRayRecursionDepth is the maximum number of levels of ray recursion allowed in a trace command.

  • maxShaderGroupStride is the maximum stride in bytes allowed between shader groups in the shader binding table.

  • shaderGroupBaseAlignment is the required alignment in bytes for the base of the shader binding table.

  • shaderGroupHandleCaptureReplaySize is the number of bytes for the information required to do capture and replay for shader group handles.

  • maxRayDispatchInvocationCount is the maximum number of ray generation shader invocations which may be produced by a single vkCmdTraceRaysIndirectKHR or vkCmdTraceRaysKHR command.

  • shaderGroupHandleAlignment is the required alignment in bytes for each shader binding table entry.

  • maxRayHitAttributeSize is the maximum size in bytes for a ray attribute structure


If the VkPhysicalDeviceRayTracingPipelinePropertiesKHR structure is included in the pNext chain of the VkPhysicalDeviceProperties2 structure passed to vkGetPhysicalDeviceProperties2, it is filled in with the corresponding implementation-dependent properties.

Limits specified by this structure must match those specified with the same name in VkPhysicalDeviceRayTracingPropertiesNV.

Valid Usage (Implicit)
  • VUID-VkPhysicalDeviceRayTracingPipelinePropertiesKHR-sType-sType

See Also

Document Notes

For more information, see the Vulkan Specification

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

Copyright 2014-2021 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0