From e54246d000d030e445d93384e73605d31db4eb52 Mon Sep 17 00:00:00 2001 From: Philip Rebohle Date: Sun, 18 Mar 2018 12:39:11 +0100 Subject: [PATCH] [d3d11] Implement SetConstantBuffers1 methods --- src/d3d11/d3d11_context.cpp | 48 ++++++++++++++++++++++++++++++++----- 1 file changed, 42 insertions(+), 6 deletions(-) diff --git a/src/d3d11/d3d11_context.cpp b/src/d3d11/d3d11_context.cpp index 8afd39513..b9559c214 100644 --- a/src/d3d11/d3d11_context.cpp +++ b/src/d3d11/d3d11_context.cpp @@ -1155,7 +1155,13 @@ namespace dxvk { ID3D11Buffer* const* ppConstantBuffers, const UINT* pFirstConstant, const UINT* pNumConstants) { - Logger::err("D3D11DeviceContext::VSSetConstantBuffers1: not implemented"); + this->SetConstantBuffers( + DxbcProgramType::VertexShader, + m_state.vs.constantBuffers, + StartSlot, NumBuffers, + ppConstantBuffers, + pFirstConstant, + pNumConstants); } @@ -1279,7 +1285,13 @@ namespace dxvk { ID3D11Buffer* const* ppConstantBuffers, const UINT* pFirstConstant, const UINT* pNumConstants) { - Logger::err("D3D11DeviceContext::HSSetConstantBuffers1: not implemented"); + this->SetConstantBuffers( + DxbcProgramType::HullShader, + m_state.vs.constantBuffers, + StartSlot, NumBuffers, + ppConstantBuffers, + pFirstConstant, + pNumConstants); } @@ -1391,7 +1403,13 @@ namespace dxvk { ID3D11Buffer* const* ppConstantBuffers, const UINT* pFirstConstant, const UINT* pNumConstants) { - Logger::err("D3D11DeviceContext::DSSetConstantBuffers1: not implemented"); + this->SetConstantBuffers( + DxbcProgramType::DomainShader, + m_state.vs.constantBuffers, + StartSlot, NumBuffers, + ppConstantBuffers, + pFirstConstant, + pNumConstants); } @@ -1491,7 +1509,13 @@ namespace dxvk { ID3D11Buffer* const* ppConstantBuffers, const UINT* pFirstConstant, const UINT* pNumConstants) { - Logger::err("D3D11DeviceContext::GSSetConstantBuffers1: not implemented"); + this->SetConstantBuffers( + DxbcProgramType::GeometryShader, + m_state.vs.constantBuffers, + StartSlot, NumBuffers, + ppConstantBuffers, + pFirstConstant, + pNumConstants); } @@ -1603,7 +1627,13 @@ namespace dxvk { ID3D11Buffer* const* ppConstantBuffers, const UINT* pFirstConstant, const UINT* pNumConstants) { - Logger::err("D3D11DeviceContext::PSSetConstantBuffers1: not implemented"); + this->SetConstantBuffers( + DxbcProgramType::PixelShader, + m_state.vs.constantBuffers, + StartSlot, NumBuffers, + ppConstantBuffers, + pFirstConstant, + pNumConstants); } @@ -1715,7 +1745,13 @@ namespace dxvk { ID3D11Buffer* const* ppConstantBuffers, const UINT* pFirstConstant, const UINT* pNumConstants) { - Logger::err("D3D11DeviceContext::CSSetConstantBuffers1: not implemented notsupported"); + this->SetConstantBuffers( + DxbcProgramType::ComputeShader, + m_state.vs.constantBuffers, + StartSlot, NumBuffers, + ppConstantBuffers, + pFirstConstant, + pNumConstants); }