void VertexShaderData::PostDraw(ID3D11DeviceContext1& context) { context.IASetInputLayout(nullptr); context.VSSetShader(nullptr, nullptr, 0); ID3D11Buffer* vertexBuffers[] = { nullptr }; const unsigned int stride[] = { 0 }; const unsigned int offset[] = { 0 }; context.IASetVertexBuffers(0, 1, vertexBuffers, stride, offset); ID3D11Buffer* const cBuffers[] = { nullptr }; context.VSSetConstantBuffers(0, ARRAYSIZE(cBuffers), cBuffers); }
void VertexShaderData::PreDraw(ID3D11Device1& device, ID3D11DeviceContext1& context) { ASSERT(mInputLayout); ASSERT(mShader); ASSERT(mVertexBuffer); ASSERT(mVertexCount > 0); context.IASetPrimitiveTopology(D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST); context.IASetInputLayout(mInputLayout); context.VSSetShader(mShader, nullptr, 0); const unsigned int stride = sizeof(VertexData); const unsigned int offset = 0; context.IASetVertexBuffers(0, 1, &mVertexBuffer, &stride, &offset); // Set constant buffers ID3D11Buffer* const cBuffers[] = { mCBuffer.mBuffer }; mCBuffer.CopyDataToBuffer(device); context.VSSetConstantBuffers(0, ARRAYSIZE(cBuffers), cBuffers); }