75 lines
2.3 KiB
Plaintext
75 lines
2.3 KiB
Plaintext
// Copyright (c) 2016-2018 Khronos Group. This work is licensed under a
|
|
// Creative Commons Attribution 4.0 International License; see
|
|
// http://creativecommons.org/licenses/by/4.0/
|
|
|
|
include::meta/VK_KHR_descriptor_update_template.txt[]
|
|
|
|
*Last Modified Date*::
|
|
2017-09-05
|
|
*IP Status*::
|
|
No known IP claims.
|
|
*Interactions and External Dependencies*::
|
|
- Interacts with `<<VK_KHR_push_descriptor>>`
|
|
- Promoted to Vulkan 1.1 Core
|
|
*Contributors*::
|
|
- Jeff Bolz, NVIDIA
|
|
- Michael Worcester, Imagination Technologies
|
|
|
|
Applications may wish to update a fixed set of descriptors in a large number
|
|
of descriptors sets very frequently, i.e. during initializaton phase or if
|
|
it's required to rebuild descriptor sets for each frame.
|
|
For those cases it's 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
|
|
which describes the new descriptors.
|
|
|
|
|
|
=== New Object Types
|
|
|
|
* slink:VkDescriptorUpdateTemplateKHR
|
|
|
|
=== New Enum Constants
|
|
|
|
Extending elink:VkStructureType:
|
|
|
|
** ename:VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR
|
|
|
|
=== New Enums
|
|
|
|
* elink:VkDescriptorUpdateTemplateCreateFlagsKHR
|
|
* elink:VkDescriptorUpdateTemplateTypeKHR
|
|
|
|
=== New Structures
|
|
|
|
* slink:VkDescriptorUpdateTemplateEntryKHR
|
|
* slink:VkDescriptorUpdateTemplateCreateInfoKHR
|
|
|
|
=== New Functions
|
|
|
|
* flink:vkCreateDescriptorUpdateTemplateKHR
|
|
* flink:vkDestroyDescriptorUpdateTemplateKHR
|
|
* flink:vkUpdateDescriptorSetWithTemplateKHR
|
|
ifdef::VK_KHR_push_descriptor[]
|
|
* flink:vkCmdPushDescriptorSetWithTemplateKHR
|
|
endif::VK_KHR_push_descriptor[]
|
|
|
|
=== Promotion to Vulkan 1.1
|
|
|
|
ifdef::VK_KHR_push_descriptor[]
|
|
flink:vkCmdPushDescriptorSetWithTemplateKHR is included as an interaction
|
|
with `<<VK_KHR_push_descriptor>>`.
|
|
If Vulkan 1.1 and VK_KHR_push_descriptor are supported, this is included by
|
|
`<<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.
|
|
|
|
=== Version History
|
|
|
|
* Revision 1, 2016-01-11 (Markus Tavenrath)
|
|
- Initial draft
|