Direct3D 12 Programming Guides
Visual Studio 2015 Github d3d12book 创建新的项目
通过Direct3D这种底层图形应用程序编程接口( Application Programming Interface, API), 即可在应用程序中对图形处理器( Graphics Processing Unit, GPU )进行控制和编程
render target 将像素绘制到特定的缓冲区
GPU 支持 Direct3D,应用程序控制 Direct3D
Component Object Model ,COM
智能释放
front buffer, back buffer
presenting 呈现
swap chain 前后缓冲区交换
double buffering, triple buffering
texture texel, pixel 纹理,纹素,像素,像素专门指颜色
范围 0 ~ 1
view frustum 视锥体
depth buffer 深度缓冲
z - buffer
draw call
bind, link
descriptor 资源描述符,对再 GPU 内资源描述的轻量级结构
descriptor heap 描述符堆
antialiasing 反走样
supersampling SSAA 超采样
resolve, downsample 降采样
MSAA 多重采样
利用 Direct3D 进行多重采样
程序应当避免在短时间内于显存中交换进出相同的资源,这会引起过高的开销。最理想的情况是,所清出的资源在
CPU 和 GPU 之间的交互
CPU 和 GPU 应道并行工作,少同步
command queue,命令队列,环形缓冲区 ring buffer
command list 命令列表
调用ExecuteCommandLists方法才会将命令真正地送入命令队列,供GPU在合适的时机处理
CPU 与 GPU 之间的同步
CPU 和 GPU 使用同个资源冲突,需要
fence point 围栏点
flushing the command queue 刷新命令队列,cpu 强制等待 gpu 执行完所有命令队列内的命令
resource hard 资源冒险,
特定类型的资源才能执行特定类型的操作,
transition resource barrier 转换资源屏障
调试 Direct3D 应用程序