mirror of
https://github.com/status-im/Vulkan-Docs.git
synced 2025-02-21 10:38:09 +00:00
Merge misc. tweaks from private repository.
This commit is contained in:
parent
e7c865374c
commit
42326b8ba2
@ -19,13 +19,10 @@ include::../../protos/vkCreateXlibSurfaceKHR.txt[]
|
||||
|
||||
include::../../validity/protos/vkCreateXlibSurfaceKHR.txt[]
|
||||
|
||||
The definition of sname:VkXlibSurfaceCreateInfoKHR is:
|
||||
The sname:VkXlibSurfaceCreateInfoKHR structure is defined as:
|
||||
|
||||
include::../../structs/VkXlibSurfaceCreateInfoKHR.txt[]
|
||||
|
||||
The members of sname:VkXlibSurfaceCreateInfoKHR have the following
|
||||
meanings:
|
||||
|
||||
* pname:sType is the type of this structure and must: be
|
||||
ename:VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR.
|
||||
* pname:pNext is `NULL` or a pointer to an extension-specific structure.
|
||||
@ -35,22 +32,23 @@ meanings:
|
||||
|
||||
include::../../validity/structs/VkXlibSurfaceCreateInfoKHR.txt[]
|
||||
|
||||
With Xlib, pname:minImageExtent, pname:maxImageExtent, and pname:currentExtent
|
||||
are the window size. Therefore, a swapchain's pname:imageExtent must: match the
|
||||
window's size.
|
||||
With Xlib, pname:minImageExtent, pname:maxImageExtent, and
|
||||
pname:currentExtent are the window size. Therefore, a swapchain's
|
||||
pname:imageExtent must: match the window's size.
|
||||
|
||||
Some :apiname: functions may: send protocol over the specified Xlib Display
|
||||
connection when using a swapchain or presentable images created from a VkSurface
|
||||
referring to an Xlib window. Applications must: therefore ensure the display
|
||||
connection is available to :apiname: for the duration of any functions that
|
||||
manipulate such swapchains or their presentable images, and any functions that
|
||||
build or queue command buffers that operate on such presentable images.
|
||||
Specifically, applications using :apiname: with Xlib-based swapchains must:
|
||||
connection when using a swapchain or presentable images created from a
|
||||
VkSurface referring to an Xlib window. Applications must: therefore ensure
|
||||
the display connection is available to :apiname: for the duration of any
|
||||
functions that manipulate such swapchains or their presentable images, and
|
||||
any functions that build or queue command buffers that operate on such
|
||||
presentable images. Specifically, applications using :apiname: with
|
||||
Xlib-based swapchains must:
|
||||
|
||||
* Call XInitThreads() before calling any other Xlib functions if they intend
|
||||
to use :apiname: in multiple threads, or use :apiname: and Xlib in separate
|
||||
threads.
|
||||
* Call XInitThreads() before calling any other Xlib functions if they
|
||||
intend to use :apiname: in multiple threads, or use :apiname: and Xlib
|
||||
in separate threads.
|
||||
* Avoid holding a server grab on a display connection while waiting for
|
||||
:apiname: operations to complete using a swapchain derived from a different
|
||||
display connection referring to the same X server instance. Failing to do
|
||||
so may: result in deadlock.
|
||||
:apiname: operations to complete using a swapchain derived from a
|
||||
different display connection referring to the same X server instance.
|
||||
Failing to do so may: result in deadlock.
|
||||
|
@ -18,8 +18,8 @@ endif::doctype-manpage[]
|
||||
* pname:dstOffset must: be less than the size of pname:dstBuffer
|
||||
* pname:firstQuery must: be less than the number of queries in pname:queryPool
|
||||
* The sum of pname:firstQuery and pname:queryCount must: be less than or equal to the number of queries in pname:queryPool
|
||||
* If ename:VK_QUERY_RESULT_64_BIT is not set in pname:flags then pname:dstOffset and pname:stride must: be multiples of `4`
|
||||
* If ename:VK_QUERY_RESULT_64_BIT is set in pname:flags then pname:dstOffset and pname:stride must: be multiples of `8`
|
||||
* If ename:VK_QUERY_RESULT_64_BIT is not set in pname:flags then pname:dstOffset and pname:stride must be multiples of `4`
|
||||
* If ename:VK_QUERY_RESULT_64_BIT is set in pname:flags then pname:dstOffset and pname:stride must be multiples of `8`
|
||||
* pname:dstBuffer must: have enough storage, from pname:dstOffset, to contain the result of each query, as described <<queries-operation-memorylayout,here>>
|
||||
* pname:dstBuffer must: have been created with ename:VK_BUFFER_USAGE_TRANSFER_DST_BIT usage flag
|
||||
* If the pname:queryType used to create pname:queryPool was ename:VK_QUERY_TYPE_TIMESTAMP, pname:flags mustnot: contain ename:VK_QUERY_RESULT_PARTIAL_BIT
|
||||
|
@ -15,8 +15,8 @@ endif::doctype-manpage[]
|
||||
* pname:queryPool must: have been created, allocated or retrieved from pname:device
|
||||
* Each of pname:device and pname:queryPool must: have been created, allocated or retrieved from the same sname:VkPhysicalDevice
|
||||
* pname:firstQuery must: be less than the number of queries in pname:queryPool
|
||||
* If ename:VK_QUERY_RESULT_64_BIT is not set in pname:flags then pname:pData and pname:stride must: be multiples of `4`
|
||||
* If ename:VK_QUERY_RESULT_64_BIT is set in pname:flags then pname:pData and pname:stride must: be multiples of `8`
|
||||
* If ename:VK_QUERY_RESULT_64_BIT is not set in pname:flags then pname:pData and pname:stride must be multiples of `4`
|
||||
* If ename:VK_QUERY_RESULT_64_BIT is set in pname:flags then pname:pData and pname:stride must be multiples of `8`
|
||||
* The sum of pname:firstQuery and pname:queryCount must: be less than or equal to the number of queries in pname:queryPool
|
||||
* pname:dataSize must: be large enough to contain the result of each query, as described <<queries-operation-memorylayout,here>>
|
||||
* If the pname:queryType used to create pname:queryPool was ename:VK_QUERY_TYPE_TIMESTAMP, pname:flags mustnot: contain ename:VK_QUERY_RESULT_PARTIAL_BIT
|
||||
|
@ -10,7 +10,7 @@ endif::doctype-manpage[]
|
||||
* If pname:mapEntryCount is not `0`, pname:pMapEntries must: be a pointer to an array of pname:mapEntryCount sname:VkSpecializationMapEntry structures
|
||||
* If pname:dataSize is not `0`, pname:pData must: be a pointer to an array of pname:dataSize bytes
|
||||
* The pname:offset member of any given element of pname:pMapEntries must: be less than pname:dataSize
|
||||
* For any given element of pname:pMapEntries, pname:size must: be less than or equal to pname:dataSize minus pname:offset
|
||||
* For any given element of pname:pMapEntries, pname:size must be less than or equal to pname:dataSize minus pname:offset
|
||||
ifndef::doctype-manpage[]
|
||||
********************************************************************************
|
||||
endif::doctype-manpage[]
|
||||
|
@ -25,7 +25,7 @@ endif::doctype-manpage[]
|
||||
* If any input attachments are ename:VK_ATTACHMENT_UNUSED, then any pipelines bound during the subpass mustnot: accesss those input attachments from the fragment shader
|
||||
* The pname:attachment member of any element of pname:pPreserveAttachments mustnot: be ename:VK_ATTACHMENT_UNUSED
|
||||
* Any given element of pname:pPreserveAttachments mustnot: also be an element of any other member of the subpass description
|
||||
* If any attachment is used as both an input attachment and a color or depth/stencil attachment, then each use must: use the same pname:layout
|
||||
* If any attachment is used as both an input attachment and a color or depth/stencil attachment, then each use must use the same pname:layout
|
||||
ifndef::doctype-manpage[]
|
||||
********************************************************************************
|
||||
endif::doctype-manpage[]
|
||||
|
@ -3427,7 +3427,7 @@ typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPropertiesKHR)(VkPhys
|
||||
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPlanePropertiesKHR* pProperties);
|
||||
typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneSupportedDisplaysKHR)(VkPhysicalDevice physicalDevice, uint32_t planeIndex, uint32_t* pDisplayCount, VkDisplayKHR* pDisplays);
|
||||
typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayModePropertiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, uint32_t* pPropertyCount, VkDisplayModePropertiesKHR* pProperties);
|
||||
typedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayModeKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, const VkDisplayModeCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDisplayModeKHR* pMode);
|
||||
typedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayModeKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, const VkDisplayModeCreateInfoKHR*pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDisplayModeKHR* pMode);
|
||||
typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayModeKHR mode, uint32_t planeIndex, VkDisplayPlaneCapabilitiesKHR* pCapabilities);
|
||||
typedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayPlaneSurfaceKHR)(VkInstance instance, const VkDisplaySurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user