mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-05-04 09:00:44 +00:00
Add D3D12 driver support for ReloadShaderDebugInformation()
This commit is contained in:
@@ -637,6 +637,24 @@ void WrappedID3D12PipelineState::ShaderEntry::BuildReflection()
|
||||
m_Details->resourceId = GetResourceID();
|
||||
}
|
||||
|
||||
void WrappedID3D12PipelineState::ShaderEntry::ReloadShaderDebugInformation()
|
||||
{
|
||||
for(auto it = m_Shaders.begin(); it != m_Shaders.end(); ++it)
|
||||
{
|
||||
ShaderEntry *shad = it->second;
|
||||
if(ResourceIDGen::IsReplayOnlyID(shad->GetResourceID()))
|
||||
continue;
|
||||
shad->Reload();
|
||||
}
|
||||
}
|
||||
|
||||
void WrappedID3D12PipelineState::ShaderEntry::Reload()
|
||||
{
|
||||
m_Built = false;
|
||||
*m_Details = ShaderReflection();
|
||||
SAFE_DELETE(m_DXBCFile);
|
||||
}
|
||||
|
||||
rdcpair<uint32_t, uint32_t> FindMatchingRootParameter(const D3D12RootSignature &sig,
|
||||
D3D12_SHADER_VISIBILITY visibility,
|
||||
D3D12_DESCRIPTOR_RANGE_TYPE rangeType,
|
||||
|
||||
@@ -945,6 +945,8 @@ public:
|
||||
return false;
|
||||
}
|
||||
|
||||
static void ReloadShaderDebugInformation();
|
||||
|
||||
static void GetReflections(rdcarray<const ShaderReflection *> &refls)
|
||||
{
|
||||
refls.clear();
|
||||
@@ -1010,6 +1012,7 @@ public:
|
||||
|
||||
private:
|
||||
void BuildReflection();
|
||||
void Reload();
|
||||
|
||||
DXBCKey m_Key;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user