D3DHAL_DP2INDEXEDLINELIST结构(d3dhal.h)

D3DHAL_DP2COMMAND 结构的 bCommand 成员设置为D3DDP2OP_INDEXEDLINELIST时,D3dDrawPrimitives2 回调从命令缓冲区分析D3DHAL_DP2INDEXEDLINELIST,并且用于使用顶点索引呈现线条。

语法

typedef struct _D3DHAL_DP2INDEXEDLINELIST {
  WORD wV1;
  WORD wV2;
} D3DHAL_DP2INDEXEDLINELIST, *LPD3DHAL_DP2INDEXEDLINELIST;

成员

wV1

指定顶点缓冲区中的索引,标识行的第一个终结点。

wV2

指定顶点缓冲区中的索引,标识行的第二终结点。

言论

D3dDrawPrimitives2 应处理命令缓冲区中的索引(wPrimitiveCount * 2)索引,实际上处理 wPrimitiveCount D3DHAL_DP2INDEXEDLINELIST 结构。 wPrimitiveCount 的值在D3DHAL_DP2COMMAND结构中指定。

驱动程序应从顶点缓冲区处理总共 (wPrimitiveCount * 2) 顶点,每行两个顶点。 呈现的行序列为 (wV1₀, wV2₀), (wV1₁, wV2₁), ..., (wV1n,wV2n), 其中 n 等于 (wPrimitiveCount- 1)。 驱动程序应根据当前命令解释顶点缓冲区索引,如下所示:

  • 当命令D3DDP2OP_INDEXEDLINELIST时,顶点缓冲区索引相对于由 D3DHAL_DRAWPRIMITIVES2DATA 结构 dwVertexOffset 成员指定的顶点缓冲区偏移量。
  • 当命令D3DDP2OP_INDEXEDLINELIST2时,D3DHAL_DP2STARTVERTEX 结构紧跟在命令缓冲区中的D3DHAL_DP2INDEXEDLINELIST结构之前。 顶点缓冲区索引相对于由 dwVertexOffset 指定的顶点缓冲区偏移量 加上从 D3DHAL_DP2STARTVERTEX 结构的 wVStart 成员获取的基本偏移量。
下图显示了包含D3DDP2OP_INDEXEDLINELIST命令和两个D3DHAL_DP2INDEXEDLINELIST结构的示例命令缓冲区的一部分。 驱动程序应使用以下四个顶点从顶点缓冲区绘制两条线:(v[0]、v[4])、(v[5]、v[6])。 图显示了一个命令缓冲区,其中D3DDP2OP_INDEXEDLINELIST命令和两个D3DHAL_DP2INDEXEDLINELIST结构 类似,下图显示了包含D3DDP2OP_INDEXEDLINELIST2命令、D3DHAL_DP2STARTVERTEX偏移量和两个D3DHAL_DP2INDEXEDLINELIST结构的示例命令缓冲区的一部分。 驱动程序应处理顶点缓冲区中的四个顶点,呈现由 (v[3], v[7]), (v[8], v[9] 定义的两行)。 图显示了具有D3DDP2OP_INDEXEDLINELIST2命令的命令缓冲区、D3DHAL_DP2STARTVERTEX偏移量和两个D3DHAL_DP2INDEXEDLINELIST结构

要求

要求 价值
标头 d3dhal.h (包括 D3dhal.h)

另请参阅

D3DDP2OP_INDEXEDLINELIST

D3DHAL_DP2COMMAND

D3DHAL_DP2STARTVERTEX

D3DHAL_DRAWPRIMITIVES2DATA

D3dDrawPrimitives2