mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-05-16 06:51:09 +00:00
If there are no UAVs bound, don't try to set invalid UAVStartSlot
This commit is contained in:
@@ -539,15 +539,24 @@ void D3D11RenderState::ApplyState(WrappedID3D11DeviceContext *context) const
|
||||
context->OMSetDepthStencilState(OM.DepthStencilState, OM.StencRef);
|
||||
|
||||
if(context->IsFL11_1())
|
||||
{
|
||||
context->OMSetRenderTargetsAndUnorderedAccessViews(
|
||||
RDCMIN(OM.UAVStartSlot, (UINT)D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT), OM.RenderTargets,
|
||||
OM.DepthView, OM.UAVStartSlot, D3D11_1_UAV_SLOT_COUNT - OM.UAVStartSlot, OM.UAVs,
|
||||
UAV_keepcounts);
|
||||
}
|
||||
else
|
||||
context->OMSetRenderTargetsAndUnorderedAccessViews(
|
||||
RDCMIN(OM.UAVStartSlot, (UINT)D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT), OM.RenderTargets,
|
||||
OM.DepthView, OM.UAVStartSlot, D3D11_PS_CS_UAV_REGISTER_COUNT - OM.UAVStartSlot, OM.UAVs,
|
||||
UAV_keepcounts);
|
||||
{
|
||||
if(OM.UAVStartSlot == D3D11_PS_CS_UAV_REGISTER_COUNT)
|
||||
context->OMSetRenderTargets(
|
||||
RDCMIN(OM.UAVStartSlot, (UINT)D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT), OM.RenderTargets,
|
||||
OM.DepthView);
|
||||
else
|
||||
context->OMSetRenderTargetsAndUnorderedAccessViews(
|
||||
RDCMIN(OM.UAVStartSlot, (UINT)D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT), OM.RenderTargets,
|
||||
OM.DepthView, OM.UAVStartSlot, D3D11_PS_CS_UAV_REGISTER_COUNT - OM.UAVStartSlot, OM.UAVs,
|
||||
UAV_keepcounts);
|
||||
}
|
||||
|
||||
context->SetPredication(Predicate, PredicateValue);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user