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结构的命令缓冲区的图

要求

要求
Header d3dhal.h (包括 D3dhal.h)

另请参阅

D3DDP2OP_INDEXEDLINELIST

D3DHAL_DP2COMMAND

D3DHAL_DP2STARTVERTEX

D3DHAL_DRAWPRIMITIVES2DATA

D3dDrawPrimitives2