C Specification

The VkPhysicalDeviceRayTracingInvocationReorderPropertiesEXT structure is defined as:

// Provided by VK_EXT_ray_tracing_invocation_reorder
typedef struct VkPhysicalDeviceRayTracingInvocationReorderPropertiesEXT {
    VkStructureType                         sType;
    void*                                   pNext;
    VkRayTracingInvocationReorderModeEXT    rayTracingInvocationReorderReorderingHint;
    uint32_t                                maxShaderBindingTableRecordIndex;
} VkPhysicalDeviceRayTracingInvocationReorderPropertiesEXT;

Members

  • sType is a VkStructureType value identifying this structure.

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

  • rayTracingInvocationReorderReorderingHint is a hint indicating if the implementation may reorder at the reorder calls.

  • maxShaderBindingTableRecordIndex is the maximum shader binding table record index allowed to be passed in to OpHitObjectSetShaderBindingTableRecordIndexEXT

Description

If rayTracingInvocationReorderReorderingHint is VK_RAY_TRACING_INVOCATION_REORDER_MODE_REORDER_EXT there must exist conditions under which the ordered set of invocations before a reorder instruction is different than the ordered set of invocations after the reorder instruction. The ordering of a set of invocations is determined by the SubgroupId of an invocation’s subgroup and the SubGroupInvocationId of an invocation within that subgroup.

The reorder instructions are:

  • OpReorderThreadWithHintEXT

  • OpReorderThreadWithHitObjectEXT

  • OpHitObjectReorderExecuteShaderEXT

  • OpHitObjectTraceReorderExecuteEXT

  • OpHitObjectTraceMotionReorderExecuteEXT

Note

Because the extension changes how hits are managed there is a compatibility reason to expose the extension even when an implementation does not have sorting active.

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

Valid Usage (Implicit)
  • VUID-VkPhysicalDeviceRayTracingInvocationReorderPropertiesEXT-sType-sType
    sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_PROPERTIES_EXT

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-2025 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0