| // Copyright 2016-2021 The Khronos Group, Inc. |
| // |
| // SPDX-License-Identifier: CC-BY-4.0 |
| |
| include::{generated}/meta/{refprefix}VK_KHR_external_fence_win32.txt[] |
| |
| === Other Extension Metadata |
| |
| *Last Modified Date*:: |
| 2017-05-08 |
| *IP Status*:: |
| No known IP claims. |
| *Contributors*:: |
| - Jesse Hall, Google |
| - James Jones, NVIDIA |
| - Jeff Juliano, NVIDIA |
| - Cass Everitt, Oculus |
| - Contributors to `apiext:VK_KHR_external_semaphore_win32` |
| |
| === Description |
| |
| An application using external memory may wish to synchronize access to that |
| memory using fences. |
| This extension enables an application to export fence payload to and import |
| fence payload from Windows handles. |
| |
| include::{generated}/interfaces/VK_KHR_external_fence_win32.txt[] |
| |
| === Issues |
| |
| This extension borrows concepts, semantics, and language from |
| `apiext:VK_KHR_external_semaphore_win32`. |
| That extension's issues apply equally to this extension. |
| |
| 1) Should D3D12 fence handle types be supported, like they are for |
| semaphores? |
| |
| *RESOLVED*: No. |
| Doing so would require extending the fence signal and wait operations to |
| provide values to signal / wait for, like sname:VkD3D12FenceSubmitInfoKHR |
| does. |
| A D3D12 fence can be signaled by importing it into a slink:VkSemaphore |
| instead of a slink:VkFence, and applications can check status or wait on the |
| D3D12 fence using non-Vulkan APIs. |
| The convenience of being able to do these operations on sname:VkFence |
| objects does not justify the extra API complexity. |
| |
| === Version History |
| |
| * Revision 1, 2017-05-08 (Jesse Hall) |
| - Initial revision |