Description
Run the attached example and you will see some graphical artifacts or worst case hanging or a crash. Disabling either IBL, MSAA or the principled material will make the application run correctly. When running with vulkan validation layers activated the following error is printed:
{{
vkDebug: Validation Error: [ VUID-vkCmdDrawIndexed-renderPass-02684 ] Object 0: handle = 0xd6c9a000000000b9, type = VK_OBJECT_TYPE_RENDER_PASS; Object 1: handle = 0x3fbcd60000000028, type = VK_OBJECT_TYPE_RENDER_PASS; | MessageID = 0x8cb637c2 | vkCmdDrawIndexed(): RenderPasses incompatible between active render pass w/ VkRenderPass 0xd6c9a000000000b9[] and pipeline state object w/ VkRenderPass 0x3fbcd60000000028[] Attachment 0 is not compatible with 0: They have different samples.. The Vulkan spec states: The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-renderPass-02684)
vkDebug: Validation Error: [ VUID-vkCmdDrawIndexed-renderPass-02684 ] Object 0: handle = 0xd6c9a000000000b9, type = VK_OBJECT_TYPE_RENDER_PASS; Object 1: handle = 0x3fbcd60000000028, type = VK_OBJECT_TYPE_RENDER_PASS; | MessageID = 0x8cb637c2 | vkCmdDrawIndexed(): RenderPasses incompatible between active render pass w/ VkRenderPass 0xd6c9a000000000b9[] and pipeline state object w/ VkRenderPass 0x3fbcd60000000028[] Attachment 1 is not compatible with 1: They have different samples.. The Vulkan spec states: The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-renderPass-02684)
vkDebug: Validation Error: [ VUID-vkCmdDrawIndexed-multisampledRenderToSingleSampled-07284 ] Object 0: handle = 0x7fffcde7b8d0, type = VK_OBJECT_TYPE_COMMAND_BUFFER; Object 1: handle = 0x2d15fe00000000bf, type = VK_OBJECT_TYPE_PIPELINE; Object 2: handle = 0xd6c9a000000000b9, type = VK_OBJECT_TYPE_RENDER_PASS; | MessageID = 0x576454a4 | vkCmdDrawIndexed(): In VkPipeline 0x2d15fe00000000bf[] the sample count is VK_SAMPLE_COUNT_4_BIT while the current VkRenderPass 0xd6c9a000000000b9[] has VK_SAMPLE_COUNT_1_BIT and they need to be the same. The Vulkan spec states: If rasterization is not disabled in the bound graphics pipeline, and none of the following is enabled: the VK_AMD_mixed_attachment_samples extension the VK_NV_framebuffer_mixed_samples extension the multisampledRenderToSingleSampled feature then rasterizationSamples for the currently bound graphics pipeline must be the same as the current subpass color and/or depth/stencil attachments (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-multisampledRenderToSingleSampled-07284)
vkDebug: Validation Error: [ VUID-vkCmdDrawIndexed-renderPass-02684 ] Object 0: handle = 0xd6c9a000000000b9, type = VK_OBJECT_TYPE_RENDER_PASS; Object 1: handle = 0x3fbcd60000000028, type = VK_OBJECT_TYPE_RENDER_PASS; | MessageID = 0x8cb637c2 | vkCmdDrawIndexed(): RenderPasses incompatible between active render pass w/ VkRenderPass 0xd6c9a000000000b9[] and pipeline state object w/ VkRenderPass 0x3fbcd60000000028[] Attachment 0 is not compatible with 0: They have different samples.. The Vulkan spec states: The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-renderPass-02684)
vkDebug: Validation Error: [ VUID-vkCmdDrawIndexed-renderPass-02684 ] Object 0: handle = 0xd6c9a000000000b9, type = VK_OBJECT_TYPE_RENDER_PASS; Object 1: handle = 0x3fbcd60000000028, type = VK_OBJECT_TYPE_RENDER_PASS; | MessageID = 0x8cb637c2 | vkCmdDrawIndexed(): RenderPasses incompatible between active render pass w/ VkRenderPass 0xd6c9a000000000b9[] and pipeline state object w/ VkRenderPass 0x3fbcd60000000028[] Attachment 1 is not compatible with 1: They have different samples.. The Vulkan spec states: The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-renderPass-02684)
vkDebug: Validation Error: [ VUID-vkCmdDrawIndexed-multisampledRenderToSingleSampled-07284 ] Object 0: handle = 0x7fffce509ac0, type = VK_OBJECT_TYPE_COMMAND_BUFFER; Object 1: handle = 0x2d15fe00000000bf, type = VK_OBJECT_TYPE_PIPELINE; Object 2: handle = 0xd6c9a000000000b9, type = VK_OBJECT_TYPE_RENDER_PASS; | MessageID = 0x576454a4 | vkCmdDrawIndexed(): In VkPipeline 0x2d15fe00000000bf[] the sample count is VK_SAMPLE_COUNT_4_BIT while the current VkRenderPass 0xd6c9a000000000b9[] has VK_SAMPLE_COUNT_1_BIT and they need to be the same. The Vulkan spec states: If rasterization is not disabled in the bound graphics pipeline, and none of the following is enabled: the VK_AMD_mixed_attachment_samples extension the VK_NV_framebuffer_mixed_samples extension the multisampledRenderToSingleSampled feature then rasterizationSamples for the currently bound graphics pipeline must be the same as the current subpass color and/or depth/stencil attachments (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-multisampledRenderToSingleSampled-07284)
vkDebug: Validation Error: [ VUID-vkCmdDrawIndexed-renderPass-02684 ] Object 0: handle = 0x18543900000000ff, type = VK_OBJECT_TYPE_RENDER_PASS; Object 1: handle = 0x3fbcd60000000028, type = VK_OBJECT_TYPE_RENDER_PASS; | MessageID = 0x8cb637c2 | vkCmdDrawIndexed(): RenderPasses incompatible between active render pass w/ VkRenderPass 0x18543900000000ff[] and pipeline state object w/ VkRenderPass 0x3fbcd60000000028[] Attachment 0 is not compatible with 0: They have different samples.. The Vulkan spec states: The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-renderPass-02684)
vkDebug: Validation Error: [ VUID-vkCmdDrawIndexed-renderPass-02684 ] Object 0: handle = 0x18543900000000ff, type = VK_OBJECT_TYPE_RENDER_PASS; Object 1: handle = 0x3fbcd60000000028, type = VK_OBJECT_TYPE_RENDER_PASS; | MessageID = 0x8cb637c2 | vkCmdDrawIndexed(): RenderPasses incompatible between active render pass w/ VkRenderPass 0x18543900000000ff[] and pipeline state object w/ VkRenderPass 0x3fbcd60000000028[] Attachment 1 is not compatible with 1: They have different samples.. The Vulkan spec states: The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-renderPass-02684)
vkDebug: Validation Error: [ VUID-vkCmdDrawIndexed-multisampledRenderToSingleSampled-07284 ] Object 0: handle = 0x7fffcde7b8d0, type = VK_OBJECT_TYPE_COMMAND_BUFFER; Object 1: handle = 0x1cae930000000105, type = VK_OBJECT_TYPE_PIPELINE; Object 2: handle = 0x18543900000000ff, type = VK_OBJECT_TYPE_RENDER_PASS; | MessageID = 0x576454a4 | vkCmdDrawIndexed(): In VkPipeline 0x1cae930000000105[] the sample count is VK_SAMPLE_COUNT_4_BIT while the current VkRenderPass 0x18543900000000ff[] has VK_SAMPLE_COUNT_1_BIT and they need to be the same. The Vulkan spec states: If rasterization is not disabled in the bound graphics pipeline, and none of the following is enabled: the VK_AMD_mixed_attachment_samples extension the VK_NV_framebuffer_mixed_samples extension the multisampledRenderToSingleSampled feature then rasterizationSamples for the currently bound graphics pipeline must be the same as the current subpass color and/or depth/stencil attachments (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-multisampledRenderToSingleSampled-07284)
vkDebug: Validation Error: [ VUID-vkCmdDrawIndexed-renderPass-02684 ] Object 0: handle = 0xc8d350000000149, type = VK_OBJECT_TYPE_RENDER_PASS; Object 1: handle = 0x3fbcd60000000028, type = VK_OBJECT_TYPE_RENDER_PASS; | MessageID = 0x8cb637c2 | vkCmdDrawIndexed(): RenderPasses incompatible between active render pass w/ VkRenderPass 0xc8d350000000149[] and pipeline state object w/ VkRenderPass 0x3fbcd60000000028[] Attachment 0 is not compatible with 0: They have different samples.. The Vulkan spec states: The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-renderPass-02684)
vkDebug: Validation Error: [ VUID-vkCmdDrawIndexed-renderPass-02684 ] Object 0: handle = 0xc8d350000000149, type = VK_OBJECT_TYPE_RENDER_PASS; Object 1: handle = 0x3fbcd60000000028, type = VK_OBJECT_TYPE_RENDER_PASS; | MessageID = 0x8cb637c2 | vkCmdDrawIndexed(): RenderPasses incompatible between active render pass w/ VkRenderPass 0xc8d350000000149[] and pipeline state object w/ VkRenderPass 0x3fbcd60000000028[] Attachment 1 is not compatible with 1: They have different samples.. The Vulkan spec states: The current render pass must be compatible with the renderPass member of the VkGraphicsPipelineCreateInfo structure specified when creating the VkPipeline bound to VK_PIPELINE_BIND_POINT_GRAPHICS (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-renderPass-02684)
vkDebug: Validation Error: [ VUID-vkCmdDrawIndexed-multisampledRenderToSingleSampled-07284 ] Object 0: handle = 0x7fffcde7b8d0, type = VK_OBJECT_TYPE_COMMAND_BUFFER; Object 1: handle = 0x1cd84000000014f, type = VK_OBJECT_TYPE_PIPELINE; Object 2: handle = 0xc8d350000000149, type = VK_OBJECT_TYPE_RENDER_PASS; | MessageID = 0x576454a4 | vkCmdDrawIndexed(): In VkPipeline 0x1cd84000000014f[] the sample count is VK_SAMPLE_COUNT_4_BIT while the current VkRenderPass 0xc8d350000000149[] has VK_SAMPLE_COUNT_1_BIT and they need to be the same. The Vulkan spec states: If rasterization is not disabled in the bound graphics pipeline, and none of the following is enabled: the VK_AMD_mixed_attachment_samples extension the VK_NV_framebuffer_mixed_samples extension the multisampledRenderToSingleSampled feature then rasterizationSamples for the currently bound graphics pipeline must be the same as the current subpass color and/or depth/stencil attachments (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-multisampledRenderToSingleSampled-07284)
}}
Attachments
For Gerrit Dashboard: QTBUG-122890 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
555285,3 | Do not reuse skybox passes for screen texture | dev | qt/qtquick3d | Status: MERGED | +2 | 0 |
556263,1 | Do not reuse skybox passes for screen texture | 6.7 | qt/qtquick3d | Status: ABANDONED | 0 | 0 |