送信した特定のコマンドの後にレンダリング状態を確認するには、[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 つの描画コマンドのいずれかが同じキューで実行された後に更新されます。