I'm hacking on D3D12ExecuteIndirect from the MS GitHub, and I have questions about customizations that I'm making.
- Out-of-box sample works great on my NVIDIA & AMD cards. Good start.
- If I switch m_processedCommandBuffers from an array to a single buffer, NVIDIA is happy, but AMD appears to render some triangles multiple times at some offset to each other. I suppose this would make sense if the compute command list for the next frame is executing at the same time as the direct command list, but...
- If I switch the compute command list to a direct command list, and get rid of the separate command queue, the incorrect rendering remains. I would expect the command lists to execute in serial every frame given that I'm using the same command queue for both now, so I don't know why there would be an apparent conflict on the processed command buffer.
I've attached my alterations. If anyone could provide insight into what might be happening, that would be great.