Fix unwrapping of collection objects during capture

This commit is contained in:
baldurk
2024-05-10 15:50:02 +01:00
parent 369cc37446
commit 464016bc29
2 changed files with 5 additions and 4 deletions
+4 -3
View File
@@ -1232,7 +1232,7 @@ D3D12_UNWRAPPED_STATE_OBJECT_DESC::D3D12_UNWRAPPED_STATE_OBJECT_DESC(
}
unwrappedRootsigObjs.resize(numRoots);
collObjs.resize(numColls);
unwrappedCollObjs.resize(numColls);
rebasedAssocs.reserve(numAssocs);
for(size_t i = 0, r = 0, c = 0; i < subobjects.size(); i++)
@@ -1247,8 +1247,9 @@ D3D12_UNWRAPPED_STATE_OBJECT_DESC::D3D12_UNWRAPPED_STATE_OBJECT_DESC(
else if(subobjects[i].Type == D3D12_STATE_SUBOBJECT_TYPE_EXISTING_COLLECTION)
{
D3D12_EXISTING_COLLECTION_DESC *coll = (D3D12_EXISTING_COLLECTION_DESC *)subobjects[i].pDesc;
collObjs[c] = *coll;
collObjs[c].pExistingCollection = Unwrap(collObjs[c].pExistingCollection);
unwrappedCollObjs[c] = *coll;
unwrappedCollObjs[c].pExistingCollection = Unwrap(unwrappedCollObjs[c].pExistingCollection);
subobjects[i].pDesc = &unwrappedCollObjs[c++];
}
else if(subobjects[i].Type == D3D12_STATE_SUBOBJECT_TYPE_SUBOBJECT_TO_EXPORTS_ASSOCIATION)
{
+1 -1
View File
@@ -647,7 +647,7 @@ private:
rdcarray<D3D12_STATE_SUBOBJECT> subobjects;
rdcarray<D3D12_GLOBAL_ROOT_SIGNATURE> unwrappedRootsigObjs;
rdcarray<D3D12_SUBOBJECT_TO_EXPORTS_ASSOCIATION> rebasedAssocs;
rdcarray<D3D12_EXISTING_COLLECTION_DESC> collObjs;
rdcarray<D3D12_EXISTING_COLLECTION_DESC> unwrappedCollObjs;
};
// expanded version of D3D12_GRAPHICS_PIPELINE_STATE_DESC / D3D12_COMPUTE_PIPELINE_STATE_DESC with