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.
It is recommended to call this function before input sampling.
When using this function, it should be called 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