Module: wine Branch: master Commit: d42714814dfcde422f772344e9e7dd55628de885 URL: http://source.winehq.org/git/wine.git/?a=commit;h=d42714814dfcde422f772344e9...
Author: Józef Kucia jkucia@codeweavers.com Date: Fri Nov 6 01:28:24 2015 +0100
d3d11: Implement d3d11_immediate_context_RSSetScissorRects().
Signed-off-by: Józef Kucia jkucia@codeweavers.com Signed-off-by: Henri Verbeet hverbeet@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/d3d11/device.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c index 5e9e26d..936fd36 100644 --- a/dlls/d3d11/device.c +++ b/dlls/d3d11/device.c @@ -539,7 +539,19 @@ static void STDMETHODCALLTYPE d3d11_immediate_context_RSSetViewports(ID3D11Devic static void STDMETHODCALLTYPE d3d11_immediate_context_RSSetScissorRects(ID3D11DeviceContext *iface, UINT rect_count, const D3D11_RECT *rects) { - FIXME("iface %p, rect_count %u, rects %p stub!\n", iface, rect_count, rects); + struct d3d_device *device = device_from_immediate_ID3D11DeviceContext(iface); + + TRACE("iface %p, rect_count %u, rects %p.\n", iface, rect_count, rects); + + if (rect_count > 1) + FIXME("Multiple scissor rects not implemented.\n"); + + if (!rect_count) + return; + + wined3d_mutex_lock(); + wined3d_device_set_scissor_rect(device->wined3d_device, rects); + wined3d_mutex_unlock(); }
static void STDMETHODCALLTYPE d3d11_immediate_context_CopySubresourceRegion(ID3D11DeviceContext *iface,