From ccab8a56eefd210ab5061508f9185a476995b959 Mon Sep 17 00:00:00 2001 From: Philip Rebohle Date: Sat, 11 Aug 2018 22:46:30 +0200 Subject: [PATCH] [d3d10] Implement RS(Set|Get)State --- src/d3d10/d3d10_device.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/d3d10/d3d10_device.cpp b/src/d3d10/d3d10_device.cpp index 0fe3bc90..7cdfa5cb 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(); }