Vulkan 'Descriptors' (个人笔记)
2023-03-21 22:24 作者:Dreamtowards | 我要投稿

Descriptors (描述符) 用于描述 Shaders (着色器程序) 所 binding (绑定/需要访问) 的资源,如 VkBuffer, VkImage..
在vulkan中有 VkDescriptorSetLayout, VkDescriptorSet 和 VkDescriptorPool, 分别表示 bindings的结构 (无关实际数据), 具体绑定的数据信息,和VkDescriptorSet 的分配/销毁池。
VkDescriptorSetLayout
由一系列 descriptor bindings 所定义。而每一个 descriptor binding 则由以下信息定义:
1. descriptor type (uniform / image sampler ..)
2. 和该 binding 的 descriptors 数量
3. 和可访问该 binding 的 shader stages (vert / frag..) 所定义。

VkDescriptorSet
持有实际的 bindings 数据信息


VkDescriptorPool
用于分配 VkDescriptorSets
