Package org.lwjgl.vulkan
Class KHRXlibSurface
java.lang.Object
org.lwjgl.vulkan.KHRXlibSurface
The
VK_KHR_xlib_surface extension is an instance extension. It provides a mechanism to create a VkSurfaceKHR object (defined by the VK_KHR_surface extension) that refers to an X11 Window, using the Xlib client-side library, as well as a query to determine support for rendering via Xlib.
- Name String
VK_KHR_xlib_surface- Extension Type
- Instance extension
- Registered Extension Number
- 5
- Revision
- 6
- Extension and Version Dependencies
VK_KHR_surface- Contact
- Jesse Hall critsec
- Ian Elliott ianelliottus
Other Extension Metadata
- Last Modified Date
- 2015-11-28
- IP Status
- No known IP claims.
- Contributors
- Patrick Doane, Blizzard
- Faith 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
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThe extension name.static final intThe extension specification version.static final intExtendsVkStructureType. -
Method Summary
Modifier and TypeMethodDescriptionstatic intnvkCreateXlibSurfaceKHR(org.lwjgl.vulkan.VkInstance instance, long pCreateInfo, long pAllocator, long pSurface) Unsafe version of:CreateXlibSurfaceKHRstatic intvkCreateXlibSurfaceKHR(org.lwjgl.vulkan.VkInstance instance, VkXlibSurfaceCreateInfoKHR pCreateInfo, @Nullable VkAllocationCallbacks pAllocator, long[] pSurface) Array version of:CreateXlibSurfaceKHRstatic intvkCreateXlibSurfaceKHR(org.lwjgl.vulkan.VkInstance instance, VkXlibSurfaceCreateInfoKHR pCreateInfo, @Nullable VkAllocationCallbacks pAllocator, LongBuffer pSurface) Create aVkSurfaceKHRobject for an X11 window, using the Xlib client-side library.static booleanvkGetPhysicalDeviceXlibPresentationSupportKHR(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice, int queueFamilyIndex, long dpy, long visualID) Query physical device for presentation to X11 server using Xlib.
-
Field Details
-
VK_KHR_XLIB_SURFACE_SPEC_VERSION
public static final int VK_KHR_XLIB_SURFACE_SPEC_VERSIONThe extension specification version.- See Also:
-
VK_KHR_XLIB_SURFACE_EXTENSION_NAME
The extension name.- See Also:
-
VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR
public static final int VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHRExtendsVkStructureType.- See Also:
-
-
Method Details
-
nvkCreateXlibSurfaceKHR
public static int nvkCreateXlibSurfaceKHR(org.lwjgl.vulkan.VkInstance instance, long pCreateInfo, long pAllocator, long pSurface) Unsafe version of:CreateXlibSurfaceKHR -
vkCreateXlibSurfaceKHR
public static int vkCreateXlibSurfaceKHR(org.lwjgl.vulkan.VkInstance instance, VkXlibSurfaceCreateInfoKHR pCreateInfo, @Nullable VkAllocationCallbacks pAllocator, LongBuffer pSurface) Create aVkSurfaceKHRobject for an X11 window, using the Xlib client-side library.C Specification
To create a
VkSurfaceKHRobject for an X11 window, using the Xlib client-side library, call:VkResult vkCreateXlibSurfaceKHR( VkInstance instance, const VkXlibSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);Valid Usage (Implicit)
instancemust be a validVkInstancehandlepCreateInfomust be a valid pointer to a validVkXlibSurfaceCreateInfoKHRstructure- If
pAllocatoris notNULL,pAllocatormust be a valid pointer to a validVkAllocationCallbacksstructure pSurfacemust be a valid pointer to aVkSurfaceKHRhandle
Return Codes
- On success, this command returns
- On failure, this command returns
See Also
- Parameters:
instance- the instance to associate the surface with.pCreateInfo- a pointer to aVkXlibSurfaceCreateInfoKHRstructure containing the parameters affecting the creation of the surface object.pAllocator- the allocator used for host memory allocated for the surface object when there is no more specific allocator available (see Memory Allocation).pSurface- a pointer to aVkSurfaceKHRhandle in which the created surface object is returned.
-
vkGetPhysicalDeviceXlibPresentationSupportKHR
public static boolean vkGetPhysicalDeviceXlibPresentationSupportKHR(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice, int queueFamilyIndex, long dpy, long visualID) Query physical device for presentation to X11 server using Xlib.C Specification
To determine whether a queue family of a physical device supports presentation to an X11 server, using the Xlib client-side library, call:
VkBool32 vkGetPhysicalDeviceXlibPresentationSupportKHR( VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, Display* dpy, VisualID visualID);Description
This platform-specific function can be called prior to creating a surface.
Valid Usage
queueFamilyIndexmust be less thanpQueueFamilyPropertyCountreturned byvkGetPhysicalDeviceQueueFamilyPropertiesfor the givenphysicalDevice
Valid Usage (Implicit)
physicalDevicemust be a validVkPhysicalDevicehandledpymust be a valid pointer to aDisplayvalue
- Parameters:
physicalDevice- the physical device.queueFamilyIndex- the queue family index.dpy- a pointer to an XlibDisplayconnection to the server.
-
vkCreateXlibSurfaceKHR
public static int vkCreateXlibSurfaceKHR(org.lwjgl.vulkan.VkInstance instance, VkXlibSurfaceCreateInfoKHR pCreateInfo, @Nullable VkAllocationCallbacks pAllocator, long[] pSurface) Array version of:CreateXlibSurfaceKHR
-