编辑推荐
适读人群 :面向Windows平台上的3D开发人员。 全面讲解了 Direct3D 12 新版本的流水线状态对象、根签名、捆绑包、命令列表、 资源堆和屏障等新功能。
以实例程序演示了 Direct3D 12 的渲染流水线和计算流水线,帮助读者透彻掌握 Direct3D 12的底层实现,为读者今后用 HLSL5.1 编写着色器打下扎实的基础。
综合应用部分将本书各章中的知识巧妙地结合在一起,便于学以致用。
内容简介
Direct 3D 12编程指南 系统介绍了Direct3D 12各方面的知识,包括开始前的准备工作,如何创建DirectX 12项目,编程后的步骤,以及关于多线程、命令队列、资源结构、图形流水线、计算流水线和GPU内部传参等内容,zui后讲解了一个基于Direct3D 12实现的字体引擎。Direct 3D 12编程指南 重点介绍Direct3D 12的知识,而且减少对计算机图形学中通用知识的介绍,因为读者完全可以在其他的书中得到这些知识。
Direct 3D 12编程指南 的适用对象为面向Windows平台的3D开发人员。
作者简介
作者张羽乔,曾先后供职于盛大和腾讯游戏开发部门,现于金山西山居从事剑网三重制版的自研引擎的开发,在Direct3D领域有着丰富的经验。
目录
目 录
第1章 开始前的准备 1
1.1 创建DirectX 12项目 1
1.1.1 安装Windows 10和
Visual Studio 2015 1
1.1.2 新建解决方案和项目 1
1.1.3 配置使用Windows 10 SDK 3
1.1.4 新建main.cpp 4
1.1.5 新建rendermain.cpp 7
1.1.6 链接dxgi.lib和d3d12.lib库 7
1.1.7 生成并调试 8
1.2 COM简介 9
1.2.1 构建分布式系统 9
1.2.2 接口和实现的彻底分离 10
章末小结 10
第2章 开始Direct3D 12编程 11
2.1 设备、命令队列和交换链 11
2.1.1 启用调试层 11
2.1.2 创建设备 11
2.1.3 创建命令队列 13
2.1.4 创建交换链 15
2.1.5 呈现交换链缓冲 18
2.2 渲染到交换链缓冲前的准备 19
2.2.1 渲染到交换链缓冲的两种方式 19
2.2.2 创建渲染目标视图 20
2.2.3 创建命令分配器和命令列表 22
2.3 以归零方式渲染到交换链缓冲 24
2.3.1 转换资源屏障 24
2.3.2 执行命令列表 26
2.3.3 小结 27
2.4 以绘制方式渲染到交换链缓冲 28
2.4.1 图形流水线初探 28
2.4.2 绘制一个三角形 44
章末小结 68
第3章 多线程 69
3.1 命令队列 69
3.1.1 不同命令之间的原子性 69
3.1.2 同一命令内部的并发性 70
3.2 围栏 71
3.3 命令分配器和命令列表 73
3.3.1 复习并深入 73
3.3.2 捆绑包 75
3.4 资源屏障 78
3.4.1 转换资源屏障 79
3.4.2 别名资源屏障 82
3.4.3 无序访问视图资源屏障 83
3.5 Draw Call 83
章末小结 84
第4章 资源 85
4.1 资源的结构 85
4.1.1 逻辑结构 85
4.1.2 物理结构 89
4.2 资源的创建 95
4.2.1 GPU架构 95
4.2.2 资源堆 97
4.2.3 资源 101
4.3 CPU访问资源 105
4.3.1 概念 105
4.3.2 加载DDS文件(一) 107
4.4 GPU访问资源 110
4.4.1 复制—加载DDS
文件(二) 110
4.4.2 解析—MSAA 112
4.5 图形流水线访问资源 115
4.5.1 索引缓冲 115
4.5.2 顶点缓冲 118
4.5.3 流输出缓冲 125
4.5.4 描述符堆和描述符 133
4.5.5 根签名再探 136
章末小结 157
第5章 图形流水线再探 158
5.1 输出混合阶段 158
5.1.1 深度阶段 160
5.1.2 模板阶段 163
5.1.3 融合阶段 167
5.2 几何着色器阶段 173
5.3 细分阶段 178
5.3.1 外壳着色器阶段 179
5.3.2 细分阶段 181
5.3.3 域着色器阶段 184
5.3.4 小结 185
章末小结 190
第6章 计算流水线 191
6.1 计算流水线状态 191
6.2 计算流水线启动 194
6.3 无序访问资源视图 195
6.4 二次贝塞尔曲线 197
章末小结 203
第7章 GPU内部传参 204
7.1 谓词 204
7.2 间接执行 206
7.2.1 创建命令签名 206
7.2.2 添如间接执行命令 209
7.3 查询 212
章末小结 219
第8章 字体引擎 220
8.1 TrueType字体 220
8.2 绘制字形 225
章末小结 247
Direct 3D 12编程指南 下载 mobi epub pdf txt 电子书 格式