|
@@ -19,6 +19,7 @@
|
|
|
|
|
|
// CHANGELOG
|
|
|
// (minor and older changes stripped away, please see git history for details)
|
|
|
+// 2024-12-09: DirectX12: Let user specifies the DepthStencilView format by setting ImGui_ImplDX12_InitInfo::DSVFormat.
|
|
|
// 2024-11-15: DirectX12: *BREAKING CHANGE* Changed ImGui_ImplDX12_Init() signature to take a ImGui_ImplDX12_InitInfo struct. Legacy ImGui_ImplDX12_Init() signature is still supported (will obsolete).
|
|
|
// 2024-11-15: DirectX12: *BREAKING CHANGE* User is now required to pass function pointers to allocate/free SRV Descriptors. We provide convenience legacy fields to pass a single descriptor, matching the old API, but upcoming features will want multiple.
|
|
|
// 2024-10-23: DirectX12: Unmap() call specify written range. The range is informational and may be used by debug tools.
|
|
@@ -72,6 +73,7 @@ struct ImGui_ImplDX12_Data
|
|
|
ID3D12RootSignature* pRootSignature;
|
|
|
ID3D12PipelineState* pPipelineState;
|
|
|
DXGI_FORMAT RTVFormat;
|
|
|
+ DXGI_FORMAT DSVFormat;
|
|
|
ID3D12DescriptorHeap* pd3dSrvDescHeap;
|
|
|
UINT numFramesInFlight;
|
|
|
|
|
@@ -569,6 +571,7 @@ bool ImGui_ImplDX12_CreateDeviceObjects()
|
|
|
psoDesc.SampleMask = UINT_MAX;
|
|
|
psoDesc.NumRenderTargets = 1;
|
|
|
psoDesc.RTVFormats[0] = bd->RTVFormat;
|
|
|
+ psoDesc.DSVFormat = bd->DSVFormat;
|
|
|
psoDesc.SampleDesc.Count = 1;
|
|
|
psoDesc.Flags = D3D12_PIPELINE_STATE_FLAG_NONE;
|
|
|
|
|
@@ -735,6 +738,7 @@ bool ImGui_ImplDX12_Init(ImGui_ImplDX12_InitInfo* init_info)
|
|
|
|
|
|
bd->pd3dDevice = init_info->Device;
|
|
|
bd->RTVFormat = init_info->RTVFormat;
|
|
|
+ bd->DSVFormat = init_info->DSVFormat;
|
|
|
bd->numFramesInFlight = init_info->NumFramesInFlight;
|
|
|
bd->pd3dSrvDescHeap = init_info->SrvDescriptorHeap;
|
|
|
|