diff --git a/src/d3d10/d3d10_device.cpp b/src/d3d10/d3d10_device.cpp index 0fe3bc903..7cdfa5cb5 100644 --- a/src/d3d10/d3d10_device.cpp +++ b/src/d3d10/d3d10_device.cpp @@ -1125,7 +1125,10 @@ namespace dxvk { void STDMETHODCALLTYPE D3D10Device::RSSetState( ID3D10RasterizerState* pRasterizerState) { - Logger::err("D3D10Device::RSSetState: Not implemented"); + D3D10RasterizerState* d3d10RasterizerState = static_cast(pRasterizerState); + D3D11RasterizerState* d3d11RasterizerState = d3d10RasterizerState ? d3d10RasterizerState->GetD3D11Iface() : nullptr; + + m_context->RSSetState(d3d11RasterizerState); } @@ -1156,7 +1159,10 @@ namespace dxvk { void STDMETHODCALLTYPE D3D10Device::RSGetState( ID3D10RasterizerState** ppRasterizerState) { - Logger::err("D3D10Device::RSGetState: Not implemented"); + ID3D11RasterizerState* d3d11RasterizerState = nullptr; + m_context->RSGetState(&d3d11RasterizerState); + + *ppRasterizerState = static_cast(d3d11RasterizerState)->GetD3D10Iface(); }