DX11多线程渲染
1、DirectX从 DirectX 11 开始正式支持在多线程中调用 Direct3D* (D3D) 应用程序编程接口 (API)。
2、DirectX 11 多线程支持两种类型的设备上下文:立即上下文和延迟上下文。
3、不同的延迟上下文可以同时用于不同的线程,生成要在直接上下文中执行的命令列表。
4、这种多线程策略允许将复杂场景分解为并发任务。

1、尽管 D3D 运行时支持 DirectX 11 多线程,但其硬件加速是可选的。
2、借助硬件加速支持,部分驱动程序负载可以与命令列表构建一起并行化。
3、下图 显示了不同图形设备中的硬件加速能力。尽管所有图形设备都支持“Driver Concurrent Creates”,但只有 NVIDIA* 图形支持“Driver Command Lists”。

DX12多线程渲染
1、通过显着减少 API 调用开销,DirectX 12 多线程得到了很大改进。
2、它消除了 DirectX 11 的设备上下文概念,而是使用命令列表来调用 D3D API。
3、通过命令队列将命令列表提交给 GPU
4、所有 DirectX 12 图形硬件都支持 DirectX 12 多线程的硬件加速。

网友评论