Class KHRWin32Surface

  • public class KHRWin32Surface
    extends java.lang.Object
    The VK_KHR_win32_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 a Win32 HWND, as well as a query to determine support for rendering to the windows desktop.
    Name String
    Extension Type
    Instance extension
    Registered Extension Number
    Extension and Version Dependencies
    Last Modified Date
    IP Status
    No known IP claims.
    • 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
    • Field Detail


        public static final int VK_KHR_WIN32_SURFACE_SPEC_VERSION
        The extension specification version.
        See Also:
        Constant Field Values

        public static final java.lang.String VK_KHR_WIN32_SURFACE_EXTENSION_NAME
        The extension name.
        See Also:
        Constant Field Values

        public static final int VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR
        Extends VkStructureType.
        See Also:
        Constant Field Values
    • Method Detail

      • nvkCreateWin32SurfaceKHR

        public static int nvkCreateWin32SurfaceKHR​(VkInstance instance,
                                                   long pCreateInfo,
                                                   long pAllocator,
                                                   long pSurface)
        Unsafe version of: CreateWin32SurfaceKHR
      • vkCreateWin32SurfaceKHR

        public static int vkCreateWin32SurfaceKHR​(VkInstance instance,
                                                  VkWin32SurfaceCreateInfoKHR pCreateInfo,
                                                  VkAllocationCallbacks pAllocator,
                                                  java.nio.LongBuffer pSurface)
        Create a VkSurfaceKHR object for an Win32 native window.
        C Specification

        To create a VkSurfaceKHR object for a Win32 window, call:

         VkResult vkCreateWin32SurfaceKHR(
             VkInstance                                  instance,
             const VkWin32SurfaceCreateInfoKHR*          pCreateInfo,
             const VkAllocationCallbacks*                pAllocator,
             VkSurfaceKHR*                               pSurface);
        Valid Usage (Implicit)
        • instance must be a valid VkInstance handle
        • pCreateInfo must be a valid pointer to a valid VkWin32SurfaceCreateInfoKHR structure
        • If pAllocator is not NULL, pAllocator must be a valid pointer to a valid VkAllocationCallbacks structure
        • pSurface must be a valid pointer to a VkSurfaceKHR handle
        Return Codes
        On success, this command returns
        On failure, this command returns
        See Also

        VkAllocationCallbacks, VkWin32SurfaceCreateInfoKHR

        instance - the instance to associate the surface with.
        pCreateInfo - a pointer to an instance of the VkWin32SurfaceCreateInfoKHR structure containing 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 - points to a VkSurfaceKHR handle in which the created surface object is returned.
      • vkGetPhysicalDeviceWin32PresentationSupportKHR

        public static boolean vkGetPhysicalDeviceWin32PresentationSupportKHR​(VkPhysicalDevice physicalDevice,
                                                                             int queueFamilyIndex)
        query queue family support for presentation on a Win32 display.
        C Specification

        To determine whether a queue family of a physical device supports presentation to the Microsoft Windows desktop, call:

         VkBool32 vkGetPhysicalDeviceWin32PresentationSupportKHR(
             VkPhysicalDevice                            physicalDevice,
             uint32_t                                    queueFamilyIndex);

        This platform-specific function can be called prior to creating a surface.

        Valid Usage
        • queueFamilyIndex must be less than pQueueFamilyPropertyCount returned by vkGetPhysicalDeviceQueueFamilyProperties for the given physicalDevice
        Valid Usage (Implicit)
        • physicalDevice must be a valid VkPhysicalDevice handle
        physicalDevice - the physical device.
        queueFamilyIndex - the queue family index.