Top Description Fields Constructors Methods
org.lwjgl.vulkan

public Class EXTMetalSurface

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

The VK_EXT_metal_surface extension is an instance extension. It provides a mechanism to create a VkSurfaceKHR object (defined by the VK_KHR_surface extension) from CAMetalLayer, which is the native rendering surface of Apple’s Metal framework.
VK_EXT_metal_surface
Name String
VK_EXT_metal_surface
Extension Type
Instance extension
Registered Extension Number
218
Revision
1
Extension and Version Dependencies
VK_KHR_surface
Contact
Other Extension Metadata
Last Modified Date
2018-10-01
IP Status
No known IP claims.
Contributors
  • Dzmitry Malyshau, Mozilla Corp.

Field Summary

Modifier and TypeField and Description
public static final String
public static final int
VK_EXT_METAL_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
nvkCreateMetalSurfaceEXT(VkInstance instance, long pCreateInfo, long pAllocator, long pSurface)

Unsafe version of: CreateMetalSurfaceEXT

public static int
vkCreateMetalSurfaceEXT(VkInstance
the instance with which to associate the surface.
instance
,
VkMetalSurfaceCreateInfoEXT
a pointer to a VkMetalSurfaceCreateInfoEXT structure specifying 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 CAMetalLayer.

public static int
vkCreateMetalSurfaceEXT(VkInstance instance, VkMetalSurfaceCreateInfoEXT pCreateInfo, VkAllocationCallbacks pAllocator, long[] pSurface)

Array version of: CreateMetalSurfaceEXT

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

VK_EXT_METAL_SURFACE_EXTENSION_NAMEback to summary
public static final String VK_EXT_METAL_SURFACE_EXTENSION_NAME

The extension name.

VK_EXT_METAL_SURFACE_SPEC_VERSIONback to summary
public static final int VK_EXT_METAL_SURFACE_SPEC_VERSION

The extension specification version.

VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXTback to summary
public static final int VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT

Extends VkStructureType.

Constructor Detail

EXTMetalSurfaceback to summary
protected EXTMetalSurface()

Method Detail

nvkCreateMetalSurfaceEXTback to summary
public static int nvkCreateMetalSurfaceEXT(VkInstance instance, long pCreateInfo, long pAllocator, long pSurface)

Unsafe version of: CreateMetalSurfaceEXT

vkCreateMetalSurfaceEXTback to summary
public static int vkCreateMetalSurfaceEXT(VkInstance instance, VkMetalSurfaceCreateInfoEXT pCreateInfo, VkAllocationCallbacks pAllocator, LongBuffer pSurface)

Create a VkSurfaceKHR object for CAMetalLayer.

C Specification

To create a VkSurfaceKHR object for a CAMetalLayer, call:


VkResult vkCreateMetalSurfaceEXT(
    VkInstance                                  instance,
    const VkMetalSurfaceCreateInfoEXT*          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 VkMetalSurfaceCreateInfoEXT 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, VkMetalSurfaceCreateInfoEXT

Parameters
instance:VkInstance

the instance with which to associate the surface.

pCreateInfo:VkMetalSurfaceCreateInfoEXT

a pointer to a VkMetalSurfaceCreateInfoEXT structure specifying 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
vkCreateMetalSurfaceEXTback to summary
public static int vkCreateMetalSurfaceEXT(VkInstance instance, VkMetalSurfaceCreateInfoEXT pCreateInfo, VkAllocationCallbacks pAllocator, long[] pSurface)

Array version of: CreateMetalSurfaceEXT

Annotations
@NativeType:VkResult