渲染管线
1图元
图元就是组成图像的基本单元,比如三维模型中的点、线、面等等,注意图元(entity)与片元(primitive)的区别,片元就是以后的像素点,它比像素多一些位置啊、法向量等属性。逐个片元操作有像素所有权操作(确定目标像素可见还是被一个重叠的窗口盖住了),剪切测试、Alpha测试、模板测试、混合等。而片段(fragments)是指具有相同属性的一小部分像素区域。
一个场景是多个物体或模型的集合,由三角形网格建立一个物体,称之为建模,3d世界最基本的图元就是三角形。Direct3d也支持点图元和线图元。
2. 顶点
D3DFVF(Flexible Vertex Format)灵活顶点格式
D3DFVF_DIFFUSE |
Vertex format includes a diffuse color component. |
DWORD in ARGB order. See D3DCOLOR_ARGB. |
|
D3DFVF_NORMAL |
Vertex format includes a vertex normal vector. This flag cannot be used with the D3DFVF_XYZRHW flag. |
float, float, float |
|
D3DFVF_XYZ |
Vertex format includes the position of an untransformed vertex. This flag cannot be used with the D3DFVF_XYZRHW flag. |
float, float, float. |
|
D3DFVF_XYZRHW |
Vertex format includes the position of a transformed vertex. This flag cannot be used with the D3DFVF_XYZ or D3DFVF_NORMAL flags. |
float, float, float, float. |
|
D3DFVF_TEX0 - D3DFVF_TEX8 |
Number of texture coordinate sets for this vertex. The actual values for these flags are not sequential. |
||
#define Vertex_FVF (D3DFVF_XYZ|D3DFVF_DIFFUSE)//标志顺序要和顶点结构的顺序一样
struct