渲染流水线
输入装配器阶段
从显存中读取几何数据(顶点和索引),再装配为几何图元。
图元拓扑
作用:
解释顶点缓冲区内数据的方式。
如何配置图元拓扑的方式?
通过命令列表的接口修改。
1.点列表(每个顶点会被绘制成单个顶点)
2. 线列表(两个点为一组组成不连续的线段)
3. 线条带(连续两个点组成连续的线段)
4. 三角形带(连续的三个顶点形成一个三角面n个顶点可生成n-2)
5. 三角形列表(3个点为一组绘制成单独的三角形)
顶点缓冲区与索引缓冲区
对于三角形列表,一个三角形有三个邻接三角形,在几何着色器中需要访问它们实现某些算法,为了几何着色器获得这些信息,需要顶点缓冲区与index buffer将它们随着主三角形一起提交到流水线计算。(注意这些三角形只是为了计算,并不会被绘制)
控制点面片列表 14章
索引
绕序:绘制三角形的顺序 5.10.2
根据顶点列表设置哪些点可以组成三角形,以此形成索引列表。(顶点列表中的同一点可能被重复使用)
顶点缓冲区的作用:将顶点与渲染流水线相绑定,它用连续内存存储了一系列的点。
剔除带来的问题:
绘制几何体
顶点与输入布局
自定义结构体描述一个顶点信息(position, color, normal, uv)。
需要一个处理顶点结构体的函数,D3D将它称为输入布局描述。(功能是作为d3d了解我们自定义数据结构的桥梁)