要检查在提交特定命令后渲染的状态,请单击 命令窗格中的命令。状态窗格允许你使用以下项目检查渲染状态。
最后绑定的队列(当前绑定的队列)
LastBoundQueue 节点包含用于 vkQueueSubmit
的队列的信息,该队列提交了所讨论的命令。VulkanHandle
将用于在 LastDrawInfos
中查找当前渲染状态的绘制信息。
VulkanHandle
显示最后使用的VkQueue
的值,实际上是所讨论的提交命令的当前绑定队列。当前渲染状态的信息存储在
LastDrawInfos
中,并通过VkQueue
值进行索引。
最后的绘制信息(当前渲染状态信息)
LastDrawInfos 节点包含每个 VkQueue
的最后绘制信息,包括以下信息
- 帧缓冲区信息
- 渲染通道信息
- 绑定描述符集
- 绑定顶点和索引缓冲区
- 图形管道
- 绘制参数
绑定帧缓冲区
帧缓冲区节点:显示当前绑定帧缓冲区的信息。此节点在每个
vkCmdBeginRenderPass
在同一队列上执行后都会更新。渲染通道节点:显示用于创建帧缓冲区的渲染通道的信息。请注意,这不是当前绑定用于绘制的渲染通道。
ImageAttachments 节点:列出绑定到帧缓冲区的所有图像附件 (
VkImageViews
)。列表中的每个项目都显示图像视图的信息。图像节点显示绑定到图像视图的图像的信息。
绑定渲染通道
渲染通道节点:显示当前用于渲染的渲染通道的信息。它在每个
VkCmdBeginRenderPass
在同一队列上执行后都会更新。AttachmentDescriptions 节点:列出当前使用中的渲染通道的所有
VkAttachmentDescription
。SubpassDescriptions 节点:列出每个子通道的
VkSubpassDescription
。SubpassDependencies 节点:列出每个子通道的
VkSubpassDependency
。
绑定描述符集
DescriptorSets 节点:列出所有当前绑定的描述符集。绑定描述符集的列表反映了最后
vkCmdBindDescriptorSets
在同一队列上推出后的状态,原始描述符集信息将根据最后执行的vkCmdBindDescriptorSets
的参数被覆盖或添加新信息。绑定:节点列出描述符集中所有当前绑定的描述符绑定。
每个描述符绑定还列出其绑定的描述符。
布局节点:显示用于分配描述符集的
VkDescriptorSetLayout
的信息。
绑定图形管道
GraphicsPipeline
节点:包含有关最后绑定图形管道的的信息。此节点在每个 VkCmdBindPipeline
在当前队列上执行后都会更新。
绑定缓冲区
BoundVertexBuffers 节点列出所有绑定的顶点缓冲区。对于每个绑定的顶点缓冲区,它都显示了后备缓冲区的信息。列表在每个
vkCmdBindVertexBuffers
在同一队列上执行后都会相应地更新。BoundIndexBuffer
节点显示最后绑定的索引缓冲区,包括索引类型和后备缓冲区的信息。
绘制命令参数
CommandParameters 节点:包含 vkCmdDraw
、vkCmdDrawIndexed
、vkCmdDrawIndirect
和 vkCmdDrawIndirectIndexed
的参数。对于每种类型的绘制命令,都有一个相应的子节点来包含参数值。由于这四种类型的绘制命令不能同时使用,因此一次只能填充四个子节点中的一个。CommandParameters 的内容在四个绘制命令中的任何一个在同一队列上执行后都会更新。