Package org.lwjgl.vulkan
Class EXTMetalSurface
java.lang.Object
org.lwjgl.vulkan.EXTMetalSurface
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.
- Name String
VK_EXT_metal_surface- Extension Type
- Instance extension
- Registered Extension Number
- 218
- Revision
- 1
- Extension and Version Dependencies
VK_KHR_surface- Contact
- Dzmitry Malyshau kvark
Other Extension Metadata
- Last Modified Date
- 2018-10-01
- IP Status
- No known IP claims.
- Contributors
- Dzmitry Malyshau, Mozilla Corp.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThe extension name.static final intThe extension specification version.static final intExtendsVkStructureType. -
Method Summary
Modifier and TypeMethodDescriptionstatic intnvkCreateMetalSurfaceEXT(org.lwjgl.vulkan.VkInstance instance, long pCreateInfo, long pAllocator, long pSurface) Unsafe version of:CreateMetalSurfaceEXTstatic intvkCreateMetalSurfaceEXT(org.lwjgl.vulkan.VkInstance instance, VkMetalSurfaceCreateInfoEXT pCreateInfo, @Nullable VkAllocationCallbacks pAllocator, long[] pSurface) Array version of:CreateMetalSurfaceEXTstatic intvkCreateMetalSurfaceEXT(org.lwjgl.vulkan.VkInstance instance, VkMetalSurfaceCreateInfoEXT pCreateInfo, @Nullable VkAllocationCallbacks pAllocator, LongBuffer pSurface) Create a VkSurfaceKHR object for CAMetalLayer.
-
Field Details
-
VK_EXT_METAL_SURFACE_SPEC_VERSION
public static final int VK_EXT_METAL_SURFACE_SPEC_VERSIONThe extension specification version.- See Also:
-
VK_EXT_METAL_SURFACE_EXTENSION_NAME
The extension name.- See Also:
-
VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT
public static final int VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXTExtendsVkStructureType.- See Also:
-
-
Method Details
-
nvkCreateMetalSurfaceEXT
public static int nvkCreateMetalSurfaceEXT(org.lwjgl.vulkan.VkInstance instance, long pCreateInfo, long pAllocator, long pSurface) Unsafe version of:CreateMetalSurfaceEXT -
vkCreateMetalSurfaceEXT
public static int vkCreateMetalSurfaceEXT(org.lwjgl.vulkan.VkInstance instance, VkMetalSurfaceCreateInfoEXT pCreateInfo, @Nullable VkAllocationCallbacks pAllocator, LongBuffer pSurface) Create a VkSurfaceKHR object for CAMetalLayer.C Specification
To create a
VkSurfaceKHRobject for aCAMetalLayer, call:VkResult vkCreateMetalSurfaceEXT( VkInstance instance, const VkMetalSurfaceCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);Valid Usage (Implicit)
instancemust be a validVkInstancehandlepCreateInfomust be a valid pointer to a validVkMetalSurfaceCreateInfoEXTstructure- 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 with which to associate the surface.pCreateInfo- a pointer to aVkMetalSurfaceCreateInfoEXTstructure specifying 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.
-
vkCreateMetalSurfaceEXT
public static int vkCreateMetalSurfaceEXT(org.lwjgl.vulkan.VkInstance instance, VkMetalSurfaceCreateInfoEXT pCreateInfo, @Nullable VkAllocationCallbacks pAllocator, long[] pSurface) Array version of:CreateMetalSurfaceEXT
-