Hey, I’ve been googling all day about this issue, got no results, so finally decided to ask the community.
It’s a well known issue that ComputeBuffer.GetData method stalls pipeline and waits until GPU could sync and do stuff. So, compute shaders do great, but if we need to get data from gpu every frame, fps drops significantly.
But there’s new ComputeBuffer.GetNativeBufferPtr thing appeared in 5.5. So, the question is: can we do async data read from GPU to CPU using native directx stuff?
I’m a complete noob at native plugin coding, but I need this feature alot, and could study and try until it works, but it’s hard to understand where to start. The closest thing I found is is this: ID3D11DeviceContext::GetData method
Tell me please, is it something that can replace functionality of ComputeBuffer.GetData but the async way? And if I’m wrong, is there still a way to async-read data from gpu with native plugins?