From a09ac13f36a1e5837d553dff6cae5e30545469c8 Mon Sep 17 00:00:00 2001 From: baldurk Date: Fri, 8 Jul 2016 20:39:53 +0300 Subject: [PATCH] Unwrap heaps for SetDescriptorHeaps --- renderdoc/driver/d3d12/d3d12_command_list_wrap.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/renderdoc/driver/d3d12/d3d12_command_list_wrap.cpp b/renderdoc/driver/d3d12/d3d12_command_list_wrap.cpp index 40a409318..0f716dc14 100644 --- a/renderdoc/driver/d3d12/d3d12_command_list_wrap.cpp +++ b/renderdoc/driver/d3d12/d3d12_command_list_wrap.cpp @@ -467,8 +467,13 @@ void WrappedID3D12GraphicsCommandList::ExecuteBundle(ID3D12GraphicsCommandList * void WrappedID3D12GraphicsCommandList::SetDescriptorHeaps(UINT NumDescriptorHeaps, ID3D12DescriptorHeap *const *ppDescriptorHeaps) { - RDCUNIMPLEMENTED("SetDescriptorHeaps"); // need to unwrap heaps - m_pReal->SetDescriptorHeaps(NumDescriptorHeaps, ppDescriptorHeaps); + ID3D12DescriptorHeap **heaps = new ID3D12DescriptorHeap *[NumDescriptorHeaps]; + for(UINT i = 0; i < NumDescriptorHeaps; i++) + heaps[i] = Unwrap(ppDescriptorHeaps[i]); + + m_pReal->SetDescriptorHeaps(NumDescriptorHeaps, heaps); + + SAFE_DELETE_ARRAY(heaps); } void WrappedID3D12GraphicsCommandList::SetComputeRootSignature(ID3D12RootSignature *pRootSignature)