fix(d3d12): 修复 Surface 重复释放问题,完善容器文档
- 改用 utl::free_list 管理 surface,避免 vector 扩容导致的资源重复释放 - 为 d3d12_surface 添加移动语义,禁用拷贝构造 - 添加撕裂检测支持(DXGI_PRESENT_ALLOW_TEARING) - 为 FreeList.h 和 Vector.h 添加完整的 Doxygen 中文注释 - 更新 D3D12 学习 Wiki,添加 free_list 章节
This commit is contained in:
@@ -22,12 +22,6 @@ bool initialize();
|
||||
* @details 调用 Direct3D 12 设备的关闭函数,释放所有资源
|
||||
*/
|
||||
void shutdown();
|
||||
/**
|
||||
* @brief 渲染 Direct3D 12 核心功能
|
||||
* @details 调用 Direct3D 12 设备的渲染函数,渲染当前渲染表面
|
||||
*/
|
||||
void render();
|
||||
|
||||
|
||||
/**
|
||||
* @brief 立即释放 DirectX COM 对象并将指针置空
|
||||
@@ -104,6 +98,12 @@ DXGI_FORMAT default_render_target_format();
|
||||
*/
|
||||
void set_deferred_release_flag();
|
||||
|
||||
surface create_surface(platform::window window);
|
||||
void remove_surface(surface_id id);
|
||||
void resize_surface(surface_id id, u32 width, u32 height);
|
||||
u32 surface_width(surface_id id);
|
||||
u32 surface_height(surface_id id);
|
||||
void render_surface(surface_id id);
|
||||
|
||||
|
||||
}// namespace XEngine::graphics::d3d12::core
|
||||
Reference in New Issue
Block a user