Simple thing this time: I want to create a dynamic vertexbuffer, and refill it multiple times per frame with ->Map.
I don't get any kind of errormessage, it's just that nothing gets drawn. I checked everything in the compiler, I couldn't see whats wrong.
//Creation: ZeroMemory( &vertexBufferDesc, sizeof(vertexBufferDesc) ); vertexBufferDesc.Usage = D3D11_USAGE_DYNAMIC; vertexBufferDesc.ByteWidth = sizeof(VertexPosNormalTexColorColor2) * (numVertices); vertexBufferDesc.BindFlags = D3D11_BIND_VERTEX_BUFFER; vertexBufferDesc.CPUAccessFlags = D3D11_CPU_ACCESS_WRITE; vertexBufferDesc.MiscFlags = 0; d3d11Device->CreateBuffer( &vertexBufferDesc, NULL, &vertexBufferIn); //And the filling: VertexPosNormalTexColorColor2 *dataPtr; D3D11_MAPPED_SUBRESOURCE subresource; d3d11DevCon->Map(vBufferIn, 0, D3D11_MAP_WRITE_DISCARD, 0, &subresource ); dataPtr = (VertexPosNormalTexColorColor2*)subresource.pData; dataPtr->pos = verts->pos; dataPtr->normal = verts->normal; dataPtr->texcoord = verts->texcoord; dataPtr->color = verts->color; dataPtr->shadowColor = verts->shadowColor; d3d11DevCon->Unmap(vBufferIn, 0); // drawing: d3d11DevCon->UpdateSubresource(cBufferIn, 0, NULL, &cBufferSet, 0, 0); d3d11DevCon->IASetIndexBuffer( iBufferIn, DXGI_FORMAT_R32_UINT, 0); d3d11DevCon->IASetVertexBuffers( 0, 1, &vBuffer, &stride, &offset ); d3d11DevCon->DrawIndexed(numIndices, 0, 0 );
Thanks for your help!