D3D11_BUFFER_DESC desc = { 40000*sizeof(vec3) ,D3D11_USAGE_DEFAULT ,D3D11_BIND_VERTEX_BUFFER|D3D11_BIND_UNORDERED_ACCESS ,0 // NoCPU access ,0 // not D3D11_RESOURCE_MISC_BUFFER_STRUCTURED - why? ,sizeof(vec3) //StructureByteStride }; m_pd3dDevice->CreateBuffer(&desc,NULL,&m_pVertexBuffer); D3D11_UNORDERED_ACCESS_VIEW_DESC uav_desc; ZeroMemory(&uav_desc, sizeof(D3D11_UNORDERED_ACCESS_VIEW_DESC)); uav_desc.Format =DXGI_FORMAT_R32_FLOAT; // Must be this format, or INVALID_ARG will occur uav_desc.ViewDimension =D3D11_UAV_DIMENSION_BUFFER; uav_desc.Buffer.NumElements =40000; V_CHECK(m_pd3dDevice->CreateUnorderedAccessView(m_pVertexBuffer, &uav_desc, &unorderedAccessView));
Tuesday, 26 November 2013
UnorderedAccessView of a vertex buffer
Here's how to create a vertex buffer that you can write with a compute shader:
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment