1 清单
1.1 核心修改
1. 支持dxc单独编译。支持运行单独加载dx11/dx12 shader blob。【82f97665】【36add27】
2. GPU资源接管。【3182b8e6】
2.1. 接入D3D12MA。支持启动参数切换开关。
2.2. 接管default/upload heap、placed/committed resource决策。
2.3. 接管small texture决策。
2.4. 接管scratch/staging buffer。梳理texture/buffer sync/async upload。
3. 封装ID3D12Resource。【ad51dee0】
3.1. 去除与之相关的global hash set 同步锁。
3.2. resource residency。接入微软官方residency数据结构。
3.3. resource mark access。
4. 新版resource barrier系统。【ad51dee0】
4.1. 实现于commandlist上,去掉全局usage锁。
4.2. 支持打包resource barrier统一flush。
5. Graphics Double Buffer封装。【bee0f1e7】
5.1. 无锁的double buffer resource结构,为后续改三线程提供工具。
5.2. 修复graphcis jobs导致的skin mesh render buffer同步问题。
6. read back buffer pool。【ad51dee0】
6.1. read back buffer实现真正有用的pool复用,避免每帧创建资源。
1.2 其它修改
- 支持启动参数切换dx11/dx12。
- 支持dx12 shader feature宏。
- 支持dx12 validtation info打印/拦截。
- 日常crash修复。
- 原理与最佳实践调研。
- 分析graphcis j