𝔖 Scriptorium
✦   LIBER   ✦

📁

Direct3D 12编程指南

✍ Scribed by 张羽乔


Publisher
人民邮电出版社
Year
2017
Tongue
Chinese
Leaves
258
Category
Library

⬇  Acquire This Volume

No coin nor oath required. For personal study only.

✦ Table of Contents


封面
异步社区电子书
内 容 提 要
前言
目录
第1章 开始前的准备
1.1 创建DirectX 12项目
1.1.1 安装Windows 10和Visual Studio 2015
1.1.2 新建解决方案和项目
1.1.3 配置使用Windows 10 SDK
1.1.4 新建main.cpp
1.1.5 新建rendermain.cpp
1.1.6 链接dxgi.lib和d3d12.lib库
1.1.7 生成并调试
1.2 COM简介
1.2.1 构建分布式系统
1.2.2 接口和实现的彻底分离
章末小结
第2章 开始Direct3D 12编程
2.1 设备、命令队列和交换链
2.1.1 启用调试层
2.1.2 创建设备
DXGI
2.1.3 创建命令队列
1.pDesc
2.riid和ppvObject
2.1.4 创建交换链
1.pCommandQueue
2.pDesc
3.ppSwapChain
2.1.5 呈现交换链缓冲
2.2 渲染到交换链缓冲前的准备
2.2.1 渲染到交换链缓冲的两种方式
2.2.2 创建渲染目标视图
1.创建描述符堆
2.获取交换链缓冲
3.创建渲染目标视图
2.2.3 创建命令分配器和命令列表
1.创建命令分配器
2.创建命令列表
2.3 以归零方式渲染到交换链缓冲
2.3.1 转换资源屏障
1.添加资源屏障命令
2.添加归零命令
2.3.2 执行命令列表
2.3.3 小结
2.4 以绘制方式渲染到交换链缓冲
2.4.1 图形流水线初探
1.输入装配(Input Assembler)阶段
2.顶点着色器(Vertex Shader)阶段
3.光栅化(Rasterizer)阶段
4.像素着色器(Pixel Shader)阶段
5.输出混合(Output Merger)阶段
2.4.2 绘制一个三角形
1.零碎的API
2.根签名
3.图形流水线状态对象
4.顶点着色器和像素着色器
5.小结
章末小结
第3章 多线程
3.1 命令队列
3.1.1 不同命令之间的原子性
3.1.2 同一命令内部的并发性
3.2 围栏
1.InitialValue
2.Flags
3.riid和ppvObject
3.3 命令分配器和命令列表
3.3.1 复习并深入
3.3.2 捆绑包
3.4 资源屏障
3.4.1 转换资源屏障
1.子资源的权限
2.转换资源屏障对并发性的控制
3.分离资源屏障
4.提升和衰退
3.4.2 别名资源屏障
1.pResourceBefore
2.pResourceAfter
3.4.3 无序访问视图资源屏障
pResource
3.5 Draw Call
章末小结
第4章 资源
4.1 资源的结构
4.1.1 逻辑结构
1.资源娄型
2.纹理的平面数
4.1.2 物理结构
1.内存布局
2.DDS文件布局
4.2 资源的创建
4.2.1 GPU架构
1.NUMA
2.NCC-UMA
3.CC-UMA
4.2.2 资源堆
1.pDesc
2.riid和ppvObject
4.2.3 资源
1.pDesc
2.pHeap
3.HeapOffset
4.InitialState
5.pOptimizedClearValue
6.riid和ppvObject
4.3 CPU访问资源
4.3.1 概念
1.映射
2.反映射
4.3.2 加载DDS文件(一)
4.4 GPU访问资源
4.4.1 复制—加载DDS文件(二)
4.4.2 解析—MSAA
4.5 图形流水线访问资源
4.5.1 索引缓冲
1.Format
2.BufferLocation
3.SizeInBytes
4.5.2 顶点缓冲
1.添加自定义成员
2.顶点缓冲视图
3.自定义成员的数据类型和地址
4.5.3 流输出缓冲
1.设置根答名标志
2.流输出缓冲视图
3.设置图形流水线状态
4.5.4 描述符堆和描述符
DescriptorHeapType
4.5.5 根签名再探
1.常量缓冲对象
2.2D纹理对象
3.采样器状态对象
4.静态采样器状态
5.采样器状态区间
章末小结
第5章 图形流水线再探
5.1 输出混合阶段
5.1.1 深度阶段
1.深度测试(Depth Test)
2.深度写入(Depth Write)
3.前深度模板测试(Early Depth Stencil Test)
5.1.2 模板阶段
1.模板测试(Depth Test)
2.模板操作(Stencil Operator)
5.1.3 融合阶段
1.融合操作(Blend Operator)
2.融合写入(Blend Write)
5.2 几何着色器阶段
5.3 细分阶段
5.3.1 外壳着色器阶段
5.3.2 细分阶段
1.等值线域
2.四边形域
3.三角形域
5.3.3 域着色器阶段
5.3.4 小结
1.创建外壳着色器的源文件HS.hlsl
2.创建域着色器的源文件DS.hlsl
章末小结
第6章 计算流水线
6.1 计算流水线状态
1.根签名
2.计算流水线状态对象
6.2 计算流水线启动
6.3 无序访问资源视图
1.pResource
2.pCounterResource
3.pDesc
4.DestDescriptor
6.4 二次贝塞尔曲线
章末小结
第7章 GPU内部传参
7.1 谓词
1.pBuffer和AlignedBufferOffset
2.Operation
7.2 间接执行
7.2.1 创建命令签名
1.pDesc
2.pRootSignature
3.riid和ppvObject
7.2.2 添如间接执行命令
1.pD3D12CommandSignature
2.pCountBuffer、MaxCommandCount和CountBufferOffset
3.pArgumentBuffer和ArgumentBufferOffset
7.3 查询
1.创建查询堆
2.时间戳查询
章末小结
第8章 字体引擎
8.1 TrueType字体
8.2 绘制字形
章末小结
欢迎来到异步社区!
封底


📜 SIMILAR VOLUMES


Kotlin编程权威指南
✍ 乔希•斯基恩; 戴维•格林哈尔希 📂 Library 📅 2019 🏛 人民邮电出版社 🌐 Chinese

<p>本书由知名技术培训机构Big Nerd Ranch打造,秉承其一贯的简洁、实用的写作风格。Kotlin已成为Android官方支持的开发语言,但它具有平台独立性,亦可用于开发各种类型的原生应用。本书将带领你通过搭建书中的示例项目来循序渐进地掌握Kotlin 的用法。首先使用IntelliJ IDEA搭建沙盒项目,帮助你熟悉开发环境。接下来介绍Kotlin编程知识,从较为基础的变量、常量、类型等讲起,逐渐深入到继承、对象和抽象类。最后是函数式编程、Kotlin与Java互操作、构建Android应用等较复杂的内容。每一章都配有习题,帮你温故知新,巩固所学知识。</p> <p>● 源自大名

二级Python编程指南
✍ 娄岩、张志常、曹鹏 📂 Library 📅 2019 🏛 清华大学出版社 🌐 Chinese

本书以实用为导向,从基础概念、语法结构、应用实例、开发技巧、安装部署等方面深入浅出的介绍了Python的程序设计方法以及项目实现流程。 全书共有13章,分别是Python概述、语法基础、控制语句、函数、文件、模块、面向对象和程序设计、图形界面设计、数据库应用、网络及多线程、爬虫、图像处理、可视化应用、数据挖掘和XML。