mirror of
https://github.com/status-im/Vulkan-Docs.git
synced 2025-02-17 08:46:32 +00:00
* Bump API patch number and header version number to 51 for this update. Github Issues: * Add Valid Usage statement to flink:vkCmdResolveImage to require that source and destination image formats match (public issue 492). * Specify that a code:char* parameter must: be a valid null-terminated string in the <<fundamentals-implicit-validity, implicit valid usage>> section (public issue 494). * Removed unnecessary VU for slink:VkPhysicalDeviceFeatures which is covered by ename:VK_ERROR_FEATURE_NOT_PRESENT already (public issue 496). * Clarify valid usage of pname:pQueueFamilyIndices in slink:VkBufferCreateInfo, slink:VkImageCreateInfo, and slink:VkSwapchainCreateInfoKHR (public issue 501). * Document that dependencies of enabled extensions must also be enabled in the <<extended-functionality-extensions-dependencies, Extension Dependencies>> section (public issue 507). Internal Issues: * Change slink:VkMappedMemoryRange valid usage to allow pname:offset + pname:size == size of the allocation. Also, if ename:VK_WHOLE_SIZE is used, require the end of the mapping to be aligned to a multiple of pname:nonCoherentAtomSize (internal issue 611). * Add issue to `VK_KHR_win32_surface` about reusing window objects from a different graphics API or Vulkan ICD (internal issue 639). * Require locations on user in/out in `GL_KHR_vulkan_glsl` (internal issue 783). * Added version info to the json validation output, and updated the schema to match (internal issue 838). * Restructure enumerated type descriptions separately from the command or structure they are used in, allowing better reference page generation (internal issue 841). * Re-sort extension appendices to be in alphabetical order within each author ID section. * Fix enum naming and clarify behavior for `VK_NVX_device_generated_commands` extension. New Extensions:
109 lines
3.0 KiB
Plaintext
109 lines
3.0 KiB
Plaintext
// Copyright (c) 2014-2017 The Khronos Group Inc.
|
|
// Copyright notice at https://www.khronos.org/registry/speccopyright.html
|
|
|
|
[[VK_KHR_xcb_surface]]
|
|
== VK_KHR_xcb_surface
|
|
|
|
*Name String*::
|
|
+VK_KHR_xcb_surface+
|
|
*Extension Type*::
|
|
Instance extension
|
|
*Registered Extension Number*::
|
|
6
|
|
*Last Modified Date*::
|
|
2015-11-28
|
|
*Revision*::
|
|
6
|
|
*IP Status*::
|
|
No known IP claims.
|
|
*Dependencies*::
|
|
- This extension is written against version 1.0 of the Vulkan API.
|
|
- Requires +VK_KHR_surface+.
|
|
*Contributors*::
|
|
- Patrick Doane, Blizzard
|
|
- Jason Ekstrand, Intel
|
|
- Ian Elliott, LunarG
|
|
- Courtney Goeltzenleuchter, LunarG
|
|
- Jesse Hall, Google
|
|
- James Jones, NVIDIA
|
|
- Antoine Labour, Google
|
|
- Jon Leech, Khronos
|
|
- David Mao, AMD
|
|
- Norbert Nopper, Freescale
|
|
- Alon Or-bach, Samsung
|
|
- Daniel Rakos, AMD
|
|
- Graham Sellers, AMD
|
|
- Ray Smith, ARM
|
|
- Jeff Vigil, Qualcomm
|
|
- Chia-I Wu, LunarG
|
|
*Contacts*::
|
|
- Jesse Hall, Google
|
|
- Ian Elliott, LunarG
|
|
|
|
|
|
The +VK_KHR_xcb_surface+ extension is an instance extension.
|
|
It provides a mechanism to create a slink:VkSurfaceKHR object (defined by
|
|
the +VK_KHR_surface extension+) that refers to an X11 code:Window, using the
|
|
XCB client-side library, as well as a query to determine support for
|
|
rendering via XCB.
|
|
|
|
=== New Object Types
|
|
|
|
None
|
|
|
|
=== New Enum Constants
|
|
|
|
* Extending elink:VkStructureType:
|
|
** ename:VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR
|
|
|
|
=== New Enums
|
|
|
|
None
|
|
|
|
=== New Structures
|
|
|
|
* slink:VkXcbSurfaceCreateInfoKHR
|
|
|
|
=== New Functions
|
|
|
|
* flink:vkCreateXcbSurfaceKHR
|
|
* flink:vkGetPhysicalDeviceXcbPresentationSupportKHR
|
|
|
|
=== Issues
|
|
|
|
1) Does XCB need a way to query for compatibility between a particular
|
|
physical device and a specific screen? This would be a more general query
|
|
than flink:vkGetPhysicalDeviceSurfaceSupportKHR: If it returned true, then
|
|
the physical device could be assumed to support presentation to any window
|
|
on that screen.
|
|
|
|
*RESOLVED*: Yes, this is needed for toolkits that want to create a
|
|
slink:VkDevice before creating a window.
|
|
To ensure the query is reliable, it must be made against a particular X
|
|
visual rather than the screen in general.
|
|
|
|
=== Version History
|
|
|
|
* Revision 1, 2015-09-23 (Jesse Hall)
|
|
- Initial draft, based on the previous contents of VK_EXT_KHR_swapchain
|
|
(later renamed VK_EXT_KHR_surface).
|
|
|
|
* Revision 2, 2015-10-02 (James Jones)
|
|
- Added presentation support query for an (xcb_connection_t*,
|
|
xcb_visualid_t) pair.
|
|
- Removed "root" parameter from CreateXcbSurfaceKHR(), as it is redundant
|
|
when a window on the same screen is specified as well.
|
|
- Adjusted wording of issue #1 and added agreed upon resolution.
|
|
|
|
* Revision 3, 2015-10-14 (Ian Elliott)
|
|
- Removed "root" parameter from CreateXcbSurfaceKHR() in one more place.
|
|
|
|
* Revision 4, 2015-10-26 (Ian Elliott)
|
|
- Renamed from VK_EXT_KHR_xcb_surface to VK_KHR_xcb_surface.
|
|
|
|
* Revision 5, 2015-10-23 (Daniel Rakos)
|
|
- Added allocation callbacks to vkCreateXcbSurfaceKHR.
|
|
|
|
* Revision 6, 2015-11-28 (Daniel Rakos)
|
|
- Updated the surface create function to take a pCreateInfo structure.
|