Structures

VkSemaphoreTypeCreateInfo

Structure specifying the type of a newly created semaphore

The VkSemaphoreTypeCreateInfo structure is defined as:

typedef struct VkSemaphoreTypeCreateInfo {
    VkStructureType sType;
    const void* pNext;
    VkSemaphoreType semaphoreType;
    uint64_t initialValue;
} VkSemaphoreTypeCreateInfo;

or the equivalent

typedef VkSemaphoreTypeCreateInfo VkSemaphoreTypeCreateInfoKHR;
  • sType is a VkStructureType value identifying this structure.
  • pNext is NULL or a pointer to a structure extending this structure.
  • semaphoreType is a VkSemaphoreType value specifying the type of the semaphore.
  • initialValue is the initial payload value if semaphoreType is VK_SEMAPHORE_TYPE_TIMELINE.

To create a semaphore of a specific type, add a VkSemaphoreTypeCreateInfo structure to the VkSemaphoreCreateInfo::pNext chain.

If no VkSemaphoreTypeCreateInfo structure is included in the pNext chain of VkSemaphoreCreateInfo, then the created semaphore will have a default VkSemaphoreType of VK_SEMAPHORE_TYPE_BINARY.

Valid Usage

VUID-VkSemaphoreTypeCreateInfo-timelineSemaphore-03252

If the timelineSemaphore feature is not enabled, semaphoreType must not equal VK_SEMAPHORE_TYPE_TIMELINE

VUID-VkSemaphoreTypeCreateInfo-semaphoreType-03279

If semaphoreType is VK_SEMAPHORE_TYPE_BINARY, initialValue must be zero

Valid Usage (Implicit)

VUID-VkSemaphoreTypeCreateInfo-sType-sType

sType must be VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO