vkLatencySleepNV
To provide the synchronization primitive used to delay host CPU work for lower latency rendering, call:
VkResult vkLatencySleepNV(
VkDevice device,
VkSwapchainKHR swapchain,
const VkLatencySleepInfoNV* pSleepInfo);
device
is the device associated withswapchain
.swapchain
is the swapchain to delay associated CPU work based on VkLatencySubmissionPresentIdNV submissions.pSleepInfo
is a pointer to a VkLatencySleepInfoNV structure specifying the parameters of the latency sleep.
vkLatencySleepNV
returns immediately.
Applications should use vkWaitSemaphores with
pSleepInfo→signalSemaphore
to delay host CPU work.
CPU work refers to application work done before presenting which includes
but is not limited to: input sampling, simulation, command buffer recording,
command buffer submission, and present submission.
Applications should call this function before input sampling, and exactly
once between presents.
Valid Usage (Implicit)
VUID-vkLatencySleepNV-device-parameter
device
must be a valid VkDevice handle
VUID-vkLatencySleepNV-swapchain-parameter
swapchain
must be a valid VkSwapchainKHR handle
VUID-vkLatencySleepNV-pSleepInfo-parameter
pSleepInfo
must be a valid pointer to a valid VkLatencySleepInfoNV structure
VUID-vkLatencySleepNV-swapchain-parent
swapchain
must have been created, allocated, or retrieved from device