Function Prototype

vkCreateIOSSurfaceMVK

Create a VkSurfaceKHR object for an iOS UIView

To create a VkSurfaceKHR object for an iOS UIView or CAMetalLayer, call:

VkResult vkCreateIOSSurfaceMVK(
    VkInstance instance,
    const VkIOSSurfaceCreateInfoMVK* pCreateInfo,
    const VkAllocationCallbacks* pAllocator,
    VkSurfaceKHR* pSurface);
  • instance is the instance with which to associate the surface.
  • pCreateInfo is a pointer to a VkIOSSurfaceCreateInfoMVK structure containing parameters affecting the creation of the surface object.
  • pAllocator is the allocator used for host memory allocated for the surface object when there is no more specific allocator available (see Memory Allocation).
  • pSurface is a pointer to a VkSurfaceKHR handle in which the created surface object is returned.

The vkCreateIOSSurfaceMVK function is considered deprecated and has been superseded by vkCreateMetalSurfaceEXT from the VK_EXT_metal_surface extension.

Valid Usage (Implicit)

VUID-vkCreateIOSSurfaceMVK-pCreateInfo-parameter

pCreateInfo must be a valid pointer to a valid VkIOSSurfaceCreateInfoMVK structure

VUID-vkCreateIOSSurfaceMVK-pAllocator-parameter

If pAllocator is not NULL, pAllocator must be a valid pointer to a valid VkAllocationCallbacks structure

VUID-vkCreateIOSSurfaceMVK-pSurface-parameter

pSurface must be a valid pointer to a VkSurfaceKHR handle