| // Copyright 2016-2021 The Khronos Group, Inc. |
| // |
| // SPDX-License-Identifier: CC-BY-4.0 |
| |
| include::{generated}/meta/{refprefix}VK_KHR_descriptor_update_template.txt[] |
| |
| === Other Extension Metadata |
| |
| *Last Modified Date*:: |
| 2017-09-05 |
| *IP Status*:: |
| No known IP claims. |
| *Interactions and External Dependencies*:: |
| - Interacts with `apiext:VK_KHR_push_descriptor` |
| - Promoted to Vulkan 1.1 Core |
| *Contributors*:: |
| - Jeff Bolz, NVIDIA |
| - Michael Worcester, Imagination Technologies |
| |
| === Description |
| |
| Applications may wish to update a fixed set of descriptors in a large number |
| of descriptor sets very frequently, i.e. during initializaton phase or if it |
| is required to rebuild descriptor sets for each frame. |
| For those cases it is also not unlikely that all information required to |
| update a single descriptor set is stored in a single struct. |
| This extension provides a way to update a fixed set of descriptors in a |
| single slink:VkDescriptorSet with a pointer to a user defined data structure |
| describing the new descriptors. |
| |
| === Promotion to Vulkan 1.1 |
| |
| ifdef::VK_KHR_push_descriptor[] |
| flink:vkCmdPushDescriptorSetWithTemplateKHR is included as an interaction |
| with `apiext:VK_KHR_push_descriptor`. |
| If Vulkan 1.1 and `VK_KHR_push_descriptor` are supported, this is included |
| by `apiext:VK_KHR_push_descriptor`. |
| endif::VK_KHR_push_descriptor[] |
| |
| The base functionality in this extension is included in core Vulkan 1.1, |
| with the KHR suffix omitted. |
| The original type, enum and command names are still available as aliases of |
| the core functionality. |
| |
| include::{generated}/interfaces/VK_KHR_descriptor_update_template.txt[] |
| |
| === Version History |
| |
| * Revision 1, 2016-01-11 (Markus Tavenrath) |
| - Initial draft |