• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1
2[open,refpage='VkPresentTimesInfoGOOGLE',desc='The earliest time each image should be presented',type='structs']
3--
4
5When the `<<VK_GOOGLE_display_timing>>` extension is enabled, additional
6fields can: be specified that allow an application to specify the earliest
7time that an image should be displayed.
8This allows an application to avoid stutter that is caused by an image being
9displayed earlier than planned.
10Such stuttering can occur with both fixed and variable-refresh-rate
11displays, because stuttering occurs when the geometry is not correctly
12positioned for when the image is displayed.
13An application can: instruct the presentation engine that an image should
14not be displayed earlier than a specified time by including the
15sname:VkPresentTimesInfoGOOGLE structure in the pname:pNext chain of the
16sname:VkPresentInfoKHR structure.
17
18The sname:VkPresentTimesInfoGOOGLE structure is defined as:
19
20include::../../api/structs/VkPresentTimesInfoGOOGLE.txt[]
21
22  * pname:sType is the type of this structure.
23  * pname:pNext is `NULL` or a pointer to an extension-specific structure.
24  * pname:swapchainCount is the number of swapchains being presented to by
25    this command.
26  * pname:pTimes is `NULL` or a pointer to an array of
27    sname:VkPresentTimeGOOGLE elements with pname:swapchainCount entries.
28    If not `NULL`, each element of pname:pTimes contains the earliest time
29    to present the image corresponding to the entry in the
30    sname:VkPresentInfoKHR::pname:pImageIndices array.
31
32.Valid Usage
33****
34  * [[VUID-VkPresentTimesInfoGOOGLE-swapchainCount-01247]]
35    pname:swapchainCount must: be the same value as
36    sname:VkPresentInfoKHR::pname:swapchainCount, where
37    sname:VkPresentInfoKHR is in the pname:pNext chain of this
38    sname:VkPresentTimesInfoGOOGLE structure.
39****
40
41include::../../validity/structs/VkPresentTimesInfoGOOGLE.txt[]
42--
43
44[open,refpage='VkPresentTimeGOOGLE',desc='The earliest time image should be presented',type='structs']
45--
46
47The sname:VkPresentTimeGOOGLE structure is defined as:
48
49include::../../api/structs/VkPresentTimeGOOGLE.txt[]
50
51  * pname:presentID is an application-provided identification value, that
52    can: be used with the results of
53    flink:vkGetPastPresentationTimingGOOGLE, in order to uniquely identify
54    this present.
55    In order to be useful to the application, it should: be unique within
56    some period of time that is meaningful to the application.
57  * pname:desiredPresentTime specifies that the image given should: not be
58    displayed to the user any earlier than this time.
59    pname:desiredPresentTime is a time in nanoseconds, relative to a
60    monotonically-increasing clock (e.g. `CLOCK_MONOTONIC` (see
61    clock_gettime(2)) on Android and Linux).
62    A value of zero specifies that the presentation engine may: display the
63    image at any time.
64    This is useful when the application desires to provide pname:presentID,
65    but doesn't need a specific pname:desiredPresentTime.
66
67--
68