Hi, I found an issue in current driver using DrawInstancedIndexedIndirect using a DYNAMIC (filled by the CPU) Indirect buffer.
Moving some CPU code to GPU, I prepared the job by filling on the CPU the buffers the way they will be used after moving all the setup code to the GPU (ComputeShader)
Using a buffer flaged as IndirectArgs, Dynamic, CPUWrite.
Map(buffer) -> fill(CPU) -> Unmap(buffer)
bind this buffer as IndirectArgs and issuing a DrawInstancedIndexedIndirect (using valid data) results in total garbage on NVidia (runs fine on AMD).
doing the same in a basic Dynamic buffer, then using CopyResource with a buffer flaged as Indirect as destination, then using this copy as IndirectArgs runs fine (both NVidia and AMD)
I can’t send you a repro (confidential big engine with huge dataset)
I can give you more details by email (email@example.com)
(I’m using another email here, can’t recover my old password, the capcha box hides the second line of the email confirmation in the lost password form on my browser …)