diff --git a/renderdoc/driver/d3d11/d3d11_context.cpp b/renderdoc/driver/d3d11/d3d11_context.cpp index c13365338..cd8386f12 100644 --- a/renderdoc/driver/d3d11/d3d11_context.cpp +++ b/renderdoc/driver/d3d11/d3d11_context.cpp @@ -630,6 +630,8 @@ void WrappedID3D11DeviceContext::CleanupCapture() } } + m_MapResourceRecordAllocs.clear(); + if(RenderDoc::Inst().GetCaptureOptions().captureAllCmdLists) return; } diff --git a/renderdoc/driver/d3d11/d3d11_manager.h b/renderdoc/driver/d3d11/d3d11_manager.h index b69eed282..bc4b2dd6f 100644 --- a/renderdoc/driver/d3d11/d3d11_manager.h +++ b/renderdoc/driver/d3d11/d3d11_manager.h @@ -136,8 +136,13 @@ struct D3D11ResourceRecord : public ResourceRecord SCOPED_WRITELOCK(DeferredShadowLock); for(size_t i = 0; i < DeferredShadow.size(); i++) + { if(!DeferredShadow[i].used) + { + DeferredShadow[i].used = true; return i + 1; + } + } ShadowPointerData data = {}; data.used = true;