From c2553e0d658e2ff21fe82c8d2ae8a1a1855e373b Mon Sep 17 00:00:00 2001 From: baldurk Date: Wed, 19 Oct 2016 13:35:37 +0200 Subject: [PATCH] Don't fill in register spaces if there's no root signature set --- renderdoc/driver/d3d12/d3d12_replay.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/renderdoc/driver/d3d12/d3d12_replay.cpp b/renderdoc/driver/d3d12/d3d12_replay.cpp index 4782eef31..f43799c9b 100644 --- a/renderdoc/driver/d3d12/d3d12_replay.cpp +++ b/renderdoc/driver/d3d12/d3d12_replay.cpp @@ -937,7 +937,8 @@ void D3D12Replay::MakePipelineState() state.rootSig = rm->GetOriginalID(rs.compute.rootsig); - FillRegisterSpaces(rs.compute, state.m_CS.Spaces, D3D12_SHADER_VISIBILITY_ALL); + if(rs.compute.rootsig != ResourceId()) + FillRegisterSpaces(rs.compute, state.m_CS.Spaces, D3D12_SHADER_VISIBILITY_ALL); } else if(pipe) { @@ -967,7 +968,8 @@ void D3D12Replay::MakePipelineState() dst.BindpointMapping = sh->GetMapping(); } - FillRegisterSpaces(rs.graphics, dst.Spaces, visibility[stage]); + if(rs.graphics.rootsig != ResourceId()) + FillRegisterSpaces(rs.graphics, dst.Spaces, visibility[stage]); } state.rootSig = rm->GetOriginalID(rs.graphics.rootsig);