mirror of https://github.com/PCSX2/pcsx2.git
gsdx-d3d11: Cache rt depth stencil on m_state
Cache the depth stencil in addition to color rt. This will allow us to check for depth stencil equality on slot 4.
This commit is contained in:
parent
946e6046b3
commit
57824261c6
|
@ -1309,8 +1309,9 @@ void GSDevice11::OMSetRenderTargets(GSTexture* rt, GSTexture* ds, const GSVector
|
||||||
if(m_state.rt_view != rtv || m_state.dsv != dsv)
|
if(m_state.rt_view != rtv || m_state.dsv != dsv)
|
||||||
{
|
{
|
||||||
m_state.rt_view = rtv;
|
m_state.rt_view = rtv;
|
||||||
m_state.rt_texture = (GSTexture11*)rt;
|
m_state.rt_texture = static_cast<GSTexture11*>(rt);
|
||||||
m_state.dsv = dsv;
|
m_state.dsv = dsv;
|
||||||
|
m_state.rt_ds = static_cast<GSTexture11*>(ds);
|
||||||
|
|
||||||
m_ctx->OMSetRenderTargets(1, &rtv, dsv);
|
m_ctx->OMSetRenderTargets(1, &rtv, dsv);
|
||||||
}
|
}
|
||||||
|
@ -1349,6 +1350,7 @@ void GSDevice11::OMSetRenderTargets(const GSVector2i& rtsize, int count, ID3D11U
|
||||||
|
|
||||||
m_state.rt_view = NULL;
|
m_state.rt_view = NULL;
|
||||||
m_state.rt_texture = NULL;
|
m_state.rt_texture = NULL;
|
||||||
|
m_state.rt_ds = NULL;
|
||||||
m_state.dsv = NULL;
|
m_state.dsv = NULL;
|
||||||
|
|
||||||
if(m_state.viewport != rtsize)
|
if(m_state.viewport != rtsize)
|
||||||
|
|
|
@ -81,6 +81,7 @@ class GSDevice11 : public GSDeviceDX
|
||||||
float bf;
|
float bf;
|
||||||
ID3D11RenderTargetView* rt_view;
|
ID3D11RenderTargetView* rt_view;
|
||||||
GSTexture11* rt_texture;
|
GSTexture11* rt_texture;
|
||||||
|
GSTexture11* rt_ds;
|
||||||
ID3D11DepthStencilView* dsv;
|
ID3D11DepthStencilView* dsv;
|
||||||
} m_state;
|
} m_state;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue