Проверьте состояние рендеринга Vulkan
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Чтобы проверить состояние рендеринга после конкретной отправленной команды, щелкните команду на панели «Команды» . Панель «Состояние» позволяет проверять состояние рендеринга с помощью следующих элементов.

Последняя связанная очередь (текущая связанная очередь)
Узел LastBoundQueue содержит информацию об очереди, используемой для vkQueueSubmit
, которая отправляет рассматриваемую команду. VulkanHandle
будет использоваться для поиска информации о текущем состоянии рендеринга в LastDrawInfos
.

VulkanHandle
показывает значение последней использованной VkQueue
, которая на самом деле является текущей привязанной очередью для отправленной команды.
Информация о текущем состоянии рендеринга хранится в LastDrawInfos
и индексируется значением VkQueue
.
Информация о последнем розыгрыше (информация о текущем состоянии рендеринга)
Узел LastDrawInfos содержит информацию о последнем отрисовке для каждого VkQueue
и включает следующую информацию:
- Информация о фреймбуфере
- Информация о проходе рендеринга
- Связанные наборы дескрипторов
- Связанные буферы вершин и индексов
- Графический конвейер
- Параметры рисования
Связанный фреймбуфер

Узел кадрового буфера : показывает информацию о текущем привязанном кадровом буфере. Этот узел обновляется после того, как каждый vkCmdBeginRenderPass
выполняется в той же очереди.
Узел Renderpass : показывает информацию о проходе рендеринга, использованном для создания фреймбуфера. Обратите внимание, что это не проход рендеринга, предназначенный в настоящее время для рисования.
Узел ImageAttachments : перечисляет все вложения изображений ( VkImageViews
), привязанные к фреймбуферу. Каждый элемент списка показывает информацию о просмотре изображения.
Узел изображения показывает информацию об изображении, привязанную к представлению изображения.
Привязанный рендерпасс

Узел Renderpass : показывает информацию о средстве рендеринга, используемом в данный момент для рендеринга. Он обновляется после того, как каждый VkCmdBeginRenderPass
выполняется в той же очереди.
Узел AttachmentDescriptions : перечисляет все VkAttachmentDescription
текущего используемого прохода рендеринга.
Узел SubpassDescriptions : перечисляет VkSubpassDescription
для каждого подпрохода.
Узел SubpassDependency : перечисляет VkSubpassDependency
для каждого подпрохода.
Связанные наборы дескрипторов

Узел DescriptorSets : перечисляет все привязанные в данный момент наборы дескрипторов. Список ограниченных наборов дескрипторов отражает состояние после развертывания последнего vkCmdBindDescriptorSets
в той же очереди, а исходная информация о наборе дескрипторов будет перезаписана или будет добавлена новая информация в соответствии с параметрами последнего выполненного vkCmdBindDescriptorSets
.
Bindings : узел перечисляет все текущие привязки дескриптора в наборе дескрипторов.
Для каждой привязки дескриптора также перечислены связанные с ним дескрипторы.
Узел макета : показывает информацию VkDescriptorSetLayout
используемую для выделения набора дескрипторов.
Привязанный графический конвейер

Узел GraphicsPipeline
: содержит информацию о последнем связанном графическом конвейере. Этот узел обновляется после выполнения каждого VkCmdBindPipeline
в текущей очереди.
Связанные буферы

Узел BoundVertexBuffers перечисляет все связанные буферы вершин. Для каждого связанного буфера вершин отображается информация о резервном буфере. Список обновляется соответствующим образом после того, как каждый vkCmdBindVertexBuffers
выполняется в одной и той же очереди.
Узел BoundIndexBuffer
показывает последний связанный буфер индекса, включая тип индекса и информацию о резервном буфере.
Параметры команды рисования

Узел CommandParameters : содержит параметры vkCmdDraw
, vkCmdDrawIndexed
, vkCmdDrawIndirect
и vkCmdDrawIndirectIndexed
. Для каждого типа команды рисования существует соответствующий подузел, содержащий значения параметров. Поскольку эти четыре типа команд рисования не могут использоваться одновременно, одновременно может быть заполнен только один из четырех подузлов. Содержимое CommandParameters обновляется после выполнения любой из четырех команд рисования в одной очереди.
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-07-29 UTC.
[[["Прост для понимания","easyToUnderstand","thumb-up"],["Помог мне решить мою проблему","solvedMyProblem","thumb-up"],["Другое","otherUp","thumb-up"]],[["Отсутствует нужная мне информация","missingTheInformationINeed","thumb-down"],["Слишком сложен/слишком много шагов","tooComplicatedTooManySteps","thumb-down"],["Устарел","outOfDate","thumb-down"],["Проблема с переводом текста","translationIssue","thumb-down"],["Проблемы образцов/кода","samplesCodeIssue","thumb-down"],["Другое","otherDown","thumb-down"]],["Последнее обновление: 2025-07-29 UTC."],[],[],null,["# Check Vulkan render state\n\nTo check the render state after a specific submitted command, click the command\nin the [**Commands** pane](/agi/refdocs/commands-pane). The **State** pane lets\nyou examine the render state using the following items.\n\nLast bound queue (currently bound queue)\n----------------------------------------\n\nThe **LastBoundQueue** node contains the information of the queue used for the\n`vkQueueSubmit`, which submits the command in question. The `VulkanHandle` will\nbe used to find the drawing information of the current render state in\n`LastDrawInfos`.\n\n1. The `VulkanHandle` shows the value of the last used `VkQueue`, which is\n actually the currently bound queue for the submitted command in question.\n\n2. The information of the current render state is stored in `LastDrawInfos`,\n and indexed by the `VkQueue` value.\n\nLast draw infos (current render state info)\n-------------------------------------------\n\nThe **LastDrawInfos** node contains the information of the last drawing for each\n`VkQueue`, and includes the following information:\n\n- Framebuffer information\n- Render pass information\n- Bound descriptor sets\n- Bound vertex and index buffers\n- Graphics pipeline\n- Drawing parameters\n\n**Bound Framebuffer**\n\n- **Framebuffer** node: shows the info of the currently bound framebuffer.\n This node gets updated after each `vkCmdBeginRenderPass` executes on the\n same queue.\n\n- **Renderpass** node: shows the info of the render pass used to create the\n framebuffer. Note that this is not the render pass currently bound for\n drawing.\n\n- **ImageAttachments** node: lists all the image attachments (`VkImageViews`)\n bound to the framebuffer. Each item of the list shows the info of the image\n view.\n\n- **Image** node shows the info of the image bound to the image view.\n\n**Bound renderpass**\n\n- **Renderpass** node: shows the info of the renderpass currently used for rendering. It gets updated after each `VkCmdBeginRenderPass` executes on the same queue.\n\n- **AttachmentDescriptions** node: lists all the `VkAttachmentDescription` of the current renderpass in use.\n\n- **SubpassDescriptions** node: lists the `VkSubpassDescription` for each subpass.\n\n- **SubpassDependencies** node: lists the `VkSubpassDependency` for each subpass.\n\n**Bound descriptor sets**\n\n- **DescriptorSets** node: lists all the currently bound descriptor sets. The list of bounded descriptor sets reflect the state after the last `vkCmdBindDescriptorSets` being rolled out on the same queue, and the original descriptor set info will be overwritten or new info will be added according to the parameters of the last executed `vkCmdBindDescriptorSets`.\n\n- **Bindings**: node lists all the currently bound descriptor bindings in the\n descriptor set.\n\n Each descriptor binding also lists its bound descriptors.\n- **Layout** node: shows the info of the `VkDescriptorSetLayout` used to allocate the descriptor set.\n\n**Bound graphics pipeline**\n\n`GraphicsPipeline` node: contains the info about the last bound graphics pipeline. This node gets updated after each `VkCmdBindPipeline` executes on the current queue.\n\n**Bound Buffers**\n\n- **BoundVertexBuffers** node lists all the bound vertex buffers. For each bound vertex buffer, it shows the info of the backing buffer. The list gets updated accordingly after each `vkCmdBindVertexBuffers` executes on the same queue.\n\n- `BoundIndexBuffer` node shows the last bound index buffer, including the index type and the info of the backing buffer.\n\n**Draw Command Parameters**\n\n**CommandParameters** node: contains the parameters to `vkCmdDraw`, `vkCmdDrawIndexed`, `vkCmdDrawIndirect` and `vkCmdDrawIndirectIndexed`. For each type of drawing command, there is a corresponding sub-node to contains the parameter values. As these four types of drawining commands cannot be used at the same time, only one of the four sub-nodes can be populated at a time. The content of **CommandParameters** gets updated after any one of the four drawining commands being executed on the same queue."]]