Vulkan のレンダリング状態を確認する
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
送信した特定のコマンドの後にレンダリング状態を確認するには、[Commands] ペインでコマンドをクリックします。[State] ペインでは、次の項目を使用してレンダリング状態を調べることができます。

最後にバインドされたキュー(現在バインドされているキュー)
LastBoundQueue ノードには、vkQueueSubmit
で使用されたキューの情報が含まれています。これにより、該当するコマンドが送信されます。VulkanHandle
は、LastDrawInfos
の現在のレンダリング状態の描画情報を検索するために使用されます。

VulkanHandle
は最後に使用された VkQueue
の値を示します。これは実際には、送信されたコマンドに対して現在バインドされているキューです。
現在のレンダリング状態の情報は LastDrawInfos
に保存され、VkQueue
値でインデックス化されます。
最終描画情報(現在のレンダリング状態情報)
LastDrawInfos ノードには、各 VkQueue
の最後の描画の情報が含まれています。これには次の情報が含まれます。
- フレームバッファ情報
- レンダリングパス情報
- バインドされた記述子セット
- バインドされた頂点バッファとインデックス バッファ
- グラフィック パイプライン
- 描画パラメータ
バインドされたフレームバッファ

フレームバッファ ノード: 現在バインドされているフレームバッファの情報を表示します。このノードは、各 vkCmdBeginRenderPass
が同じキューで実行された後に更新されます。
Renderpass ノード: フレームバッファの作成に使用されるレンダリングパスの情報を表示します。これは、現在描画にバインドされているレンダリング パスではありません。
ImageAttachments ノード: フレームバッファにバインドされたすべての画像アタッチメント(VkImageViews
)を一覧表示します。リストの各項目には、画像ビューの情報が表示されます。
Image ノードは、画像ビューにバインドされた画像の情報を表示します。
バインドされたレンダリング パス

Renderpass ノード: 現在レンダリングに使用されているレンダーパスの情報を表示します。これは、各 VkCmdBeginRenderPass
が同じキューで実行された後に更新されます。
AttachmentDescriptions ノード: 現在使用中のレンダリングパスのすべての VkAttachmentDescription
をリストします。
SubpassDescriptions ノード: 各サブパスの VkSubpassDescription
をリストします。
SubpassDependencies ノード: 各サブパスの VkSubpassDependency
をリストします。
バインドされた記述子セット

DescriptorSets ノード: 現在バインドされているすべての記述子セットをリストします。制限付き記述子セットのリストは、最後の vkCmdBindDescriptorSets
が同じキューにロールアウトされた後の状態を反映します。元の記述子セット情報は上書きされるか、最後に実行された vkCmdBindDescriptorSets
のパラメータに従って新しい情報が追加されます。
Bindings: ノードは現在、記述子セット内でバインドされているすべての記述子バインディングを一覧表示します。
各記述子バインディングは、バインドされた記述子もリストします。
レイアウト ノード: 記述子セットの割り当てに使用される VkDescriptorSetLayout
の情報を表示します。
バインドされたグラフィック パイプライン

GraphicsPipeline
ノード: 最後にバインドされたグラフィック パイプラインに関する情報が含まれます。このノードは、各 VkCmdBindPipeline
が現在のキューで実行されるたびに更新されます。
バインドされたバッファ

BoundVertexBuffers ノードは、バインドされたすべての頂点バッファを一覧表示します。バインドされた頂点バッファごとに、バッキング バッファの情報を表示します。各 vkCmdBindVertexBuffers
が同じキューで実行されると、それに応じてリストが更新されます。
BoundIndexBuffer
ノードは、インデックス タイプとバッキング バッファの情報など、最後にバインドされたインデックス バッファを表示します。
描画コマンド パラメータ

CommandParameters ノード: vkCmdDraw
、vkCmdDrawIndexed
、vkCmdDrawIndirect
、vkCmdDrawIndirectIndexed
のパラメータが含まれます。各タイプの描画コマンドに対応するサブノードにパラメータ値が格納されます。この 4 種類の描画コマンドは同時に使用できないため、一度に入力できるのは 4 つのサブノードのうち 1 つのみです。CommandParameters の内容は、4 つの描画コマンドのいずれかが同じキューで実行された後に更新されます。
このページのコンテンツやコードサンプルは、コンテンツ ライセンスに記載のライセンスに従います。Java および OpenJDK は Oracle および関連会社の商標または登録商標です。
最終更新日 2025-07-27 UTC。
[null,null,["最終更新日 2025-07-27 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."]]