feat: implement descriptor heap with thread-safe allocation

D3D12 Resources:
- Add descriptor_handle struct with CPU/GPU handles
- Add descriptor_heap class for descriptor management
- Implement allocate() and free() methods
- Add mutex for thread-safe access
- Support all D3D12 descriptor heap types

D3D12 Core:
- Add device() function to expose main device
- Add release() template function for COM objects

Documentation:
- Add changelog for descriptor heap implementation
- Update D3D12 Wiki with descriptor heap section
- Mark descriptor heap task as completed
This commit is contained in:
SpecialX
2026-03-30 14:03:16 +08:00
parent f1584ec3c6
commit 54916b0ac6
10 changed files with 495 additions and 13 deletions

View File

@@ -421,4 +421,11 @@ render()
// 为下一帧标记并增加围栏值
gfx_command.end_frame();
}
ID3D12Device *const
device()
{
return main_device;
}
}// namespace XEngine::graphics::d3d12::core