/ appendices / VK_EXT_queue_family_foreign.txt
VK_EXT_queue_family_foreign.txt
 1  include::meta/VK_EXT_queue_family_foreign.txt[]
 2  
 3  *Last Modified Date*::
 4      2017-11-01
 5  *IP Status*::
 6      No known IP claims.
 7  *Contributors*::
 8    - Chad Versace, Google
 9    - James Jones, NVIDIA
10    - Jason Ekstrand, Intel
11    - Jesse Hall, Google
12    - Daniel Rakos, AMD
13    - Ray Smith, ARM
14  
15  This extension defines a special queue family,
16  ename:VK_QUEUE_FAMILY_FOREIGN_EXT, which can be used to transfer ownership
17  of resources backed by external memory to foreign, external queues.
18  This is similar to ename:VK_QUEUE_FAMILY_EXTERNAL_KHR, defined in
19  `<<VK_KHR_external_memory>>`.
20  The key differences between the two are:
21  
22    * The queues represented by ename:VK_QUEUE_FAMILY_EXTERNAL_KHR must share
23      the same physical device and the same driver version as the current
24      slink:VkInstance.
25      ename:VK_QUEUE_FAMILY_FOREIGN_EXT has no such restrictions.
26      It can represent devices and drivers from other vendors, and can even
27      represent non-Vulkan-capable devices.
28    * All resources backed by external memory support
29      ename:VK_QUEUE_FAMILY_EXTERNAL_KHR.
30      Support for ename:VK_QUEUE_FAMILY_FOREIGN_EXT is more restrictive.
31    * Applications should expect transitions to/from
32      ename:VK_QUEUE_FAMILY_FOREIGN_EXT to be more expensive than transitions
33      to/from ename:VK_QUEUE_FAMILY_EXTERNAL_KHR.
34  
35  === New Enum Constants
36  
37    * Special constants:
38    ** ename:VK_QUEUE_FAMILY_FOREIGN_EXT
39  
40  === Version History
41  
42    * Revision 1, 2017-11-01 (Chad Versace)
43      - Squashed internal revisions