Top Description Fields Constructors Methods
org.lwjgl.vulkan

public Class KHRWin32Surface

extends Object
Class Inheritance
Imports
javax.annotation.*, java.nio.*, org.lwjgl.system.*, org.lwjgl.system.windows.*

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.
VK_KHR_win32_surface
Name String
VK_KHR_win32_surface
Extension Type
Instance extension
Registered Extension Number
10
Revision
6
Extension and Version Dependencies
VK_KHR_surface
Contact
Other Extension Metadata
Last Modified Date
2017-04-24
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

Modifier and TypeField and Description
public static final String
public static final int
VK_KHR_WIN32_SURFACE_SPEC_VERSION

The extension specification version.

public static final int

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
public static int
nvkCreateWin32SurfaceKHR(VkInstance instance, long pCreateInfo, long pAllocator, long pSurface)

Unsafe version of: CreateWin32SurfaceKHR

public static int
vkCreateWin32SurfaceKHR(VkInstance
the instance to associate the surface with.
instance
,
VkWin32SurfaceCreateInfoKHR
a pointer to a VkWin32SurfaceCreateInfoKHR structure containing parameters affecting the creation of the surface object.
pCreateInfo
,
VkAllocationCallbacks
the allocator used for host memory allocated for the surface object when there is no more specific allocator available (see Memory Allocation).
pAllocator
,
LongBuffer
a pointer to a VkSurfaceKHR handle in which the created surface object is returned.
pSurface
)

Create a VkSurfaceKHR object for an Win32 native window.

public static int
vkCreateWin32SurfaceKHR(VkInstance instance, VkWin32SurfaceCreateInfoKHR pCreateInfo, VkAllocationCallbacks pAllocator, long[] pSurface)

Array version of: CreateWin32SurfaceKHR

public static boolean
vkGetPhysicalDeviceWin32PresentationSupportKHR(VkPhysicalDevice
the physical device.
physicalDevice
,
int
the queue family index.
queueFamilyIndex
)

Query queue family support for presentation on a Win32 display.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

VK_KHR_WIN32_SURFACE_EXTENSION_NAMEback to summary
public static final String VK_KHR_WIN32_SURFACE_EXTENSION_NAME

The extension name.

VK_KHR_WIN32_SURFACE_SPEC_VERSIONback to summary
public static final int VK_KHR_WIN32_SURFACE_SPEC_VERSION

The extension specification version.

VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHRback to summary
public static final int VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR

Extends VkStructureType.

Constructor Detail

KHRWin32Surfaceback to summary
protected KHRWin32Surface()

Method Detail

nvkCreateWin32SurfaceKHRback to summary
public static int nvkCreateWin32SurfaceKHR(VkInstance instance, long pCreateInfo, long pAllocator, long pSurface)

Unsafe version of: CreateWin32SurfaceKHR

vkCreateWin32SurfaceKHRback to summary
public static int vkCreateWin32SurfaceKHR(VkInstance instance, VkWin32SurfaceCreateInfoKHR pCreateInfo, VkAllocationCallbacks pAllocator, 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

Parameters
instance:VkInstance

the instance to associate the surface with.

pCreateInfo:VkWin32SurfaceCreateInfoKHR

a pointer to a VkWin32SurfaceCreateInfoKHR structure containing parameters affecting the creation of the surface object.

pAllocator:VkAllocationCallbacks

the allocator used for host memory allocated for the surface object when there is no more specific allocator available (see Memory Allocation).

pSurface:LongBuffer

a pointer to a VkSurfaceKHR handle in which the created surface object is returned.

Annotations
@NativeType:VkResult
vkCreateWin32SurfaceKHRback to summary
public static int vkCreateWin32SurfaceKHR(VkInstance instance, VkWin32SurfaceCreateInfoKHR pCreateInfo, VkAllocationCallbacks pAllocator, long[] pSurface)

Array version of: CreateWin32SurfaceKHR

Annotations
@NativeType:VkResult
vkGetPhysicalDeviceWin32PresentationSupportKHRback to summary
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);
Description

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
Parameters
physicalDevice:VkPhysicalDevice

the physical device.

queueFamilyIndex:int

the queue family index.

Annotations
@NativeType:VkBool32