mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-08-07 23:31:13 +00:00
Don't add duplicate derived resources
This commit is contained in:
@@ -2704,6 +2704,9 @@ void WrappedID3D11Device::DerivedResource(ID3D11DeviceChild *parent, ResourceId
|
||||
{
|
||||
ResourceId parentId = GetResourceManager()->GetOriginalID(GetIDForDeviceChild(parent));
|
||||
|
||||
if(GetReplay()->GetResourceDesc(parentId).derivedResources.contains(child))
|
||||
return;
|
||||
|
||||
GetReplay()->GetResourceDesc(parentId).derivedResources.push_back(child);
|
||||
GetReplay()->GetResourceDesc(child).parentResources.push_back(parentId);
|
||||
}
|
||||
|
||||
@@ -3914,6 +3914,9 @@ void WrappedID3D12Device::DerivedResource(ID3D12DeviceChild *parent, ResourceId
|
||||
|
||||
void WrappedID3D12Device::DerivedResource(ResourceId parent, ResourceId child)
|
||||
{
|
||||
if(GetReplay()->GetResourceDesc(parent).derivedResources.contains(child))
|
||||
return;
|
||||
|
||||
GetReplay()->GetResourceDesc(parent).derivedResources.push_back(child);
|
||||
GetReplay()->GetResourceDesc(child).parentResources.push_back(parent);
|
||||
}
|
||||
|
||||
@@ -3236,6 +3236,9 @@ void WrappedOpenGL::DerivedResource(GLResource parent, ResourceId child)
|
||||
{
|
||||
ResourceId parentId = GetResourceManager()->GetOriginalID(GetResourceManager()->GetResID(parent));
|
||||
|
||||
if(GetReplay()->GetResourceDesc(parentId).derivedResources.contains(child))
|
||||
return;
|
||||
|
||||
GetReplay()->GetResourceDesc(parentId).derivedResources.push_back(child);
|
||||
GetReplay()->GetResourceDesc(child).parentResources.push_back(parentId);
|
||||
}
|
||||
|
||||
@@ -2395,6 +2395,9 @@ void WrappedVulkan::DerivedResource(ResourceId parentLive, ResourceId child)
|
||||
{
|
||||
ResourceId parentId = GetResourceManager()->GetOriginalID(parentLive);
|
||||
|
||||
if(GetReplay()->GetResourceDesc(parentId).derivedResources.contains(child))
|
||||
return;
|
||||
|
||||
GetReplay()->GetResourceDesc(parentId).derivedResources.push_back(child);
|
||||
GetReplay()->GetResourceDesc(child).parentResources.push_back(parentId);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user