Direct3D 12 编程指南

Direct3D 12 提供了一个 API 和平台,使应用能够利用配备一个或多个 Direct3D 12 兼容 GPU 的电脑的图形和计算功能。

在本部分中

主题 描述
什么是 Direct3D 12? DirectX 12 引入了 Direct3D 的下一个版本,即 DirectX 的核心 3D 图形 API。 此版本的 Direct3D 比任何以前的版本更快、更高效。 Direct3D 12 可实现更丰富的场景、更多的对象、更复杂的效果,以及充分利用现代 GPU 硬件。
Direct3D 12 中的新增功能 介绍最新 SDK 版本提供的最重要新文档。
了解 Direct3D 12 若要为 Windows 10 和 Windows 10 移动版编写 3D 游戏和应用,必须了解 Direct3D 12 技术的基础知识,以及如何准备在游戏和应用中使用它。
Direct3D 12 中的 工作提交 为了提高 Direct3D 应用的 CPU 效率,Direct3D 12 不再支持与设备关联的即时上下文。 相反,应用记录并提交 命令列表,其中包含绘图和资源管理调用。 这些命令列表可以从多个线程提交到一个或多个命令队列,这些命令队列管理命令的执行。 此基本更改通过允许应用预先计算呈现工作以供以后重复使用来提高单线程效率,并通过将呈现工作分散到多个线程中来利用多核系统。
Direct3D 12 中的 资源绑定 绑定是将资源对象链接到图形管道的着色器的过程。
Direct3D 12 中的 内存管理 迁移到 D3D12 涉及对内存驻留进行适当的同步和管理。 管理内存驻留意味着必须完成更多的同步。 本部分介绍堆和缓冲区中的内存管理策略和子分配。
多适配器系统 介绍 Direct3D 12 中对安装了多个适配器的系统的支持,涵盖应用程序显式面向多个 GPU 适配器的方案,以及驱动程序代表应用程序隐式使用多个 GPU 适配器的方案。
多引擎同步 本主题讨论同步对大多数新式 GPU 中找到的多个独立引擎的访问。
呈现 本部分包含有关呈现 Direct3D 12 新增功能的信息(以及 Direct3D 11.3)。
计数器、查询和性能度量 以下部分介绍用于性能测试和改进的功能,例如查询、计数器、计时和谓词。
使用 Direct3D 11、Direct3D 10 和 Direct2D 本部分介绍与早期版本的 Direct3D 和 Direct2D、Direct3D 11on12 API 以及从 Direct3D 11 到 Direct3D 12 的移植指南的互作技术。
工作示例 工作示例可供下载,其中显示了 Direct3D 12 许多功能的用法。
D3D12 代码演练 本部分提供示例方案的代码。 许多演练提供了有关将编码添加到基本示例所需的代码的详细信息,以避免对每个方案重复基本组件代码。
使用 Direct3D 12 调试和诊断 包括介绍如何通过基于 GPU 的验证(GBV)充分利用 Direct3D 12 调试层以及如何使用设备删除扩展数据(DRED)的主题。