This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

VK_EXT_extended_dynamic_state bindVertexBuffers2EXT doesn't work correctly

Hi,

I was pleased to find that upon updating to the Android 14 preview, VK_EXT_dynamic_state + VK 1.3 were both supported. However when updating my application to take advantage of the new vertex binding call - 'bindVertexBuffers2EXT' - making use of both the dynamic stride and limit capabilities, I found that causes severe graphical corruption. Almost as if the GPU just skips some draws entirely and lets others through just fine. I can send an RDC capture or a demo app if necessary.

HW Info:

Mali-G78

Pixel 6 Pro

Driver 38.1.0

Parents
  • Hey ByLaws,

    Thanks for another report, it's much appreciated :) This is unfortunately indeed broken on r36p0 up-to-and-including r39 (except for r38p2) -- there are multiple scenarios where we fail to handle the pStrides argument correctly, so in practice we can only recommend to never pass anything except nullptr here...

    This is fixed on r40p0 and up -- however there is a separate issue affecting vkCmdBindVertexBuffers2EXT on r40 and r41 related to calling the function multiple times. I'm clarifying the specific issue there now (i.e. if redundantly binding the same PSO is a workaround for this or not); will report back on this once I know.

    Cheers,
    Christian

Reply
  • Hey ByLaws,

    Thanks for another report, it's much appreciated :) This is unfortunately indeed broken on r36p0 up-to-and-including r39 (except for r38p2) -- there are multiple scenarios where we fail to handle the pStrides argument correctly, so in practice we can only recommend to never pass anything except nullptr here...

    This is fixed on r40p0 and up -- however there is a separate issue affecting vkCmdBindVertexBuffers2EXT on r40 and r41 related to calling the function multiple times. I'm clarifying the specific issue there now (i.e. if redundantly binding the same PSO is a workaround for this or not); will report back on this once I know.

    Cheers,
    Christian

Children