Hello.
I'm creating a simple program with one buffer and one only compute shader. Every examples I've seen so far used
csDataBufferDesc.BindFlags = D3D11_BIND_SHADER_RESOURCE | D3D11_BIND_UNORDERED_ACCESS;
It makes sense - this buffer will be used in a shader so it have to be a shader resource, right? Also I'm reading and writing to any place in it so it have to be unordered. But I tried and for me this also works:
csDataBufferDesc.BindFlags = D3D11_BIND_UNORDERED_ACCESS;
How it's possible? Why do we need this D3D11_BIND_SHADER_RESOURCE at all?