From e807742444f761ff2b0f5855378f0c6e55198671 Mon Sep 17 00:00:00 2001 From: Jake Turner Date: Sun, 9 Aug 2026 23:42:08 +0100 Subject: [PATCH] Tweak RenderPass setup/usage in VK_Resource_Usage Use the mainWindow RenderPass everywhere --- util/test/demos/vk/vk_resource_usage.cpp | 39 ++++++++---------------- 1 file changed, 13 insertions(+), 26 deletions(-) diff --git a/util/test/demos/vk/vk_resource_usage.cpp b/util/test/demos/vk/vk_resource_usage.cpp index 2f9b1c46f..bfab07679 100644 --- a/util/test/demos/vk/vk_resource_usage.cpp +++ b/util/test/demos/vk/vk_resource_usage.cpp @@ -466,7 +466,7 @@ RD_TEST(VK_Resource_Usage, VulkanGraphicsTest) VK_ATTACHMENT_LOAD_OP_LOAD, VK_ATTACHMENT_STORE_OP_STORE, VK_SAMPLE_COUNT_1_BIT)); renderPassCreateInfo.addSubpass({VkAttachmentReference({0, VK_IMAGE_LAYOUT_GENERAL})}, VK_ATTACHMENT_UNUSED, VK_IMAGE_LAYOUT_UNDEFINED); - VkRenderPass renderPass = createRenderPass(renderPassCreateInfo); + VkRenderPass renderPass = mainWindow->rp; setName(renderPass, "Main Render Pass"); VkPipelineLayout noDescSetPipeLayout = createPipelineLayout(vkh::PipelineLayoutCreateInfo()); @@ -542,7 +542,7 @@ RD_TEST(VK_Resource_Usage, VulkanGraphicsTest) vkh::GraphicsPipelineCreateInfo meshShaderPipeCreateInfo; meshShaderPipeCreateInfo.layout = meshShaderLayout; - meshShaderPipeCreateInfo.renderPass = mainWindow->rp; + meshShaderPipeCreateInfo.renderPass = renderPass; meshShaderPipeCreateInfo.stages = { CompileShaderModule(simple_mesh, ShaderLang::glsl, ShaderStage::mesh, "main", {}, SPIRVTarget::vulkan12), @@ -1000,9 +1000,7 @@ RD_TEST(VK_Resource_Usage, VulkanGraphicsTest) // Graphics pushMarker(cmd, "Graphics"); { - vkCmdBeginRenderPass( - cmd, vkh::RenderPassBeginInfo(mainWindow->rp, mainWindow->GetFB(), mainWindow->scissor), - VK_SUBPASS_CONTENTS_INLINE); + vkCmdBeginRenderPass(cmd, mainWindow->beginRP(), VK_SUBPASS_CONTENTS_INLINE); // No Descriptor Set Usage pushMarker(cmd, "No Descriptor Set"); @@ -1049,9 +1047,8 @@ RD_TEST(VK_Resource_Usage, VulkanGraphicsTest) // Secondary Command Buffer pushMarker(cmd, "Secondary Command Buffer"); { - vkCmdBeginRenderPass( - cmd, vkh::RenderPassBeginInfo(mainWindow->rp, mainWindow->GetFB(), mainWindow->scissor), - VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS); + vkCmdBeginRenderPass(cmd, mainWindow->beginRP(), + VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS); vkCmdExecuteCommands(cmd, 3, secCmdBuffers); vkCmdEndRenderPass(cmd); } @@ -1107,9 +1104,7 @@ RD_TEST(VK_Resource_Usage, VulkanGraphicsTest) uint32_t countDraws = 4; uint32_t strideDraw = sizeof(uvec4); - vkCmdBeginRenderPass( - cmd, vkh::RenderPassBeginInfo(mainWindow->rp, mainWindow->GetFB(), mainWindow->scissor), - VK_SUBPASS_CONTENTS_INLINE); + vkCmdBeginRenderPass(cmd, mainWindow->beginRP(), VK_SUBPASS_CONTENTS_INLINE); vkCmdSetScissor(cmd, 0, 1, &mainWindow->scissor); vkh::cmdBindDescriptorSets(cmd, VK_PIPELINE_BIND_POINT_GRAPHICS, descSetPipeLayout, 0, @@ -1213,9 +1208,8 @@ RD_TEST(VK_Resource_Usage, VulkanGraphicsTest) vkCmdExecuteCommands(cmd, 1, &indirectCompSecCmd); - vkCmdBeginRenderPass( - cmd, vkh::RenderPassBeginInfo(mainWindow->rp, mainWindow->GetFB(), mainWindow->scissor), - VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS); + vkCmdBeginRenderPass(cmd, mainWindow->beginRP(), + VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS); VkCommandBuffer indirectDrawSecCmd = GetCommandBuffer(VK_COMMAND_BUFFER_LEVEL_SECONDARY); { @@ -1272,9 +1266,7 @@ RD_TEST(VK_Resource_Usage, VulkanGraphicsTest) uint32_t countDraw = 4; uint32_t strideDraw = sizeof(uvec4); - vkCmdBeginRenderPass( - cmd, vkh::RenderPassBeginInfo(mainWindow->rp, mainWindow->GetFB(), mainWindow->scissor), - VK_SUBPASS_CONTENTS_INLINE); + vkCmdBeginRenderPass(cmd, mainWindow->beginRP(), VK_SUBPASS_CONTENTS_INLINE); vkCmdSetScissor(cmd, 0, 1, &mainWindow->scissor); vkh::cmdBindDescriptorSets(cmd, VK_PIPELINE_BIND_POINT_GRAPHICS, descSetPipeLayout, 0, @@ -1383,9 +1375,8 @@ RD_TEST(VK_Resource_Usage, VulkanGraphicsTest) vkCmdBindIndexBuffer(cmd, ib.buffer, 0, VK_INDEX_TYPE_UINT32); setMarker(cmd, "Draw"); - vkCmdBeginRenderPass( - cmd, vkh::RenderPassBeginInfo(mainWindow->rp, mainWindow->GetFB(), mainWindow->scissor), - VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS); + vkCmdBeginRenderPass(cmd, mainWindow->beginRP(), + VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS); vkCmdExecuteCommands(cmd, 1, &nestedCmd); vkCmdEndRenderPass(cmd); @@ -1450,9 +1441,7 @@ RD_TEST(VK_Resource_Usage, VulkanGraphicsTest) VkDeviceSize descBuffSetOffset = 0; setMarker(cmd, "Draw"); - vkCmdBeginRenderPass( - cmd, vkh::RenderPassBeginInfo(mainWindow->rp, mainWindow->GetFB(), mainWindow->scissor), - VK_SUBPASS_CONTENTS_INLINE); + vkCmdBeginRenderPass(cmd, mainWindow->beginRP(), VK_SUBPASS_CONTENTS_INLINE); vkCmdSetDescriptorBufferOffsetsEXT(cmd, VK_PIPELINE_BIND_POINT_GRAPHICS, descBuffPipeLayout, 0, 1, &descBuffSetIndex, &descBuffSetOffset); vkCmdBindPipeline(cmd, VK_PIPELINE_BIND_POINT_GRAPHICS, descBuffPipe); @@ -1485,9 +1474,7 @@ RD_TEST(VK_Resource_Usage, VulkanGraphicsTest) { pushMarker(cmd, "Mesh Shaders"); vkCmdSetScissor(cmd, 0, 1, &mainWindow->scissor); - vkCmdBeginRenderPass( - cmd, vkh::RenderPassBeginInfo(mainWindow->rp, mainWindow->GetFB(), mainWindow->scissor), - VK_SUBPASS_CONTENTS_INLINE); + vkCmdBeginRenderPass(cmd, mainWindow->beginRP(), VK_SUBPASS_CONTENTS_INLINE); vkCmdBindPipeline(cmd, VK_PIPELINE_BIND_POINT_GRAPHICS, meshShaderPipe); setMarker(cmd, "Draw Mesh");