D3DHAL_DP2TRIANGLESTRIP構造体 (d3dhal.h)

D3DHAL_DP2TRIANGLESTRIP構造体の 1 つは、D3DHAL_DP2COMMAND構造体の bCommand メンバーが D3DDP2OP_TRIANGLESTRIP に設定され、指定された接続された三角形ストリップのレンダリングに使用されるときに、D3dDrawPrimitives2 コールバックによってコマンド バッファーから解析されます。

構文

typedef struct _D3DHAL_DP2TRIANGLESTRIP {
  WORD wVStart;
} D3DHAL_DP2TRIANGLESTRIP, *LPD3DHAL_DP2TRIANGLESTRIP;

メンバー

wVStart

三角形ストリップの最初の頂点の座標データを含む頂点バッファーへのインデックスを指定します。

注釈

1 つのD3DHAL_DP2TRIANGLESTRIP構造体は、コマンド バッファー内のD3DHAL_DP2COMMAND構造に従います。

D3dDrawPrimitives2 は、頂点バッファーから合計 (wPrimitiveCount + 2) 頂点を処理する必要があります。 wPrimitiveCount の値は、D3DHAL_DP2COMMAND構造体で指定します。

三角形ストリップの三角形エッジは、次の順序でレンダリングされます:(wV[0], wV[1], wV[2]), (wV[1], wV[3], wV[2]), (wV[2], wV[3], wV[4]), (wV[3], wV[5], wV[4]),...

ただし、三角形ストリップの最後の三角形の場合、 wPrimitiveCountt が奇数の場合と偶数の場合、エッジは異なる順序でレンダリングされます。

  • wPrimitiveCount が奇数の場合、最後の三角形のエッジは次の順序でレンダリングされます (wV[wPrimitiveCount - 1]wV[wPrimitiveCount]wV[wPrimitiveCount + 1])。
  • wPrimitiveCount が偶数の場合、最後の三角形のエッジは次の順序でレンダリングされます(wV[wPrimitiveCount- 1]wV[wPrimitiveCount + 1]wV[wPrimitiveCount)。
次の図は、D3DDP2OP_TRIANGLESTRIP コマンドと 1 つのD3DHAL_DP2TRIANGLESTRIP構造を含むサンプル コマンド バッファーの一部を示しています。 ドライバーは頂点バッファーから 5 つの頂点を処理し、(v[0], v[1], v[2]), (v[1], v[3], v[2]), (v[2], v[3], v[4]) で定義された 3 つの三角形のストリップをレンダリングする必要があります。 D3DDP2OP_TRIANGLESTRIP コマンドと 1 つのD3DHAL_DP2TRIANGLESTRIP構造を持つコマンド バッファーを示す図

要件

要件
Header d3dhal.h (D3dhal.h を含む)

こちらもご覧ください

D3DDP2OP_TRIANGLESTRIP

D3DHAL_DP2COMMAND

D3dDrawPrimitives2