• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright (c) 2021-2022 The Brenwill Workshop Ltd.
2//
3// SPDX-License-Identifier: CC-BY-4.0
4
5include::{generated}/meta/{refprefix}VK_EXT_metal_objects.adoc[]
6
7=== Other Extension Metadata
8
9*Last Modified Date*::
10    2022-05-28
11*IP Status*::
12    No known IP claims.
13*Contributors*::
14  - Bill Hollings, The Brenwill Workshop Ltd.
15  - Dzmitry Malyshau, Mozilla Corp.
16
17=== Description
18
19In a Vulkan implementation that is layered on top of Metal on Apple device
20platforms, this extension provides the ability to import and export the
21underlying Metal objects associated with specific Vulkan objects.
22
23As detailed in the
24https://github.com/KhronosGroup/Vulkan-Docs/tree/main/proposals/VK_EXT_metal_objects.adoc[extension
25proposal document], this extension adds one new Vulkan command,
26flink:vkExportMetalObjectsEXT, to export underlying Metal objects from
27Vulkan objects, and supports importing the appropriate existing Metal
28objects when creating Vulkan objects of types slink:VkDeviceMemory,
29slink:VkImage, slink:VkSemaphore, and slink:VkEvent,
30
31The intent is that this extension will be advertised and supported only on
32implementations that are layered on top of Metal on Apple device platforms.
33
34include::{generated}/interfaces/VK_EXT_metal_objects.adoc[]
35
36=== Issues
37
38None.
39
40=== Version History
41
42  * Revision 1, 2022-05-28 (Bill Hollings)
43  ** Initial draft.
44  ** Incorporated feedback from review by the Vulkan Working Group.
45     Renamed many structures, moved import/export of MTLBuffer to
46     VkDeviceMemory, added export of MTLSharedEvent, added import of
47     MTLSharedEvent for VkSemaphore and VkEvent, and changed used bit mask
48     fields to individual bit fields to simplify Valid Usage rules.
49